stripe 17.3.1 → 17.4.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/CHANGELOG.md +967 -109
  2. package/README.md +4 -4
  3. package/VERSION +1 -1
  4. package/cjs/resources/AccountNotices.js +21 -0
  5. package/cjs/resources/Capital/FinancingOffers.js +21 -0
  6. package/cjs/resources/Capital/FinancingSummary.js +12 -0
  7. package/cjs/resources/Capital/FinancingTransactions.js +17 -0
  8. package/cjs/resources/FinancialConnections/Accounts.js +5 -0
  9. package/cjs/resources/FinancialConnections/Institutions.js +17 -0
  10. package/cjs/resources/GiftCards/Cards.js +23 -0
  11. package/cjs/resources/GiftCards/Transactions.js +33 -0
  12. package/cjs/resources/Invoices.js +17 -0
  13. package/cjs/resources/Issuing/CreditUnderwritingRecords.js +33 -0
  14. package/cjs/resources/Issuing/DisputeSettlementDetails.js +17 -0
  15. package/cjs/resources/Issuing/FraudLiabilityDebits.js +17 -0
  16. package/cjs/resources/Margins.js +22 -0
  17. package/cjs/resources/Orders.js +24 -0
  18. package/cjs/resources/PaymentAttemptRecords.js +17 -0
  19. package/cjs/resources/PaymentIntents.js +8 -0
  20. package/cjs/resources/PaymentRecords.js +29 -0
  21. package/cjs/resources/Quotes.js +32 -0
  22. package/cjs/resources/SubscriptionSchedules.js +4 -0
  23. package/cjs/resources/Tax/Associations.js +9 -0
  24. package/cjs/resources/Tax/Forms.js +20 -0
  25. package/cjs/resources/Terminal/ReaderCollectedData.js +12 -0
  26. package/cjs/resources/Terminal/Readers.js +12 -0
  27. package/cjs/resources.js +68 -14
  28. package/cjs/stripe.core.js +1 -1
  29. package/esm/resources/AccountNotices.js +18 -0
  30. package/esm/resources/Capital/FinancingOffers.js +18 -0
  31. package/esm/resources/Capital/FinancingSummary.js +9 -0
  32. package/esm/resources/Capital/FinancingTransactions.js +14 -0
  33. package/esm/resources/FinancialConnections/Accounts.js +5 -0
  34. package/esm/resources/FinancialConnections/Institutions.js +14 -0
  35. package/esm/resources/GiftCards/Cards.js +20 -0
  36. package/esm/resources/GiftCards/Transactions.js +30 -0
  37. package/esm/resources/Invoices.js +17 -0
  38. package/esm/resources/Issuing/CreditUnderwritingRecords.js +30 -0
  39. package/esm/resources/Issuing/DisputeSettlementDetails.js +14 -0
  40. package/esm/resources/Issuing/FraudLiabilityDebits.js +14 -0
  41. package/esm/resources/Margins.js +19 -0
  42. package/esm/resources/Orders.js +21 -0
  43. package/esm/resources/PaymentAttemptRecords.js +14 -0
  44. package/esm/resources/PaymentIntents.js +8 -0
  45. package/esm/resources/PaymentRecords.js +26 -0
  46. package/esm/resources/Quotes.js +32 -0
  47. package/esm/resources/SubscriptionSchedules.js +4 -0
  48. package/esm/resources/Tax/Associations.js +6 -0
  49. package/esm/resources/Tax/Forms.js +17 -0
  50. package/esm/resources/Terminal/ReaderCollectedData.js +9 -0
  51. package/esm/resources/Terminal/Readers.js +12 -0
  52. package/esm/resources.js +51 -1
  53. package/esm/stripe.core.js +1 -1
  54. package/package.json +1 -1
  55. package/types/AccountLinksResource.d.ts +5 -1
  56. package/types/AccountNotices.d.ts +113 -0
  57. package/types/AccountNoticesResource.d.ts +98 -0
  58. package/types/AccountSessions.d.ts +50 -5
  59. package/types/AccountSessionsResource.d.ts +355 -0
  60. package/types/Accounts.d.ts +221 -5
  61. package/types/AccountsResource.d.ts +496 -0
  62. package/types/Billing/CreditBalanceSummaryResource.d.ts +1 -1
  63. package/types/Billing/CreditGrants.d.ts +5 -6
  64. package/types/Billing/CreditGrantsResource.d.ts +11 -11
  65. package/types/Billing/MeterErrorReports.d.ts +106 -0
  66. package/types/Billing/MeterEventsResource.d.ts +1 -1
  67. package/types/Capital/FinancingOffers.d.ts +188 -0
  68. package/types/Capital/FinancingOffersResource.d.ts +97 -0
  69. package/types/Capital/FinancingSummary.d.ts +106 -0
  70. package/types/Capital/FinancingSummaryResource.d.ts +27 -0
  71. package/types/Capital/FinancingTransactions.d.ts +135 -0
  72. package/types/Capital/FinancingTransactionsResource.d.ts +68 -0
  73. package/types/Charges.d.ts +121 -5
  74. package/types/ChargesResource.d.ts +1294 -0
  75. package/types/Checkout/Sessions.d.ts +360 -5
  76. package/types/Checkout/SessionsResource.d.ts +444 -9
  77. package/types/ConfirmationTokens.d.ts +103 -4
  78. package/types/Coupons.d.ts +1 -1
  79. package/types/CouponsResource.d.ts +1 -1
  80. package/types/CreditNotes.d.ts +21 -0
  81. package/types/CreditNotesResource.d.ts +51 -0
  82. package/types/CustomersResource.d.ts +11 -2
  83. package/types/Disputes.d.ts +1 -1
  84. package/types/EventTypes.d.ts +579 -0
  85. package/types/Events.d.ts +92 -0
  86. package/types/FinancialConnections/AccountInferredBalances.d.ts +38 -0
  87. package/types/FinancialConnections/Accounts.d.ts +29 -1
  88. package/types/FinancialConnections/AccountsResource.d.ts +35 -3
  89. package/types/FinancialConnections/Institutions.d.ts +93 -0
  90. package/types/FinancialConnections/InstitutionsResource.d.ts +47 -0
  91. package/types/FinancialConnections/Sessions.d.ts +49 -1
  92. package/types/FinancialConnections/SessionsResource.d.ts +38 -1
  93. package/types/FundingInstructions.d.ts +28 -0
  94. package/types/GiftCards/Cards.d.ts +118 -0
  95. package/types/GiftCards/CardsResource.d.ts +159 -0
  96. package/types/GiftCards/Transactions.d.ts +129 -0
  97. package/types/GiftCards/TransactionsResource.d.ts +201 -0
  98. package/types/Identity/VerificationReports.d.ts +1 -1
  99. package/types/Identity/VerificationSessions.d.ts +1 -1
  100. package/types/Identity/VerificationSessionsResource.d.ts +1 -1
  101. package/types/InvoiceItems.d.ts +5 -0
  102. package/types/InvoiceItemsResource.d.ts +98 -0
  103. package/types/InvoiceLineItems.d.ts +28 -1
  104. package/types/InvoicePayments.d.ts +113 -0
  105. package/types/Invoices.d.ts +139 -3
  106. package/types/InvoicesResource.d.ts +5536 -1845
  107. package/types/Issuing/Authorizations.d.ts +1 -1
  108. package/types/Issuing/CardholdersResource.d.ts +2 -1
  109. package/types/Issuing/Cards.d.ts +1 -1
  110. package/types/Issuing/CreditUnderwritingRecords.d.ts +451 -0
  111. package/types/Issuing/CreditUnderwritingRecordsResource.d.ts +1032 -0
  112. package/types/Issuing/DisputeSettlementDetails.d.ts +73 -0
  113. package/types/Issuing/DisputeSettlementDetailsResource.d.ts +52 -0
  114. package/types/Issuing/FraudLiabilityDebits.d.ts +52 -0
  115. package/types/Issuing/FraudLiabilityDebitsResource.d.ts +52 -0
  116. package/types/Issuing/Settlements.d.ts +103 -0
  117. package/types/Issuing/Transactions.d.ts +2 -0
  118. package/types/Issuing/TransactionsResource.d.ts +5 -0
  119. package/types/LineItems.d.ts +7 -0
  120. package/types/Mandates.d.ts +77 -0
  121. package/types/Margins.d.ts +56 -0
  122. package/types/MarginsResource.d.ts +114 -0
  123. package/types/Orders.d.ts +1155 -0
  124. package/types/OrdersResource.d.ts +2913 -0
  125. package/types/PaymentAttemptRecords.d.ts +242 -0
  126. package/types/PaymentAttemptRecordsResource.d.ts +47 -0
  127. package/types/PaymentIntents.d.ts +667 -2
  128. package/types/PaymentIntentsResource.d.ts +7948 -3704
  129. package/types/PaymentLinks.d.ts +6 -0
  130. package/types/PaymentLinksResource.d.ts +21 -2
  131. package/types/PaymentMethodConfigurations.d.ts +180 -0
  132. package/types/PaymentMethodConfigurationsResource.d.ts +250 -0
  133. package/types/PaymentMethods.d.ts +103 -4
  134. package/types/PaymentMethodsResource.d.ts +133 -0
  135. package/types/PaymentRecords.d.ts +259 -0
  136. package/types/PaymentRecordsResource.d.ts +455 -0
  137. package/types/Prices.d.ts +22 -0
  138. package/types/PricesResource.d.ts +22 -0
  139. package/types/Products.d.ts +39 -0
  140. package/types/ProductsResource.d.ts +36 -0
  141. package/types/QuoteLines.d.ts +634 -0
  142. package/types/QuotePreviewInvoices.d.ts +1615 -0
  143. package/types/QuotePreviewSubscriptionSchedules.d.ts +814 -0
  144. package/types/Quotes.d.ts +591 -1
  145. package/types/QuotesResource.d.ts +2526 -194
  146. package/types/Refunds.d.ts +14 -0
  147. package/types/SetupAttempts.d.ts +40 -2
  148. package/types/SetupIntents.d.ts +113 -2
  149. package/types/SetupIntentsResource.d.ts +652 -7
  150. package/types/Sources.d.ts +23 -0
  151. package/types/SubscriptionItems.d.ts +21 -0
  152. package/types/SubscriptionItemsResource.d.ts +109 -0
  153. package/types/SubscriptionSchedules.d.ts +200 -0
  154. package/types/SubscriptionSchedulesResource.d.ts +1234 -16
  155. package/types/Subscriptions.d.ts +92 -1
  156. package/types/SubscriptionsResource.d.ts +371 -2
  157. package/types/Tax/Associations.d.ts +126 -0
  158. package/types/Tax/AssociationsResource.d.ts +29 -0
  159. package/types/Tax/CalculationLineItems.d.ts +1 -0
  160. package/types/Tax/Calculations.d.ts +4 -1
  161. package/types/Tax/CalculationsResource.d.ts +2 -1
  162. package/types/Tax/Forms.d.ts +220 -0
  163. package/types/Tax/FormsResource.d.ts +107 -0
  164. package/types/Tax/Transactions.d.ts +3 -1
  165. package/types/TaxIds.d.ts +2 -1
  166. package/types/TaxIdsResource.d.ts +2 -1
  167. package/types/TaxRates.d.ts +1 -0
  168. package/types/TaxRatesResource.d.ts +2 -0
  169. package/types/Terminal/ReaderCollectedData.d.ts +51 -0
  170. package/types/Terminal/ReaderCollectedDataResource.d.ts +29 -0
  171. package/types/Terminal/Readers.d.ts +278 -0
  172. package/types/Terminal/ReadersResource.d.ts +215 -0
  173. package/types/TestHelpers/ConfirmationTokensResource.d.ts +104 -0
  174. package/types/TestHelpers/Issuing/AuthorizationsResource.d.ts +14 -4
  175. package/types/TestHelpers/Treasury/ReceivedCreditsResource.d.ts +26 -0
  176. package/types/TestHelpers/Treasury/ReceivedDebitsResource.d.ts +26 -0
  177. package/types/Treasury/FinancialAccountFeatures.d.ts +7 -0
  178. package/types/Treasury/FinancialAccounts.d.ts +5 -0
  179. package/types/Treasury/FinancialAccountsResource.d.ts +37 -0
  180. package/types/Treasury/InboundTransfers.d.ts +1 -1
  181. package/types/Treasury/OutboundTransfers.d.ts +26 -0
  182. package/types/Treasury/OutboundTransfersResource.d.ts +26 -0
  183. package/types/Treasury/ReceivedCredits.d.ts +26 -0
  184. package/types/Treasury/ReceivedDebits.d.ts +31 -0
  185. package/types/WebhookEndpointsResource.d.ts +68 -0
  186. package/types/index.d.ts +74 -4
  187. package/cjs/resources/V2/Billing.js +0 -18
  188. package/cjs/resources/V2/Core.js +0 -14
  189. package/cjs/resources/V2.js +0 -14
  190. package/esm/resources/V2/Billing.js +0 -15
  191. package/esm/resources/V2/Core.js +0 -11
  192. package/esm/resources/V2.js +0 -11
  193. package/types/V2/BillingResource.d.ts +0 -14
  194. package/types/V2/CoreResource.d.ts +0 -12
  195. package/types/V2Resource.d.ts +0 -10
