stripe 9.0.0 → 9.3.0

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 (69) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/VERSION +1 -1
  3. package/lib/resources/Apps/Secrets.js +31 -0
  4. package/lib/resources/Customers.js +5 -0
  5. package/lib/resources/FinancialConnections/Accounts.js +12 -0
  6. package/lib/resources/TestHelpers/Treasury/InboundTransfers.js +25 -0
  7. package/lib/resources/TestHelpers/Treasury/OutboundPayments.js +25 -0
  8. package/lib/resources/TestHelpers/Treasury/OutboundTransfers.js +25 -0
  9. package/lib/resources/TestHelpers/Treasury/ReceivedCredits.js +15 -0
  10. package/lib/resources/TestHelpers/Treasury/ReceivedDebits.js +15 -0
  11. package/lib/resources/Treasury/CreditReversals.js +26 -0
  12. package/lib/resources/Treasury/DebitReversals.js +26 -0
  13. package/lib/resources/Treasury/FinancialAccounts.js +41 -0
  14. package/lib/resources/Treasury/InboundTransfers.js +31 -0
  15. package/lib/resources/Treasury/OutboundPayments.js +31 -0
  16. package/lib/resources/Treasury/OutboundTransfers.js +31 -0
  17. package/lib/resources/Treasury/ReceivedCredits.js +21 -0
  18. package/lib/resources/Treasury/ReceivedDebits.js +21 -0
  19. package/lib/resources/Treasury/TransactionEntries.js +21 -0
  20. package/lib/resources/Treasury/Transactions.js +21 -0
  21. package/lib/resources.js +22 -0
  22. package/package.json +1 -1
  23. package/types/2020-08-27/Accounts.d.ts +5 -5
  24. package/types/2020-08-27/Apps/Secrets.d.ts +241 -0
  25. package/types/2020-08-27/BillingPortal/Configurations.d.ts +1 -1
  26. package/types/2020-08-27/BillingPortal/Sessions.d.ts +1 -1
  27. package/types/2020-08-27/Charges.d.ts +8 -0
  28. package/types/2020-08-27/Checkout/Sessions.d.ts +51 -3
  29. package/types/2020-08-27/Customers.d.ts +24 -0
  30. package/types/2020-08-27/Discounts.d.ts +4 -4
  31. package/types/2020-08-27/FinancialConnections/Accounts.d.ts +63 -0
  32. package/types/2020-08-27/Invoices.d.ts +3 -0
  33. package/types/2020-08-27/Issuing/Authorizations.d.ts +22 -0
  34. package/types/2020-08-27/Issuing/Cards.d.ts +7 -0
  35. package/types/2020-08-27/Issuing/Disputes.d.ts +29 -0
  36. package/types/2020-08-27/Issuing/Transactions.d.ts +17 -0
  37. package/types/2020-08-27/LineItems.d.ts +2 -3
  38. package/types/2020-08-27/Mandates.d.ts +4 -0
  39. package/types/2020-08-27/Orders.d.ts +84 -4
  40. package/types/2020-08-27/PaymentIntents.d.ts +332 -2
  41. package/types/2020-08-27/PaymentLinks.d.ts +167 -0
  42. package/types/2020-08-27/PaymentMethods.d.ts +73 -0
  43. package/types/2020-08-27/PromotionCodes.d.ts +2 -2
  44. package/types/2020-08-27/Quotes.d.ts +6 -9
  45. package/types/2020-08-27/Refunds.d.ts +1 -1
  46. package/types/2020-08-27/SetupAttempts.d.ts +4 -0
  47. package/types/2020-08-27/SetupIntents.d.ts +157 -0
  48. package/types/2020-08-27/SubscriptionSchedules.d.ts +15 -0
  49. package/types/2020-08-27/Subscriptions.d.ts +41 -2
  50. package/types/2020-08-27/Terminal/Configurations.d.ts +63 -0
  51. package/types/2020-08-27/TestHelpers/Treasury/InboundTransfers.d.ts +108 -0
  52. package/types/2020-08-27/TestHelpers/Treasury/OutboundPayments.d.ts +105 -0
  53. package/types/2020-08-27/TestHelpers/Treasury/OutboundTransfers.d.ts +105 -0
  54. package/types/2020-08-27/TestHelpers/Treasury/ReceivedCredits.d.ts +93 -0
  55. package/types/2020-08-27/TestHelpers/Treasury/ReceivedDebits.d.ts +91 -0
  56. package/types/2020-08-27/Tokens.d.ts +2 -2
  57. package/types/2020-08-27/Treasury/CreditReversals.d.ts +168 -0
  58. package/types/2020-08-27/Treasury/DebitReversals.d.ts +187 -0
  59. package/types/2020-08-27/Treasury/FinancialAccountFeatures.d.ts +622 -0
  60. package/types/2020-08-27/Treasury/FinancialAccounts.d.ts +833 -0
  61. package/types/2020-08-27/Treasury/InboundTransfers.d.ts +349 -0
  62. package/types/2020-08-27/Treasury/OutboundPayments.d.ts +550 -0
  63. package/types/2020-08-27/Treasury/OutboundTransfers.d.ts +385 -0
  64. package/types/2020-08-27/Treasury/ReceivedCredits.d.ts +303 -0
  65. package/types/2020-08-27/Treasury/ReceivedDebits.d.ts +231 -0
  66. package/types/2020-08-27/Treasury/TransactionEntries.d.ts +257 -0
  67. package/types/2020-08-27/Treasury/Transactions.d.ts +268 -0
  68. package/types/2020-08-27/WebhookEndpoints.d.ts +62 -2
  69. package/types/2020-08-27/index.d.ts +39 -0
