|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## 17.2.0-beta.1 - 2025-04-02 |
| 4 | + |
| 5 | +* [#1830](https://github.com/stripe/stripe-php/pull/1830) Update logic for Stripe::addBetaVersion |
| 6 | + * Stripe::addBetaVersion will use the highest version number used for a beta feature instead of throwing an `Exception` on a conflict as it had done previously. |
| 7 | +* [#1814](https://github.com/stripe/stripe-php/pull/1814), [#1840](https://github.com/stripe/stripe-php/pull/1840) Update generated code for beta |
| 8 | + |
| 9 | + This release changes the pinned API version to `2025-03-31.preview` |
| 10 | + |
| 11 | + ### Breaking Changes |
| 12 | + * Remove support for values `repeating` and `variable` from enum `Coupon.duration` |
| 13 | + * Remove support for `amount_overpaid` on `InvoicePayment` |
| 14 | + * Remove support for values `out_of_band_payment` and `payment_record` from enum `InvoicePayment.payment.type` |
| 15 | + * Remove support for `interchange_fees`, `net_total`, `network_fees`, and `transaction_volume` on `Issuing.Settlement` |
| 16 | + * Remove support for `application_fee_amount`, `discount`, `paid_out_of_band`, `paid`, `payment_intent`, `quote`, `subscription_details`, `subscription_proration_date`, `tax`, `total_tax_amounts`, and `transfer_data` on `QuotePreviewInvoice` |
| 17 | + * Change type of `PaymentAttemptRecord.payment_method_details.type` and `PaymentRecord.payment_method_details.type` from `literal('custom')` to `string` |
| 18 | + * Change type of `PaymentAttemptRecord.payment_record` from `string` to `nullable(string)` |
| 19 | + * Change type of `PaymentRecord.latest_payment_attempt_record` from `string` to `nullable(string)` |
| 20 | + |
| 21 | + ### Additions |
| 22 | + * Add support for new value `repeating` on enum `Coupon.duration` |
| 23 | + * Add support for new resources `BalanceSettings` |
| 24 | + * Add support for `retrieve` and `update` methods on resource `BalanceSettings` |
| 25 | + * Add support for `all`, `create`, `delete`, `retrieve`, and `update` methods on a new `ExternalAccountService` class to access cards and bank accounts made available in the new path `v1/external_accounts`. Access this via `StripeClient.externalAccounts` |
| 26 | + * Add support for new values `stripe_balance_payment_debit_reversal` and `stripe_balance_payment_debit` on enum `BalanceTransaction.type` |
| 27 | + * Add support for `customer_account` on `Billing.CreditBalanceSummary`, `Billing.CreditGrant`, `BillingPortal.Session`, `CashBalance`, `Checkout.Session`, `CreditNote`, `CustomerBalanceTransaction`, `CustomerCashBalanceTransaction`, `CustomerSession`, `Customer`, `Discount`, `InvoiceItem`, `Invoice`, `PaymentIntent`, `PaymentMethod`, `PromotionCode`, `QuotePreviewInvoice`, `QuotePreviewSubscriptionSchedule`, `Quote`, `SetupAttempt`, `SetupIntent`, `SubscriptionSchedule`, `Subscription`, and `TaxId` |
| 28 | + * Add support for `tax_calculation_reference` on `CreditNoteLineItem`, `InvoiceLineItem`, and `LineItem` |
| 29 | + * Add support for `context` on `Event` |
| 30 | + * Add support for `related_customer_account` on `Identity.VerificationSession` |
| 31 | + * Add support for `network_data` on `Issuing.DisputeSettlementDetail` |
| 32 | + * Add support for `interchange_fees_amount`, `net_total_amount`, `network_fees_amount`, `other_fees_amount`, `other_fees_count`, and `transaction_amount` on `Issuing.Settlement` |
| 33 | + * Add support for `reported_by` on `PaymentAttemptRecord` |
| 34 | + * Add support for `stripe_balance` on `PaymentMethod` |
| 35 | + * Add support for `payout_method` on `Payout` |
| 36 | + * Add support for `confirmation_secret`, `parent`, and `total_taxes` on `QuotePreviewInvoice` |
| 37 | + * Add support for new values `forwarding_api_retryable_upstream_error`, `setup_intent_mobile_wallet_unsupported`, `v2_account_disconnection_unsupported`, and `v2_account_missing_configuration` on enum `QuotePreviewInvoice.last_finalization_error.code` |
| 38 | + * Add support for new values `klarna`, `nz_bank_account`, and `stripe_balance` on enum `QuotePreviewInvoice.payment_settings.payment_method_types` |
| 39 | + |
| 40 | + #### New APIs for Money CardManagement |
| 41 | + * Add support for new resources `V2.FinancialAddressCreditSimulation`, `V2.FinancialAddressGeneratedMicrodeposits`, `V2.MoneyManagement.Adjustment`, `V2.MoneyManagement.FinancialAccount`, `V2.MoneyManagement.FinancialAddress`, `V2.MoneyManagement.InboundTransfer`, `V2.MoneyManagement.OutboundPaymentQuote`, `V2.MoneyManagement.OutboundPayment`, `V2.MoneyManagement.OutboundSetupIntent`, `V2.MoneyManagement.OutboundTransfer`, `V2.MoneyManagement.PayoutMethod`, `V2.MoneyManagement.PayoutMethodsBankAccountSpec`, `V2.MoneyManagement.ReceivedCredit`, `V2.MoneyManagement.ReceivedDebit`, `V2.MoneyManagement.TransactionEntry`, and `V2.MoneyManagement.Transaction` |
| 42 | + * Add support for `create` method on resource `V2.MoneyManagement.OutboundPaymentQuote` |
| 43 | + * Add support for `all` and `retrieve` methods on resources `V2.MoneyManagement.Adjustment`, `V2.MoneyManagement.FinancialAccount`, `V2.MoneyManagement.ReceivedCredit`, `V2.MoneyManagement.ReceivedDebit`, `V2.MoneyManagement.TransactionEntry`, and `V2.MoneyManagement.Transaction` |
| 44 | + * Add support for `all`, `create`, and `retrieve` methods on resources `V2.MoneyManagement.FinancialAddress` and `V2.MoneyManagement.InboundTransfer` |
| 45 | + * Add support for `all`, `cancel`, `create`, and `retrieve` methods on resources `V2.MoneyManagement.OutboundPayment` and `V2.MoneyManagement.OutboundTransfer` |
| 46 | + * Add support for `all`, `archive`, `retrieve`, and `unarchive` methods on resource `V2.MoneyManagement.PayoutMethod` |
| 47 | + * Add support for `all`, `cancel`, `create`, `retrieve`, and `update` methods on resource `V2.MoneyManagement.OutboundSetupIntent` |
| 48 | + * Add support for `retrieve` method on resource `V2.MoneyManagement.PayoutMethodsBankAccountSpec` |
| 49 | + * Add support for new values `account_number`, `fedwire_routing_number`, and `routing_number` on enum `invalid_payment_method.invalid_param` |
| 50 | + * Add support for new thin event `V2MoneyManagementFinancialAccountCreatedEvent` with related object `V2.MoneyManagement.FinancialAccount` |
| 51 | + * Add support for new thin events `V2MoneyManagementFinancialAddressActivatedEvent` and `V2MoneyManagementFinancialAddressFailedEvent` with related object `V2.MoneyManagement.FinancialAddress` |
| 52 | + * Add support for new thin events `V2MoneyManagementInboundTransferAvailableEvent`, `V2MoneyManagementInboundTransferBankDebitFailedEvent`, `V2MoneyManagementInboundTransferBankDebitProcessingEvent`, `V2MoneyManagementInboundTransferBankDebitQueuedEvent`, `V2MoneyManagementInboundTransferBankDebitReturnedEvent`, and `V2MoneyManagementInboundTransferBankDebitSucceededEvent` with related object `V2.MoneyManagement.InboundTransfer` |
| 53 | + * Add support for new thin events `V2MoneyManagementOutboundPaymentCanceledEvent`, `V2MoneyManagementOutboundPaymentCreatedEvent`, `V2MoneyManagementOutboundPaymentFailedEvent`, `V2MoneyManagementOutboundPaymentPostedEvent`, and `V2MoneyManagementOutboundPaymentReturnedEvent` with related object `V2.MoneyManagement.OutboundPayment` |
| 54 | + * Add support for new thin events `V2MoneyManagementOutboundTransferCanceledEvent`, `V2MoneyManagementOutboundTransferCreatedEvent`, `V2MoneyManagementOutboundTransferFailedEvent`, `V2MoneyManagementOutboundTransferPostedEvent`, and `V2MoneyManagementOutboundTransferReturnedEvent` with related object `V2.MoneyManagement.OutboundTransfer` |
| 55 | + * Add support for new thin events `V2MoneyManagementReceivedCreditAvailableEvent`, `V2MoneyManagementReceivedCreditFailedEvent`, `V2MoneyManagementReceivedCreditReturnedEvent`, and `V2MoneyManagementReceivedCreditSucceededEvent` with related object `V2.MoneyManagement.ReceivedCredit` |
| 56 | + * Add support for new thin events `V2MoneyManagementReceivedDebitCanceledEvent`, `V2MoneyManagementReceivedDebitFailedEvent`, `V2MoneyManagementReceivedDebitPendingEvent`, `V2MoneyManagementReceivedDebitSucceededEvent`, and `V2MoneyManagementReceivedDebitUpdatedEvent` with related object `V2.MoneyManagement.ReceivedDebit` |
| 57 | + * Add support for new error types `AlreadyCanceledException`, `BlockedByStripeException`, `ControlledByDashboardException`, `FeatureNotEnabledException`, `FinancialAccountNotOpenException`, `InsufficientFundsException`, `InvalidPayoutMethodException`, `NotCancelableException`, and `RecipientNotNotifiableException` |
| 58 | + |
| 59 | + |
| 60 | + #### New APIs for Accounts v2 in private preview |
| 61 | + See [SaaS platform payments with subscription billing using Accounts v2](https://docs.stripe.com/connect/accounts-v2/saas-platform-payments-billing) |
| 62 | + |
| 63 | + * Add support for new resources `V2.Core.AccountLink`, `V2.Core.Account`, `V2.Core.Person`, `V2.Core.Vault.GbBankAccount`, `V2.Core.Vault.UsBankAccount` |
| 64 | + * Add support for `all`, `close`, `create`, `retrieve`, and `update` methods on resource `V2.Core.Account` |
| 65 | + * Add support for `create` method on resource `V2.Core.AccountLink` |
| 66 | + * Add support for `acknowledge_confirmation_of_payee`, `archive`, `create`, `initiate_confirmation_of_payee`, and `retrieve` methods on resource `V2.Core.Vault.GbBankAccount` |
| 67 | + * Add support for `archive`, `create`, `retrieve`, and `update` methods on resource `V2.Core.Vault.UsBankAccount` |
| 68 | + * Add support for new thin events `V2CoreAccountIncludingConfigurationCustomerCapabilityStatusUpdatedEvent`, `V2CoreAccountIncludingConfigurationCustomerUpdatedEvent`, `V2CoreAccountIncludingConfigurationMerchantCapabilityStatusUpdatedEvent`, `V2CoreAccountIncludingConfigurationMerchantUpdatedEvent`, `V2CoreAccountIncludingConfigurationRecipientCapabilityStatusUpdatedEvent`, `V2CoreAccountIncludingConfigurationRecipientUpdatedEvent`, `V2CoreAccountIncludingIdentityUpdatedEvent`, and `V2CoreAccountIncludingRequirementsUpdatedEvent` |
| 69 | + * Add support for new thin event `V2CoreAccountLinkCompletedEvent` with related object `V2.Core.AccountLink` |
| 70 | + * Add support for new thin events `V2CoreAccountPersonCreatedEvent`, `V2CoreAccountPersonDeletedEvent`, and `V2CoreAccountPersonUpdatedEvent` with related object `V2.Core.Person` |
| 71 | + |
| 72 | + ### Changes |
| 73 | + * Change type of `InvoicePayment.is_default` from `nullable(boolean)` to `boolean` |
| 74 | + * Change type of `PaymentAttemptRecord.payment_method_details.custom` and `PaymentRecord.payment_method_details.custom` from `nullable(PaymentsPrimitivesPaymentRecordsResourcePaymentMethodCustomDetails)` to `PaymentsPrimitivesPaymentRecordsResourcePaymentMethodCustomDetails` |
| 75 | + |
| 76 | + |
| 77 | + |
| 78 | + |
| 79 | + |
3 | 80 | ## 17.1.0 - 2025-04-02
|
4 | 81 | * [#1843](https://github.com/stripe/stripe-php/pull/1843) Add null type in resource fields to non required objects
|
5 | 82 | * Fixes nullable resource properties that were incorrectly set as required in PHPDocs
|
|
80 | 157 | * Add support for `wifi` on `Terminal.Configuration`
|
81 | 158 |
|
82 | 159 | ## 16.7.0-beta.1 - 2025-03-18
|
83 |
| -* [#1820](https://github.com/stripe/stripe-php/pull/1820) Beta SDK updates between Open API versions 1473 and 1505 |
| 160 | +* [#1820](https://github.com/stripe/stripe-php/pull/1820) Beta SDK updates between Open API versions 1473 and 1505 |
84 | 161 | Codegen for openapi 1505.
|
85 |
| - |
| 162 | + |
86 | 163 | * Add support for `succeed_input_collection` and `timeout_input_collection` test helper methods on resource `Terminal.Reader`
|
87 | 164 | * [#1825](https://github.com/stripe/stripe-php/pull/1825) Results of running formatter
|
88 | 165 | * [#1823](https://github.com/stripe/stripe-php/pull/1823) Merge from stripe-php master
|
|
97 | 174 | * Add support for `brand_product` on `Card`
|
98 | 175 | * Add support for `is_default` and `nickname` on `Treasury.FinancialAccount`
|
99 | 176 | * [#1794](https://github.com/stripe/stripe-php/pull/1794) Improved php type hints
|
100 |
| - |
| 177 | + |
101 | 178 | ### Adds Create/Update/Retrieve/Delete/All/Search parameters
|
102 |
| - |
| 179 | + |
103 | 180 | You will now be able to get type hints of the keys that can passed without switching out of your IDE. Eg.
|
104 | 181 | ```php
|
105 | 182 | * @param null|array{customer:string, components: array} $params
|
106 | 183 | ```
|
107 |
| - |
| 184 | + |
108 | 185 | <img width="417" alt="PHPStorm IDE with array type hints" src="https://github.com/user-attachments/assets/e914dcda-354f-4df2-b82e-217ad931e71d">
|
109 |
| - |
| 186 | + |
110 | 187 | ### Updated StripeObject class properties
|
111 |
| - We changed the type of class properties from `StripeObject` to something more specific. |
112 |
| - |
113 |
| - For example: Invoice settings was defined as a StripeObject in Customer resource. |
114 |
| - |
| 188 | + We changed the type of class properties from `StripeObject` to something more specific. |
| 189 | + |
| 190 | + For example: Invoice settings was defined as a StripeObject in Customer resource. |
| 191 | + |
115 | 192 | https://github.com/stripe/stripe-php/blob/bae10cd799404f0f4862ec03810c5ff8ca634b30/lib/Customer.php#L25
|
116 |
| - |
117 |
| - Now you will be able to reference `custom_fields` and `rendering_options` on `customer->invoice_settings` without PHPStan complaining. |
| 193 | + |
| 194 | + Now you will be able to reference `custom_fields` and `rendering_options` on `customer->invoice_settings` without PHPStan complaining. |
118 | 195 | ```php
|
119 | 196 | * @property object{custom_fields: null|object{name: string, value: string}&\Stripe\StripeObject&\stdClass[], default_payment_method: null|string|\Stripe\PaymentMethod, footer: null|string, rendering_options: null|object{amount_tax_display: null|string, template: null|string}&\Stripe\StripeObject&\stdClass}&\Stripe\StripeObject&\stdClass $invoice_settings
|
120 | 197 | */
|
|
167 | 244 | * Add support for new values `by_tin`, `ma_vat`, `md_vat`, `tz_vat`, `uz_tin`, and `uz_vat` on enum `TaxId.type`
|
168 | 245 | * Add support for `flat_amount` and `rate_type` on `TaxRate`
|
169 | 246 | * Add support for new value `retail_delivery_fee` on enum `TaxRate.tax_type`
|
170 |
| -* [#1770](https://github.com/stripe/stripe-php/pull/1770) Merge into beta using the merge script |
| 247 | +* [#1770](https://github.com/stripe/stripe-php/pull/1770) Merge into beta using the merge script |
171 | 248 | * [#1766](https://github.com/stripe/stripe-php/pull/1766) Merge updates from stripe-php master to beta
|
172 |
| - |
| 249 | + |
173 | 250 | * The `Preview` class has been removed. Please use [rawRequest](https://github.com/stripe/stripe-php?tab=readme-ov-file#custom-requests) instead which accepts
|
174 | 251 | * the http method as parameter instead of the dedicated methods in the `Preview` class
|
175 | 252 | * an `apiMode` of `v1` instead of `standard` and `v2` instead of `preview`.
|
|
0 commit comments