@@ -4,6 +4,11 @@ declare module 'stripe' {
4
4
  namespace Stripe {
5
5
  namespace Checkout {
6
6
  interface SessionCreateParams {
7
+ /**
8
+ * Settings for price localization with [Adaptive Pricing](https://docs.stripe.com/payments/checkout/adaptive-pricing).
9
+ */
10
+ adaptive_pricing?: SessionCreateParams.AdaptivePricing;
11
+
7
12
  /**
8
13
  * Configure actions after a Checkout Session has expired.
9
14
  */
@@ -25,7 +30,7 @@ declare module 'stripe' {
25
30
  billing_address_collection?: SessionCreateParams.BillingAddressCollection;
26
31
 
27
32
  /**
28
- * If set, Checkout displays a back button and customers will be directed to this URL if they decide to cancel payment and return to your website. This parameter is not allowed if ui_mode is `embedded`.
33
+ * If set, Checkout displays a back button and customers will be directed to this URL if they decide to cancel payment and return to your website. This parameter is not allowed if ui_mode is `embedded` or `custom`.
29
34
  */
30
35
  cancel_url?: string;
31
36
 
@@ -187,6 +192,13 @@ declare module 'stripe' {
187
192
  */
188
193
  payment_method_types?: Array<SessionCreateParams.PaymentMethodType>;
189
194
 
195
+ /**
196
+ * This property is used to set up permissions for various actions (e.g., update) on the CheckoutSession object.
197
+ *
198
+ * For specific permissions, please refer to their dedicated subsections, such as `permissions.update.shipping_details`.
199
+ */
200
+ permissions?: SessionCreateParams.Permissions;
201
+
190
202
  /**
191
203
  * Controls phone number collection settings for the session.
192
204
  *
@@ -202,7 +214,7 @@ declare module 'stripe' {
202
214
 
203
215
  /**
204
216
  * The URL to redirect your customer back to after they authenticate or cancel their payment on the
205
- * payment method's app or site. This parameter is required if ui_mode is `embedded`
217
+ * payment method's app or site. This parameter is required if `ui_mode` is `embedded` or `custom`
206
218
  * and redirect-based payment methods are enabled on the session.
207
219
  */
208
220
  return_url?: string;
@@ -242,7 +254,7 @@ declare module 'stripe' {
242
254
  /**
243
255
  * The URL to which Stripe should send customers when payment or setup
244
256
  * is complete.
245
- * This parameter is not allowed if ui_mode is `embedded`. If you'd like to use
257
+ * This parameter is not allowed if ui_mode is `embedded` or `custom`. If you'd like to use
246
258
  * information from the successful Checkout Session on your page, read the
247
259
  * guide on [customizing your success page](https://stripe.com/docs/payments/checkout/custom-success-page).
248
260
  */
@@ -260,6 +272,13 @@ declare module 'stripe' {
260
272
  }
261
273
 
262
274
  namespace SessionCreateParams {
275
+ interface AdaptivePricing {
276
+ /**
277
+ * Set to `true` to enable [Adaptive Pricing](https://docs.stripe.com/payments/checkout/adaptive-pricing). Defaults to your [dashboard setting](https://dashboard.stripe.com/settings/adaptive-pricing).
278
+ */
279
+ enabled?: boolean;
280
+ }
281
+
263
282
  interface AfterExpiration {
264
283
  /**
265
284
  * Configure a Checkout Session that can be used to recover an expired session.
@@ -1104,7 +1123,7 @@ declare module 'stripe' {
1104
1123
  multibanco?: PaymentMethodOptions.Multibanco;
1105
1124
 
1106
1125
  /**
1107
- * contains details about the Kakao Pay payment method options.
1126
+ * contains details about the Naver Pay payment method options.
1108
1127
  */
1109
1128
  naver_pay?: PaymentMethodOptions.NaverPay;
1110
1129
 
@@ -1133,6 +1152,11 @@ declare module 'stripe' {
1133
1152
  */
1134
1153
  paypal?: PaymentMethodOptions.Paypal;
1135
1154
 
1155
+ /**
1156
+ * contains details about the PayTo payment method options.
1157
+ */
1158
+ payto?: PaymentMethodOptions.Payto;
1159
+
1136
1160
  /**
1137
1161
  * contains details about the Pix payment method options.
1138
1162
  */
@@ -1318,6 +1342,11 @@ declare module 'stripe' {
1318
1342
  }
1319
1343
 
1320
1344
  interface BacsDebit {
1345
+ /**
1346
+ * Additional fields for Mandate creation
1347
+ */
1348
+ mandate_options?: BacsDebit.MandateOptions;
1349
+
1321
1350
  /**
1322
1351
  * Indicates that you intend to make future payments with this PaymentIntent's payment method.
1323
1352
  *
@@ -1331,6 +1360,8 @@ declare module 'stripe' {
1331
1360
  }
1332
1361
 
1333
1362
  namespace BacsDebit {
1363
+ interface MandateOptions {}
1364
+
1334
1365
  type SetupFutureUsage = 'none' | 'off_session' | 'on_session';
1335
1366
  }
1336
1367
 
@@ -1375,6 +1406,31 @@ declare module 'stripe' {
1375
1406
  */
1376
1407
  installments?: Card.Installments;
1377
1408
 
1409
+ /**
1410
+ * Request ability to [capture beyond the standard authorization validity window](https://stripe.com/payments/extended-authorization) for this CheckoutSession.
1411
+ */
1412
+ request_decremental_authorization?: Card.RequestDecrementalAuthorization;
1413
+
1414
+ /**
1415
+ * Request ability to [capture beyond the standard authorization validity window](https://stripe.com/payments/extended-authorization) for this CheckoutSession.
1416
+ */
1417
+ request_extended_authorization?: Card.RequestExtendedAuthorization;
1418
+
1419
+ /**
1420
+ * Request ability to [increment the authorization](https://stripe.com/payments/incremental-authorization) for this CheckoutSession.
1421
+ */
1422
+ request_incremental_authorization?: Card.RequestIncrementalAuthorization;
1423
+
1424
+ /**
1425
+ * Request ability to make [multiple captures](https://stripe.com/payments/multicapture) for this CheckoutSession.
1426
+ */
1427
+ request_multicapture?: Card.RequestMulticapture;
1428
+
1429
+ /**
1430
+ * Request ability to [overcapture](https://stripe.com/payments/overcapture) for this CheckoutSession.
1431
+ */
1432
+ request_overcapture?: Card.RequestOvercapture;
1433
+
1378
1434
  /**
1379
1435
  * We strongly recommend that you rely on our SCA Engine to automatically prompt your customers for authentication based on risk level and [other requirements](https://stripe.com/docs/strong-customer-authentication). However, if you wish to request 3D Secure based on logic from your own fraud engine, provide this option. If not provided, this value defaults to `automatic`. Read our guide on [manually requesting 3D Secure](https://stripe.com/docs/payments/3d-secure/authentication-flow#manual-three-ds) for more information on how this configuration interacts with Radar and our SCA Engine.
1380
1436
  */
@@ -1411,6 +1467,16 @@ declare module 'stripe' {
1411
1467
  enabled?: boolean;
1412
1468
  }
1413
1469
 
1470
+ type RequestDecrementalAuthorization = 'if_available' | 'never';
1471
+
1472
+ type RequestExtendedAuthorization = 'if_available' | 'never';
1473
+
1474
+ type RequestIncrementalAuthorization = 'if_available' | 'never';
1475
+
1476
+ type RequestMulticapture = 'if_available' | 'never';
1477
+
1478
+ type RequestOvercapture = 'if_available' | 'never';
1479
+
1414
1480
  type RequestThreeDSecure = 'any' | 'automatic' | 'challenge';
1415
1481
 
1416
1482
  type SetupFutureUsage = 'off_session' | 'on_session';
@@ -1570,6 +1636,11 @@ declare module 'stripe' {
1570
1636
  }
1571
1637
 
1572
1638
  interface KakaoPay {
1639
+ /**
1640
+ * Controls when the funds will be captured from the customer's account.
1641
+ */
1642
+ capture_method?: 'manual';
1643
+
1573
1644
  /**
1574
1645
  * Indicates that you intend to make future payments with this PaymentIntent's payment method.
1575
1646
  *
@@ -1618,6 +1689,11 @@ declare module 'stripe' {
1618
1689
  }
1619
1690
 
1620
1691
  interface KrCard {
1692
+ /**
1693
+ * Controls when the funds will be captured from the customer's account.
1694
+ */
1695
+ capture_method?: 'manual';
1696
+
1621
1697
  /**
1622
1698
  * Indicates that you intend to make future payments with this PaymentIntent's payment method.
1623
1699
  *
@@ -1678,6 +1754,11 @@ declare module 'stripe' {
1678
1754
  }
1679
1755
 
1680
1756
  interface NaverPay {
1757
+ /**
1758
+ * Controls when the funds will be captured from the customer's account.
1759
+ */
1760
+ capture_method?: 'manual';
1761
+
1681
1762
  /**
1682
1763
  * Indicates that you intend to make future payments with this PaymentIntent's payment method.
1683
1764
  *
@@ -1730,7 +1811,12 @@ declare module 'stripe' {
1730
1811
  tos_shown_and_accepted?: boolean;
1731
1812
  }
1732
1813
 
1733
- interface Payco {}
1814
+ interface Payco {
1815
+ /**
1816
+ * Controls when the funds will be captured from the customer's account.
1817
+ */
1818
+ capture_method?: 'manual';
1819
+ }
1734
1820
 
1735
1821
  interface Paynow {
1736
1822
  /**
@@ -1761,6 +1847,11 @@ declare module 'stripe' {
1761
1847
  */
1762
1848
  reference?: string;
1763
1849
 
1850
+ /**
1851
+ * A reference of the PayPal transaction visible to customer which is mapped to PayPal's invoice ID. This must be a globally unique ID if you have configured in your PayPal settings to block multiple payments per invoice ID.
1852
+ */
1853
+ reference_id?: string;
1854
+
1764
1855
  /**
1765
1856
  * The risk correlation ID for an on-session payment using a saved PayPal payment method.
1766
1857
  */
@@ -1778,6 +1869,11 @@ declare module 'stripe' {
1778
1869
  * If you've already set `setup_future_usage` and you're performing a request using a publishable key, you can only update the value from `on_session` to `off_session`.
1779
1870
  */
1780
1871
  setup_future_usage?: Stripe.Emptyable<Paypal.SetupFutureUsage>;
1872
+
1873
+ /**
1874
+ * The Stripe connected account IDs of the sellers on the platform for this transaction (optional). Only allowed when [separate charges and transfers](https://stripe.com/docs/connect/separate-charges-and-transfers) are used.
1875
+ */
1876
+ subsellers?: Array<string>;
1781
1877
  }
1782
1878
 
1783
1879
  namespace Paypal {
@@ -1807,6 +1903,92 @@ declare module 'stripe' {
1807
1903
  type SetupFutureUsage = 'none' | 'off_session';
1808
1904
  }
1809
1905
 
1906
+ interface Payto {
1907
+ /**
1908
+ * Additional fields for Mandate creation
1909
+ */
1910
+ mandate_options?: Payto.MandateOptions;
1911
+
1912
+ /**
1913
+ * Indicates that you intend to make future payments with this PaymentIntent's payment method.
1914
+ *
1915
+ * If you provide a Customer with the PaymentIntent, you can use this parameter to [attach the payment method](https://stripe.com/payments/save-during-payment) to the Customer after the PaymentIntent is confirmed and the customer completes any required actions. If you don't provide a Customer, you can still [attach](https://stripe.com/api/payment_methods/attach) the payment method to a Customer after the transaction completes.
1916
+ *
1917
+ * If the payment method is `card_present` and isn't a digital wallet, Stripe creates and attaches a [generated_card](https://stripe.com/api/charges/object#charge_object-payment_method_details-card_present-generated_card) payment method representing the card to the Customer instead.
1918
+ *
1919
+ * When processing card payments, Stripe uses `setup_future_usage` to help you comply with regional legislation and network rules, such as [SCA](https://stripe.com/strong-customer-authentication).
1920
+ */
1921
+ setup_future_usage?: Payto.SetupFutureUsage;
1922
+ }
1923
+
1924
+ namespace Payto {
1925
+ interface MandateOptions {
1926
+ /**
1927
+ * Amount that will be collected. It is required when `amount_type` is `fixed`.
1928
+ */
1929
+ amount?: number;
1930
+
1931
+ /**
1932
+ * The type of amount that will be collected. The amount charged must be exact or up to the value of `amount` param for `fixed` or `maximum` type respectively.
1933
+ */
1934
+ amount_type?: MandateOptions.AmountType;
1935
+
1936
+ /**
1937
+ * Date, in YYYY-MM-DD format, after which payments will not be collected. Defaults to no end date.
1938
+ */
1939
+ end_date?: string;
1940
+
1941
+ /**
1942
+ * The periodicity at which payments will be collected.
1943
+ */
1944
+ payment_schedule?: MandateOptions.PaymentSchedule;
1945
+
1946
+ /**
1947
+ * The number of payments that will be made during a payment period. Defaults to 1 except for when `payment_schedule` is `adhoc`. In that case, it defaults to no limit.
1948
+ */
1949
+ payments_per_period?: number;
1950
+
1951
+ /**
1952
+ * The purpose for which payments are made. Defaults to retail.
1953
+ */
1954
+ purpose?: MandateOptions.Purpose;
1955
+
1956
+ /**
1957
+ * Date, in YYYY-MM-DD format, from which payments will be collected. Defaults to confirmation time.
1958
+ */
1959
+ start_date?: string;
1960
+ }
1961
+
1962
+ namespace MandateOptions {
1963
+ type AmountType = 'fixed' | 'maximum';
1964
+
1965
+ type PaymentSchedule =
1966
+ | 'adhoc'
1967
+ | 'annual'
1968
+ | 'daily'
1969
+ | 'fortnightly'
1970
+ | 'monthly'
1971
+ | 'quarterly'
1972
+ | 'semi_annual'
1973
+ | 'weekly';
1974
+
1975
+ type Purpose =
1976
+ | 'dependant_support'
1977
+ | 'government'
1978
+ | 'loan'
1979
+ | 'mortgage'
1980
+ | 'other'
1981
+ | 'pension'
1982
+ | 'personal'
1983
+ | 'retail'
1984
+ | 'salary'
1985
+ | 'tax'
1986
+ | 'utility';
1987
+ }
1988
+
1989
+ type SetupFutureUsage = 'none' | 'off_session';
1990
+ }
1991
+
1810
1992
  interface Pix {
1811
1993
  /**
1812
1994
  * The number of seconds (between 10 and 1209600) after which Pix payment will expire. Defaults to 86400 seconds.
@@ -1831,9 +2013,19 @@ declare module 'stripe' {
1831
2013
  type SetupFutureUsage = 'none' | 'off_session';
1832
2014
  }
1833
2015
 
1834
- interface SamsungPay {}
2016
+ interface SamsungPay {
2017
+ /**
2018
+ * Controls when the funds will be captured from the customer's account.
2019
+ */
2020
+ capture_method?: 'manual';
2021
+ }
1835
2022
 
1836
2023
  interface SepaDebit {
2024
+ /**
2025
+ * Additional fields for Mandate creation
2026
+ */
2027
+ mandate_options?: SepaDebit.MandateOptions;
2028
+
1837
2029
  /**
1838
2030
  * Indicates that you intend to make future payments with this PaymentIntent's payment method.
1839
2031
  *
@@ -1847,6 +2039,8 @@ declare module 'stripe' {
1847
2039
  }
1848
2040
 
1849
2041
  namespace SepaDebit {
2042
+ interface MandateOptions {}
2043
+
1850
2044
  type SetupFutureUsage = 'none' | 'off_session' | 'on_session';
1851
2045
  }
1852
2046
 
@@ -1913,7 +2107,11 @@ declare module 'stripe' {
1913
2107
  | 'payment_method'
1914
2108
  | 'transactions';
1915
2109
 
1916
- type Prefetch = 'balances' | 'ownership' | 'transactions';
2110
+ type Prefetch =
2111
+ | 'balances'
2112
+ | 'inferred_balances'
2113
+ | 'ownership'
2114
+ | 'transactions';
1917
2115
  }
1918
2116
 
1919
2117
  type SetupFutureUsage = 'none' | 'off_session' | 'on_session';
@@ -1967,6 +2165,7 @@ declare module 'stripe' {
1967
2165
  | 'eps'
1968
2166
  | 'fpx'
1969
2167
  | 'giropay'
2168
+ | 'gopay'
1970
2169
  | 'grabpay'
1971
2170
  | 'ideal'
1972
2171
  | 'kakao_pay'
@@ -1974,6 +2173,7 @@ declare module 'stripe' {
1974
2173
  | 'konbini'
1975
2174
  | 'kr_card'
1976
2175
  | 'link'
2176
+ | 'mb_way'
1977
2177
  | 'mobilepay'
1978
2178
  | 'multibanco'
1979
2179
  | 'naver_pay'
@@ -1982,11 +2182,15 @@ declare module 'stripe' {
1982
2182
  | 'payco'
1983
2183
  | 'paynow'
1984
2184
  | 'paypal'
2185
+ | 'payto'
1985
2186
  | 'pix'
1986
2187
  | 'promptpay'
2188
+ | 'qris'
2189
+ | 'rechnung'
1987
2190
  | 'revolut_pay'
1988
2191
  | 'samsung_pay'
1989
2192
  | 'sepa_debit'
2193
+ | 'shopeepay'
1990
2194
  | 'sofort'
1991
2195
  | 'swish'
1992
2196
  | 'twint'
@@ -1994,6 +2198,30 @@ declare module 'stripe' {
1994
2198
  | 'wechat_pay'
1995
2199
  | 'zip';
1996
2200
 
2201
+ interface Permissions {
2202
+ /**
2203
+ * Permissions for updating the Checkout Session.
2204
+ */
2205
+ update?: Permissions.Update;
2206
+ }
2207
+
2208
+ namespace Permissions {
2209
+ interface Update {
2210
+ /**
2211
+ * Determines which entity is allowed to update the shipping details.
2212
+ *
2213
+ * Default is `client_only`. Stripe Checkout client will automatically update the shipping details. If set to `server_only`, only your server is allowed to update the shipping details.
2214
+ *
2215
+ * When set to `server_only`, you must add the onShippingDetailsChange event handler when initializing the Stripe Checkout client and manually update the shipping details from your server using the Stripe API.
2216
+ */
2217
+ shipping_details?: Update.ShippingDetails;
2218
+ }
2219
+
2220
+ namespace Update {
2221
+ type ShippingDetails = 'client_only' | 'server_only';
2222
+ }
2223
+ }
2224
+
1997
2225
  interface PhoneNumberCollection {
1998
2226
  /**
1999
2227
  * Set to `true` to enable phone number collection.
@@ -2043,7 +2271,7 @@ declare module 'stripe' {
2043
2271
  interface ShippingAddressCollection {
2044
2272
  /**
2045
2273
  * An array of two-letter ISO country codes representing which countries Checkout should provide as options for
2046
- * shipping locations. Unsupported country codes: `AS, CX, CC, CU, HM, IR, KP, MH, FM, NF, MP, PW, SD, SY, UM, VI`.
2274
+ * shipping locations.
2047
2275
  */
2048
2276
  allowed_countries: Array<ShippingAddressCollection.AllowedCountry>;
2049
2277
  }
@@ -2575,7 +2803,7 @@ declare module 'stripe' {
2575
2803
  type Required = 'if_supported' | 'never';
2576
2804
  }
2577
2805
 
2578
- type UiMode = 'embedded' | 'hosted';
2806
+ type UiMode = 'custom' | 'embedded' | 'hosted';
2579
2807
  }
2580
2808
 
2581
2809
  interface SessionRetrieveParams {
@@ -2586,6 +2814,11 @@ declare module 'stripe' {
2586
2814
  }
2587
2815
 
2588
2816
  interface SessionUpdateParams {
2817
+ /**
2818
+ * Information about the customer collected within the Checkout Session.
2819
+ */
2820
+ collected_information?: SessionUpdateParams.CollectedInformation;
2821
+
2589
2822
  /**
2590
2823
  * Specifies which fields in the response should be expanded.
2591
2824
  */
@@ -2595,6 +2828,208 @@ declare module 'stripe' {
2595
2828
  * Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
2596
2829
  */
2597
2830
  metadata?: Stripe.Emptyable<Stripe.MetadataParam>;
2831
+
2832
+ /**
2833
+ * The shipping rate options to apply to this Session. Up to a maximum of 5.
2834
+ */
2835
+ shipping_options?: Stripe.Emptyable<
2836
+ Array<SessionUpdateParams.ShippingOption>
2837
+ >;
2838
+ }
2839
+
2840
+ namespace SessionUpdateParams {
2841
+ interface CollectedInformation {
2842
+ /**
2843
+ * The shipping details to apply to this Session.
2844
+ */
2845
+ shipping_details?: CollectedInformation.ShippingDetails;
2846
+ }
2847
+
2848
+ namespace CollectedInformation {
2849
+ interface ShippingDetails {
2850
+ /**
2851
+ * The address of the customer
2852
+ */
2853
+ address: ShippingDetails.Address;
2854
+
2855
+ /**
2856
+ * The name of customer
2857
+ */
2858
+ name: string;
2859
+ }
2860
+
2861
+ namespace ShippingDetails {
2862
+ interface Address {
2863
+ /**
2864
+ * City, district, suburb, town, or village.
2865
+ */
2866
+ city?: string;
2867
+
2868
+ /**
2869
+ * Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
2870
+ */
2871
+ country: string;
2872
+
2873
+ /**
2874
+ * Address line 1 (e.g., street, PO Box, or company name).
2875
+ */
2876
+ line1: string;
2877
+
2878
+ /**
2879
+ * Address line 2 (e.g., apartment, suite, unit, or building).
2880
+ */
2881
+ line2?: string;
2882
+
2883
+ /**
2884
+ * ZIP or postal code.
2885
+ */
2886
+ postal_code?: string;
2887
+
2888
+ /**
2889
+ * State, county, province, or region.
2890
+ */
2891
+ state?: string;
2892
+ }
2893
+ }
2894
+ }
2895
+
2896
+ interface ShippingOption {
2897
+ /**
2898
+ * The ID of the Shipping Rate to use for this shipping option.
2899
+ */
2900
+ shipping_rate?: string;
2901
+
2902
+ /**
2903
+ * Parameters to be passed to Shipping Rate creation for this shipping option.
2904
+ */
2905
+ shipping_rate_data?: ShippingOption.ShippingRateData;
2906
+ }
2907
+
2908
+ namespace ShippingOption {
2909
+ interface ShippingRateData {
2910
+ /**
2911
+ * The estimated range for how long shipping will take, meant to be displayable to the customer. This will appear on CheckoutSessions.
2912
+ */
2913
+ delivery_estimate?: ShippingRateData.DeliveryEstimate;
2914
+
2915
+ /**
2916
+ * The name of the shipping rate, meant to be displayable to the customer. This will appear on CheckoutSessions.
2917
+ */
2918
+ display_name: string;
2919
+
2920
+ /**
2921
+ * Describes a fixed amount to charge for shipping. Must be present if type is `fixed_amount`.
2922
+ */
2923
+ fixed_amount?: ShippingRateData.FixedAmount;
2924
+
2925
+ /**
2926
+ * Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
2927
+ */
2928
+ metadata?: Stripe.MetadataParam;
2929
+
2930
+ /**
2931
+ * Specifies whether the rate is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`.
2932
+ */
2933
+ tax_behavior?: ShippingRateData.TaxBehavior;
2934
+
2935
+ /**
2936
+ * A [tax code](https://stripe.com/docs/tax/tax-categories) ID. The Shipping tax code is `txcd_92010001`.
2937
+ */
2938
+ tax_code?: string;
2939
+
2940
+ /**
2941
+ * The type of calculation to use on the shipping rate.
2942
+ */
2943
+ type?: 'fixed_amount';
2944
+ }
2945
+
2946
+ namespace ShippingRateData {
2947
+ interface DeliveryEstimate {
2948
+ /**
2949
+ * The upper bound of the estimated range. If empty, represents no upper bound i.e., infinite.
2950
+ */
2951
+ maximum?: DeliveryEstimate.Maximum;
2952
+
2953
+ /**
2954
+ * The lower bound of the estimated range. If empty, represents no lower bound.
2955
+ */
2956
+ minimum?: DeliveryEstimate.Minimum;
2957
+ }
2958
+
2959
+ namespace DeliveryEstimate {
2960
+ interface Maximum {
2961
+ /**
2962
+ * A unit of time.
2963
+ */
2964
+ unit: Maximum.Unit;
2965
+
2966
+ /**
2967
+ * Must be greater than 0.
2968
+ */
2969
+ value: number;
2970
+ }
2971
+
2972
+ namespace Maximum {
2973
+ type Unit = 'business_day' | 'day' | 'hour' | 'month' | 'week';
2974
+ }
2975
+
2976
+ interface Minimum {
2977
+ /**
2978
+ * A unit of time.
2979
+ */
2980
+ unit: Minimum.Unit;
2981
+
2982
+ /**
2983
+ * Must be greater than 0.
2984
+ */
2985
+ value: number;
2986
+ }
2987
+
2988
+ namespace Minimum {
2989
+ type Unit = 'business_day' | 'day' | 'hour' | 'month' | 'week';
2990
+ }
2991
+ }
2992
+
2993
+ interface FixedAmount {
2994
+ /**
2995
+ * A non-negative integer in cents representing how much to charge.
2996
+ */
2997
+ amount: number;
2998
+
2999
+ /**
3000
+ * Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
3001
+ */
3002
+ currency: string;
3003
+
3004
+ /**
3005
+ * Shipping rates defined in each available currency option. Each key must be a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html) and a [supported currency](https://stripe.com/docs/currencies).
3006
+ */
3007
+ currency_options?: {
3008
+ [key: string]: FixedAmount.CurrencyOptions;
3009
+ };
3010
+ }
3011
+
3012
+ namespace FixedAmount {
3013
+ interface CurrencyOptions {
3014
+ /**
3015
+ * A non-negative integer in cents representing how much to charge.
3016
+ */
3017
+ amount: number;
3018
+
3019
+ /**
3020
+ * Specifies whether the rate is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`.
3021
+ */
3022
+ tax_behavior?: CurrencyOptions.TaxBehavior;
3023
+ }
3024
+
3025
+ namespace CurrencyOptions {
3026
+ type TaxBehavior = 'exclusive' | 'inclusive' | 'unspecified';
3027
+ }
3028
+ }
3029
+
3030
+ type TaxBehavior = 'exclusive' | 'inclusive' | 'unspecified';
3031
+ }
3032
+ }
2598
3033
  }
2599
3034
 
2600
3035
  interface SessionListParams extends PaginationParams {