stripe / stripe-php

PHP library for the Stripe API.
https://stripe.com
MIT License
3.75k stars 849 forks source link

Add specific classes for nested objects (instead of `StripeObject`) #1740

Open momala454 opened 3 months ago

momala454 commented 3 months ago

Describe the bug

This is what the spec says for Price->recurring

* @property null|\Stripe\StripeObject $recurring The recurring components of a price such as <code>interval</code> and <code>usage_type</code>.

So the IDE have no idea what's inside

According to the doc, we know what's inside https://docs.stripe.com/api/prices/object image

To Reproduce

Just lookup doc

Expected behavior

Complete doc

Code snippets

No response

OS

windows

PHP version

8.3

Library version

v15.7.0

API version

2024-06-20

Additional context

No response

richardm-stripe commented 3 months ago

Hello @momala454, thanks for writing in!

The Openapi spec actually does have a definition for Price.recurring, and we have full types for this in other libraries but the problem our generator for stripe-php only generate classes for top-level resources and doesn't generate classes yet for the nested data structures inside.

This is definitely on our radar and an improvement we plan to make to the library, but I am reclassifying as a feature request and editing the issue name! We'll keep you posted.