@@ -727,6 +727,8 @@ declare module 'stripe' {
727
727
  interface PaymentMethodOptions {
728
728
  acss_debit?: PaymentMethodOptions.AcssDebit;
729
729
 
730
+ affirm?: PaymentMethodOptions.Affirm;
731
+
730
732
  afterpay_clearpay?: PaymentMethodOptions.AfterpayClearpay;
731
733
 
732
734
  alipay?: PaymentMethodOptions.Alipay;
@@ -761,6 +763,8 @@ declare module 'stripe' {
761
763
 
762
764
  konbini?: PaymentMethodOptions.Konbini;
763
765
 
766
+ link?: PaymentMethodOptions.Link;
767
+
764
768
  oxxo?: PaymentMethodOptions.Oxxo;
765
769
 
766
770
  p24?: PaymentMethodOptions.P24;
@@ -829,6 +833,22 @@ declare module 'stripe' {
829
833
  type VerificationMethod = 'automatic' | 'instant' | 'microdeposits';
830
834
  }
831
835
 
836
+ interface Affirm {
837
+ /**
838
+ * Controls when the funds will be captured from the customer's account.
839
+ */
840
+ capture_method?: 'manual';
841
+
842
+ /**
843
+ * Indicates that you intend to make future payments with this PaymentIntent's payment method.
844
+ *
845
+ * Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
846
+ *
847
+ * When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
848
+ */
849
+ setup_future_usage?: 'none';
850
+ }
851
+
832
852
  interface AfterpayClearpay {
833
853
  /**
834
854
  * Controls when the funds will be captured from the customer's account.
@@ -1277,6 +1297,31 @@ declare module 'stripe' {
1277
1297
  setup_future_usage?: 'none';
1278
1298
  }
1279
1299
 
1300
+ interface Link {
1301
+ /**
1302
+ * Controls when the funds will be captured from the customer's account.
1303
+ */
1304
+ capture_method?: 'manual';
1305
+
1306
+ /**
1307
+ * Token used for persistent Link logins.
1308
+ */
1309
+ persistent_token: string | null;
1310
+
1311
+ /**
1312
+ * Indicates that you intend to make future payments with this PaymentIntent's payment method.
1313
+ *
1314
+ * Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
1315
+ *
1316
+ * When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
1317
+ */
1318
+ setup_future_usage?: Link.SetupFutureUsage;
1319
+ }
1320
+
1321
+ namespace Link {
1322
+ type SetupFutureUsage = 'none' | 'off_session';
1323
+ }
1324
+
1280
1325
  interface Oxxo {
1281
1326
  /**
1282
1327
  * The number of calendar days before an OXXO invoice expires. For example, if you create an OXXO invoice on Monday and you set expires_after_days to 2, the OXXO invoice will expire on Wednesday at 23:59 America/Mexico_City time.
@@ -1614,7 +1659,7 @@ declare module 'stripe' {
1614
1659
  payment_method_options?: PaymentIntentCreateParams.PaymentMethodOptions;
1615
1660
 
1616
1661
  /**
1617
- * The list of payment method types (e.g. card) that this PaymentIntent is allowed to use. If this is not provided, defaults to ["card"].
1662
+ * The list of payment method types (e.g. card) that this PaymentIntent is allowed to use. If this is not provided, defaults to ["card"]. Use automatic_payment_methods to manage payment methods from the [Stripe Dashboard](https://dashboard.stripe.com/settings/payment_methods).
1618
1663
  */
1619
1664
  payment_method_types?: Array<string>;
1620
1665
 
@@ -1738,6 +1783,11 @@ declare module 'stripe' {
1738
1783
  */
1739
1784
  acss_debit?: PaymentMethodData.AcssDebit;
1740
1785
 
1786
+ /**
1787
+ * If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
1788
+ */
1789
+ affirm?: PaymentMethodData.Affirm;
1790
+
1741
1791
  /**
1742
1792
  * If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
1743
1793
  */
@@ -1818,6 +1868,11 @@ declare module 'stripe' {
1818
1868
  */
1819
1869
  konbini?: PaymentMethodData.Konbini;
1820
1870
 
1871
+ /**
1872
+ * If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
1873
+ */
1874
+ link?: PaymentMethodData.Link;
1875
+
1821
1876
  /**
1822
1877
  * 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`.
1823
1878
  */
@@ -1882,6 +1937,8 @@ declare module 'stripe' {
1882
1937
  transit_number: string;
1883
1938
  }
1884
1939
 
1940
+ interface Affirm {}
1941
+
1885
1942
  interface AfterpayClearpay {}
1886
1943
 
1887
1944
  interface Alipay {}
@@ -2084,6 +2141,8 @@ declare module 'stripe' {
2084
2141
 
2085
2142
  interface Konbini {}
2086
2143
 
2144
+ interface Link {}
2145
+
2087
2146
  interface Oxxo {}
2088
2147
 
2089
2148
  interface P24 {
@@ -2144,6 +2203,7 @@ declare module 'stripe' {
2144
2203
 
2145
2204
  type Type =
2146
2205
  | 'acss_debit'
2206
+ | 'affirm'
2147
2207
  | 'afterpay_clearpay'
2148
2208
  | 'alipay'
2149
2209
  | 'au_becs_debit'
@@ -2158,6 +2218,7 @@ declare module 'stripe' {
2158
2218
  | 'ideal'
2159
2219
  | 'klarna'
2160
2220
  | 'konbini'
2221
+ | 'link'
2161
2222
  | 'oxxo'
2162
2223
  | 'p24'
2163
2224
  | 'paynow'
@@ -2208,6 +2269,11 @@ declare module 'stripe' {
2208
2269
  */
2209
2270
  acss_debit?: Stripe.Emptyable<PaymentMethodOptions.AcssDebit>;
2210
2271
 
2272
+ /**
2273
+ * If this is an `affirm` PaymentMethod, this sub-hash contains details about the Affirm payment method options.
2274
+ */
2275
+ affirm?: Stripe.Emptyable<PaymentMethodOptions.Affirm>;
2276
+
2211
2277
  /**
2212
2278
  * If this is a `afterpay_clearpay` PaymentMethod, this sub-hash contains details about the Afterpay Clearpay payment method options.
2213
2279
  */
@@ -2297,6 +2363,11 @@ declare module 'stripe' {
2297
2363
  */
2298
2364
  konbini?: Stripe.Emptyable<PaymentMethodOptions.Konbini>;
2299
2365
 
2366
+ /**
2367
+ * If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
2368
+ */
2369
+ link?: Stripe.Emptyable<PaymentMethodOptions.Link>;
2370
+
2300
2371
  /**
2301
2372
  * If this is a `oxxo` PaymentMethod, this sub-hash contains details about the OXXO payment method options.
2302
2373
  */
@@ -2393,6 +2464,28 @@ declare module 'stripe' {
2393
2464
  type VerificationMethod = 'automatic' | 'instant' | 'microdeposits';
2394
2465
  }
2395
2466
 
2467
+ interface Affirm {
2468
+ /**
2469
+ * Controls when the funds will be captured from the customer's account.
2470
+ *
2471
+ * If provided, this parameter will override the top-level `capture_method` when finalizing the payment with this payment method type.
2472
+ *
2473
+ * If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter will unset the stored value for this payment method type.
2474
+ */
2475
+ capture_method?: Stripe.Emptyable<'manual'>;
2476
+
2477
+ /**
2478
+ * Indicates that you intend to make future payments with this PaymentIntent's payment method.
2479
+ *
2480
+ * Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
2481
+ *
2482
+ * When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
2483
+ *
2484
+ * If `setup_future_usage` is already set and you are performing a request using a publishable key, you may only update the value from `on_session` to `off_session`.
2485
+ */
2486
+ setup_future_usage?: 'none';
2487
+ }
2488
+
2396
2489
  interface AfterpayClearpay {
2397
2490
  /**
2398
2491
  * Controls when the funds will be captured from the customer's account.
@@ -2894,6 +2987,37 @@ declare module 'stripe' {
2894
2987
  setup_future_usage?: 'none';
2895
2988
  }
2896
2989
 
2990
+ interface Link {
2991
+ /**
2992
+ * Controls when the funds will be captured from the customer's account.
2993
+ *
2994
+ * If provided, this parameter will override the top-level `capture_method` when finalizing the payment with this payment method type.
2995
+ *
2996
+ * If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter will unset the stored value for this payment method type.
2997
+ */
2998
+ capture_method?: Stripe.Emptyable<'manual'>;
2999
+
3000
+ /**
3001
+ * Token used for persistent Link logins.
3002
+ */
3003
+ persistent_token?: string;
3004
+
3005
+ /**
3006
+ * Indicates that you intend to make future payments with this PaymentIntent's payment method.
3007
+ *
3008
+ * Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
3009
+ *
3010
+ * When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
3011
+ *
3012
+ * If `setup_future_usage` is already set and you are performing a request using a publishable key, you may only update the value from `on_session` to `off_session`.
3013
+ */
3014
+ setup_future_usage?: Stripe.Emptyable<Link.SetupFutureUsage>;
3015
+ }
3016
+
3017
+ namespace Link {
3018
+ type SetupFutureUsage = 'none' | 'off_session';
3019
+ }
3020
+
2897
3021
  interface Oxxo {
2898
3022
  /**
2899
3023
  * The number of calendar days before an OXXO voucher expires. For example, if you create an OXXO voucher on Monday and you set expires_after_days to 2, the OXXO invoice will expire on Wednesday at 23:59 America/Mexico_City time.
@@ -3004,6 +3128,11 @@ declare module 'stripe' {
3004
3128
  */
3005
3129
  financial_connections?: UsBankAccount.FinancialConnections;
3006
3130
 
3131
+ /**
3132
+ * Additional fields for network related functions
3133
+ */
3134
+ networks?: UsBankAccount.Networks;
3135
+
3007
3136
  /**
3008
3137
  * Indicates that you intend to make future payments with this PaymentIntent's payment method.
3009
3138
  *
@@ -3042,6 +3171,17 @@ declare module 'stripe' {
3042
3171
  | 'transactions';
3043
3172
  }
3044
3173
 
3174
+ interface Networks {
3175
+ /**
3176
+ * Triggers validations to run across the selected networks
3177
+ */
3178
+ requested?: Array<Networks.Requested>;
3179
+ }
3180
+
3181
+ namespace Networks {
3182
+ type Requested = 'ach' | 'us_domestic_wire';
3183
+ }
3184
+
3045
3185
  type SetupFutureUsage = 'none' | 'off_session' | 'on_session';
3046
3186
 
3047
3187
  type VerificationMethod = 'automatic' | 'instant' | 'microdeposits';
@@ -3202,7 +3342,7 @@ declare module 'stripe' {
3202
3342
  payment_method_options?: PaymentIntentUpdateParams.PaymentMethodOptions;
3203
3343
 
3204
3344
  /**
3205
- * The list of payment method types (e.g. card) that this PaymentIntent is allowed to use.
3345
+ * The list of payment method types (e.g. card) that this PaymentIntent is allowed to use. Use automatic_payment_methods to manage payment methods from the [Stripe Dashboard](https://dashboard.stripe.com/settings/payment_methods).
3206
3346
  */
3207
3347
  payment_method_types?: Array<string>;
3208
3348
 
@@ -3257,6 +3397,11 @@ declare module 'stripe' {
3257
3397
  */
3258
3398
  acss_debit?: PaymentMethodData.AcssDebit;
3259
3399
 
3400
+ /**
3401
+ * If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
3402
+ */
3403
+ affirm?: PaymentMethodData.Affirm;
3404
+
3260
3405
  /**
3261
3406
  * If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
3262
3407
  */
@@ -3337,6 +3482,11 @@ declare module 'stripe' {
3337
3482
  */
3338
3483
  konbini?: PaymentMethodData.Konbini;
3339
3484
 
3485
+ /**
3486
+ * If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
3487
+ */
3488
+ link?: PaymentMethodData.Link;
3489
+
3340
3490
  /**
3341
3491
  * 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`.
3342
3492
  */
@@ -3401,6 +3551,8 @@ declare module 'stripe' {
3401
3551
  transit_number: string;
3402
3552
  }
3403
3553
 
3554
+ interface Affirm {}
3555
+
3404
3556
  interface AfterpayClearpay {}
3405
3557
 
3406
3558
  interface Alipay {}
@@ -3603,6 +3755,8 @@ declare module 'stripe' {
3603
3755
 
3604
3756
  interface Konbini {}
3605
3757
 
3758
+ interface Link {}
3759
+
3606
3760
  interface Oxxo {}
3607
3761
 
3608
3762
  interface P24 {
@@ -3663,6 +3817,7 @@ declare module 'stripe' {
3663
3817
 
3664
3818
  type Type =
3665
3819
  | 'acss_debit'
3820
+ | 'affirm'
3666
3821
  | 'afterpay_clearpay'
3667
3822
  | 'alipay'
3668
3823
  | 'au_becs_debit'
@@ -3677,6 +3832,7 @@ declare module 'stripe' {
3677
3832
  | 'ideal'
3678
3833
  | 'klarna'
3679
3834
  | 'konbini'
3835
+ | 'link'
3680
3836
  | 'oxxo'
3681
3837
  | 'p24'
3682
3838
  | 'paynow'
@@ -3727,6 +3883,11 @@ declare module 'stripe' {
3727
3883
  */
3728
3884
  acss_debit?: Stripe.Emptyable<PaymentMethodOptions.AcssDebit>;
3729
3885
 
3886
+ /**
3887
+ * If this is an `affirm` PaymentMethod, this sub-hash contains details about the Affirm payment method options.
3888
+ */
3889
+ affirm?: Stripe.Emptyable<PaymentMethodOptions.Affirm>;
3890
+
3730
3891
  /**
3731
3892
  * If this is a `afterpay_clearpay` PaymentMethod, this sub-hash contains details about the Afterpay Clearpay payment method options.
3732
3893
  */
@@ -3816,6 +3977,11 @@ declare module 'stripe' {
3816
3977
  */
3817
3978
  konbini?: Stripe.Emptyable<PaymentMethodOptions.Konbini>;
3818
3979
 
3980
+ /**
3981
+ * If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
3982
+ */
3983
+ link?: Stripe.Emptyable<PaymentMethodOptions.Link>;
3984
+
3819
3985
  /**
3820
3986
  * If this is a `oxxo` PaymentMethod, this sub-hash contains details about the OXXO payment method options.
3821
3987
  */
@@ -3912,6 +4078,28 @@ declare module 'stripe' {
3912
4078
  type VerificationMethod = 'automatic' | 'instant' | 'microdeposits';
3913
4079
  }
3914
4080
 
4081
+ interface Affirm {
4082
+ /**
4083
+ * Controls when the funds will be captured from the customer's account.
4084
+ *
4085
+ * If provided, this parameter will override the top-level `capture_method` when finalizing the payment with this payment method type.
4086
+ *
4087
+ * If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter will unset the stored value for this payment method type.
4088
+ */
4089
+ capture_method?: Stripe.Emptyable<'manual'>;
4090
+
4091
+ /**
4092
+ * Indicates that you intend to make future payments with this PaymentIntent's payment method.
4093
+ *
4094
+ * Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
4095
+ *
4096
+ * When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
4097
+ *
4098
+ * If `setup_future_usage` is already set and you are performing a request using a publishable key, you may only update the value from `on_session` to `off_session`.
4099
+ */
4100
+ setup_future_usage?: 'none';
4101
+ }
4102
+
3915
4103
  interface AfterpayClearpay {
3916
4104
  /**
3917
4105
  * Controls when the funds will be captured from the customer's account.
@@ -4413,6 +4601,37 @@ declare module 'stripe' {
4413
4601
  setup_future_usage?: 'none';
4414
4602
  }
4415
4603
 
4604
+ interface Link {
4605
+ /**
4606
+ * Controls when the funds will be captured from the customer's account.
4607
+ *
4608
+ * If provided, this parameter will override the top-level `capture_method` when finalizing the payment with this payment method type.
4609
+ *
4610
+ * If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter will unset the stored value for this payment method type.
4611
+ */
4612
+ capture_method?: Stripe.Emptyable<'manual'>;
4613
+
4614
+ /**
4615
+ * Token used for persistent Link logins.
4616
+ */
4617
+ persistent_token?: string;
4618
+
4619
+ /**
4620
+ * Indicates that you intend to make future payments with this PaymentIntent's payment method.
4621
+ *
4622
+ * Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
4623
+ *
4624
+ * When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
4625
+ *
4626
+ * If `setup_future_usage` is already set and you are performing a request using a publishable key, you may only update the value from `on_session` to `off_session`.
4627
+ */
4628
+ setup_future_usage?: Stripe.Emptyable<Link.SetupFutureUsage>;
4629
+ }
4630
+
4631
+ namespace Link {
4632
+ type SetupFutureUsage = 'none' | 'off_session';
4633
+ }
4634
+
4416
4635
  interface Oxxo {
4417
4636
  /**
4418
4637
  * The number of calendar days before an OXXO voucher expires. For example, if you create an OXXO voucher on Monday and you set expires_after_days to 2, the OXXO invoice will expire on Wednesday at 23:59 America/Mexico_City time.
@@ -4523,6 +4742,11 @@ declare module 'stripe' {
4523
4742
  */
4524
4743
  financial_connections?: UsBankAccount.FinancialConnections;
4525
4744
 
4745
+ /**
4746
+ * Additional fields for network related functions
4747
+ */
4748
+ networks?: UsBankAccount.Networks;
4749
+
4526
4750
  /**
4527
4751
  * Indicates that you intend to make future payments with this PaymentIntent's payment method.
4528
4752
  *
@@ -4561,6 +4785,17 @@ declare module 'stripe' {
4561
4785
  | 'transactions';
4562
4786
  }
4563
4787
 
4788
+ interface Networks {
4789
+ /**
4790
+ * Triggers validations to run across the selected networks
4791
+ */
4792
+ requested?: Array<Networks.Requested>;
4793
+ }
4794
+
4795
+ namespace Networks {
4796
+ type Requested = 'ach' | 'us_domestic_wire';
4797
+ }
4798
+
4564
4799
  type SetupFutureUsage = 'none' | 'off_session' | 'on_session';
4565
4800
 
4566
4801
  type VerificationMethod = 'automatic' | 'instant' | 'microdeposits';
@@ -4913,6 +5148,11 @@ declare module 'stripe' {
4913
5148
  */
4914
5149
  acss_debit?: PaymentMethodData.AcssDebit;
4915
5150
 
5151
+ /**
5152
+ * If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
5153
+ */
5154
+ affirm?: PaymentMethodData.Affirm;
5155
+
4916
5156
  /**
4917
5157
  * If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
4918
5158
  */
@@ -4993,6 +5233,11 @@ declare module 'stripe' {
4993
5233
  */
4994
5234
  konbini?: PaymentMethodData.Konbini;
4995
5235
 
5236
+ /**
5237
+ * If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
5238
+ */
5239
+ link?: PaymentMethodData.Link;
5240
+
4996
5241
  /**
4997
5242
  * 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`.
4998
5243
  */
@@ -5057,6 +5302,8 @@ declare module 'stripe' {
5057
5302
  transit_number: string;
5058
5303
  }
5059
5304
 
5305
+ interface Affirm {}
5306
+
5060
5307
  interface AfterpayClearpay {}
5061
5308
 
5062
5309
  interface Alipay {}
@@ -5259,6 +5506,8 @@ declare module 'stripe' {
5259
5506
 
5260
5507
  interface Konbini {}
5261
5508
 
5509
+ interface Link {}
5510
+
5262
5511
  interface Oxxo {}
5263
5512
 
5264
5513
  interface P24 {
@@ -5319,6 +5568,7 @@ declare module 'stripe' {
5319
5568
 
5320
5569
  type Type =
5321
5570
  | 'acss_debit'
5571
+ | 'affirm'
5322
5572
  | 'afterpay_clearpay'
5323
5573
  | 'alipay'
5324
5574
  | 'au_becs_debit'
@@ -5333,6 +5583,7 @@ declare module 'stripe' {
5333
5583
  | 'ideal'
5334
5584
  | 'klarna'
5335
5585
  | 'konbini'
5586
+ | 'link'
5336
5587
  | 'oxxo'
5337
5588
  | 'p24'
5338
5589
  | 'paynow'
@@ -5383,6 +5634,11 @@ declare module 'stripe' {
5383
5634
  */
5384
5635
  acss_debit?: Stripe.Emptyable<PaymentMethodOptions.AcssDebit>;
5385
5636
 
5637
+ /**
5638
+ * If this is an `affirm` PaymentMethod, this sub-hash contains details about the Affirm payment method options.
5639
+ */
5640
+ affirm?: Stripe.Emptyable<PaymentMethodOptions.Affirm>;
5641
+
5386
5642
  /**
5387
5643
  * If this is a `afterpay_clearpay` PaymentMethod, this sub-hash contains details about the Afterpay Clearpay payment method options.
5388
5644
  */
@@ -5472,6 +5728,11 @@ declare module 'stripe' {
5472
5728
  */
5473
5729
  konbini?: Stripe.Emptyable<PaymentMethodOptions.Konbini>;
5474
5730
 
5731
+ /**
5732
+ * If this is a `link` PaymentMethod, this sub-hash contains details about the Link payment method options.
5733
+ */
5734
+ link?: Stripe.Emptyable<PaymentMethodOptions.Link>;
5735
+
5475
5736
  /**
5476
5737
  * If this is a `oxxo` PaymentMethod, this sub-hash contains details about the OXXO payment method options.
5477
5738
  */
@@ -5568,6 +5829,28 @@ declare module 'stripe' {
5568
5829
  type VerificationMethod = 'automatic' | 'instant' | 'microdeposits';
5569
5830
  }
5570
5831
 
5832
+ interface Affirm {
5833
+ /**
5834
+ * Controls when the funds will be captured from the customer's account.
5835
+ *
5836
+ * If provided, this parameter will override the top-level `capture_method` when finalizing the payment with this payment method type.
5837
+ *
5838
+ * If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter will unset the stored value for this payment method type.
5839
+ */
5840
+ capture_method?: Stripe.Emptyable<'manual'>;
5841
+
5842
+ /**
5843
+ * Indicates that you intend to make future payments with this PaymentIntent's payment method.
5844
+ *
5845
+ * Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
5846
+ *
5847
+ * When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
5848
+ *
5849
+ * If `setup_future_usage` is already set and you are performing a request using a publishable key, you may only update the value from `on_session` to `off_session`.
5850
+ */
5851
+ setup_future_usage?: 'none';
5852
+ }
5853
+
5571
5854
  interface AfterpayClearpay {
5572
5855
  /**
5573
5856
  * Controls when the funds will be captured from the customer's account.
@@ -6069,6 +6352,37 @@ declare module 'stripe' {
6069
6352
  setup_future_usage?: 'none';
6070
6353
  }
6071
6354
 
6355
+ interface Link {
6356
+ /**
6357
+ * Controls when the funds will be captured from the customer's account.
6358
+ *
6359
+ * If provided, this parameter will override the top-level `capture_method` when finalizing the payment with this payment method type.
6360
+ *
6361
+ * If `capture_method` is already set on the PaymentIntent, providing an empty value for this parameter will unset the stored value for this payment method type.
6362
+ */
6363
+ capture_method?: Stripe.Emptyable<'manual'>;
6364
+
6365
+ /**
6366
+ * Token used for persistent Link logins.
6367
+ */
6368
+ persistent_token?: string;
6369
+
6370
+ /**
6371
+ * Indicates that you intend to make future payments with this PaymentIntent's payment method.
6372
+ *
6373
+ * Providing this parameter will [attach the payment method](https://stripe.com/docs/payments/save-during-payment) to the PaymentIntent's Customer, if present, after the PaymentIntent is confirmed and any required actions from the user are complete. If no Customer was provided, the payment method can still be [attached](https://stripe.com/docs/api/payment_methods/attach) to a Customer after the transaction completes.
6374
+ *
6375
+ * When processing card payments, Stripe also uses `setup_future_usage` to dynamically optimize your payment flow and comply with regional legislation and network rules, such as [SCA](https://stripe.com/docs/strong-customer-authentication).
6376
+ *
6377
+ * If `setup_future_usage` is already set and you are performing a request using a publishable key, you may only update the value from `on_session` to `off_session`.
6378
+ */
6379
+ setup_future_usage?: Stripe.Emptyable<Link.SetupFutureUsage>;
6380
+ }
6381
+
6382
+ namespace Link {
6383
+ type SetupFutureUsage = 'none' | 'off_session';
6384
+ }
6385
+
6072
6386
  interface Oxxo {
6073
6387
  /**
6074
6388
  * The number of calendar days before an OXXO voucher expires. For example, if you create an OXXO voucher on Monday and you set expires_after_days to 2, the OXXO invoice will expire on Wednesday at 23:59 America/Mexico_City time.
@@ -6179,6 +6493,11 @@ declare module 'stripe' {
6179
6493
  */
6180
6494
  financial_connections?: UsBankAccount.FinancialConnections;
6181
6495
 
6496
+ /**
6497
+ * Additional fields for network related functions
6498
+ */
6499
+ networks?: UsBankAccount.Networks;
6500
+
6182
6501
  /**
6183
6502
  * Indicates that you intend to make future payments with this PaymentIntent's payment method.
6184
6503
  *
@@ -6217,6 +6536,17 @@ declare module 'stripe' {
6217
6536
  | 'transactions';
6218
6537
  }
6219
6538
 
6539
+ interface Networks {
6540
+ /**
6541
+ * Triggers validations to run across the selected networks
6542
+ */
6543
+ requested?: Array<Networks.Requested>;
6544
+ }
6545
+
6546
+ namespace Networks {
6547
+ type Requested = 'ach' | 'us_domestic_wire';
6548
+ }
6549
+
6220
6550
  type SetupFutureUsage = 'none' | 'off_session' | 'on_session';
6221
6551
 
6222
6552
  type VerificationMethod = 'automatic' | 'instant' | 'microdeposits';