stripe 9.2.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.
@@ -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.
@@ -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.
@@ -3273,6 +3397,11 @@ declare module 'stripe' {
3273
3397
  */
3274
3398
  acss_debit?: PaymentMethodData.AcssDebit;
3275
3399
 
3400
+ /**
3401
+ * If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
3402
+ */
3403
+ affirm?: PaymentMethodData.Affirm;
3404
+
3276
3405
  /**
3277
3406
  * If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
3278
3407
  */
@@ -3353,6 +3482,11 @@ declare module 'stripe' {
3353
3482
  */
3354
3483
  konbini?: PaymentMethodData.Konbini;
3355
3484
 
3485
+ /**
3486
+ * If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
3487
+ */
3488
+ link?: PaymentMethodData.Link;
3489
+
3356
3490
  /**
3357
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`.
3358
3492
  */
@@ -3417,6 +3551,8 @@ declare module 'stripe' {
3417
3551
  transit_number: string;
3418
3552
  }
3419
3553
 
3554
+ interface Affirm {}
3555
+
3420
3556
  interface AfterpayClearpay {}
3421
3557
 
3422
3558
  interface Alipay {}
@@ -3619,6 +3755,8 @@ declare module 'stripe' {
3619
3755
 
3620
3756
  interface Konbini {}
3621
3757
 
3758
+ interface Link {}
3759
+
3622
3760
  interface Oxxo {}
3623
3761
 
3624
3762
  interface P24 {
@@ -3679,6 +3817,7 @@ declare module 'stripe' {
3679
3817
 
3680
3818
  type Type =
3681
3819
  | 'acss_debit'
3820
+ | 'affirm'
3682
3821
  | 'afterpay_clearpay'
3683
3822
  | 'alipay'
3684
3823
  | 'au_becs_debit'
@@ -3693,6 +3832,7 @@ declare module 'stripe' {
3693
3832
  | 'ideal'
3694
3833
  | 'klarna'
3695
3834
  | 'konbini'
3835
+ | 'link'
3696
3836
  | 'oxxo'
3697
3837
  | 'p24'
3698
3838
  | 'paynow'
@@ -3743,6 +3883,11 @@ declare module 'stripe' {
3743
3883
  */
3744
3884
  acss_debit?: Stripe.Emptyable<PaymentMethodOptions.AcssDebit>;
3745
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
+
3746
3891
  /**
3747
3892
  * If this is a `afterpay_clearpay` PaymentMethod, this sub-hash contains details about the Afterpay Clearpay payment method options.
3748
3893
  */
@@ -3832,6 +3977,11 @@ declare module 'stripe' {
3832
3977
  */
3833
3978
  konbini?: Stripe.Emptyable<PaymentMethodOptions.Konbini>;
3834
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
+
3835
3985
  /**
3836
3986
  * If this is a `oxxo` PaymentMethod, this sub-hash contains details about the OXXO payment method options.
3837
3987
  */
@@ -3928,6 +4078,28 @@ declare module 'stripe' {
3928
4078
  type VerificationMethod = 'automatic' | 'instant' | 'microdeposits';
3929
4079
  }
3930
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
+
3931
4103
  interface AfterpayClearpay {
3932
4104
  /**
3933
4105
  * Controls when the funds will be captured from the customer's account.
@@ -4429,6 +4601,37 @@ declare module 'stripe' {
4429
4601
  setup_future_usage?: 'none';
4430
4602
  }
4431
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
+
4432
4635
  interface Oxxo {
4433
4636
  /**
4434
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.
@@ -4945,6 +5148,11 @@ declare module 'stripe' {
4945
5148
  */
4946
5149
  acss_debit?: PaymentMethodData.AcssDebit;
4947
5150
 
5151
+ /**
5152
+ * If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
5153
+ */
5154
+ affirm?: PaymentMethodData.Affirm;
5155
+
4948
5156
  /**
4949
5157
  * If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
4950
5158
  */
@@ -5025,6 +5233,11 @@ declare module 'stripe' {
5025
5233
  */
5026
5234
  konbini?: PaymentMethodData.Konbini;
5027
5235
 
5236
+ /**
5237
+ * If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
5238
+ */
5239
+ link?: PaymentMethodData.Link;
5240
+
5028
5241
  /**
5029
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`.
5030
5243
  */
@@ -5089,6 +5302,8 @@ declare module 'stripe' {
5089
5302
  transit_number: string;
5090
5303
  }
5091
5304
 
5305
+ interface Affirm {}
5306
+
5092
5307
  interface AfterpayClearpay {}
5093
5308
 
5094
5309
  interface Alipay {}
@@ -5291,6 +5506,8 @@ declare module 'stripe' {
5291
5506
 
5292
5507
  interface Konbini {}
5293
5508
 
5509
+ interface Link {}
5510
+
5294
5511
  interface Oxxo {}
5295
5512
 
5296
5513
  interface P24 {
@@ -5351,6 +5568,7 @@ declare module 'stripe' {
5351
5568
 
5352
5569
  type Type =
5353
5570
  | 'acss_debit'
5571
+ | 'affirm'
5354
5572
  | 'afterpay_clearpay'
5355
5573
  | 'alipay'
5356
5574
  | 'au_becs_debit'
@@ -5365,6 +5583,7 @@ declare module 'stripe' {
5365
5583
  | 'ideal'
5366
5584
  | 'klarna'
5367
5585
  | 'konbini'
5586
+ | 'link'
5368
5587
  | 'oxxo'
5369
5588
  | 'p24'
5370
5589
  | 'paynow'
@@ -5415,6 +5634,11 @@ declare module 'stripe' {
5415
5634
  */
5416
5635
  acss_debit?: Stripe.Emptyable<PaymentMethodOptions.AcssDebit>;
5417
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
+
5418
5642
  /**
5419
5643
  * If this is a `afterpay_clearpay` PaymentMethod, this sub-hash contains details about the Afterpay Clearpay payment method options.
5420
5644
  */
@@ -5504,6 +5728,11 @@ declare module 'stripe' {
5504
5728
  */
5505
5729
  konbini?: Stripe.Emptyable<PaymentMethodOptions.Konbini>;
5506
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
+
5507
5736
  /**
5508
5737
  * If this is a `oxxo` PaymentMethod, this sub-hash contains details about the OXXO payment method options.
5509
5738
  */
@@ -5600,6 +5829,28 @@ declare module 'stripe' {
5600
5829
  type VerificationMethod = 'automatic' | 'instant' | 'microdeposits';
5601
5830
  }
5602
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
+
5603
5854
  interface AfterpayClearpay {
5604
5855
  /**
5605
5856
  * Controls when the funds will be captured from the customer's account.
@@ -6101,6 +6352,37 @@ declare module 'stripe' {
6101
6352
  setup_future_usage?: 'none';
6102
6353
  }
6103
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
+
6104
6386
  interface Oxxo {
6105
6387
  /**
6106
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.
@@ -18,6 +18,8 @@ declare module 'stripe' {
18
18
 
19
19
  acss_debit?: PaymentMethod.AcssDebit;
20
20
 
21
+ affirm?: PaymentMethod.Affirm;
22
+
21
23
  afterpay_clearpay?: PaymentMethod.AfterpayClearpay;
22
24
 
23
25
  alipay?: PaymentMethod.Alipay;
@@ -64,6 +66,8 @@ declare module 'stripe' {
64
66
 
65
67
  konbini?: PaymentMethod.Konbini;
66
68
 
69
+ link?: PaymentMethod.Link;
70
+
67
71
  /**
68
72
  * Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
69
73
  */
@@ -122,6 +126,8 @@ declare module 'stripe' {
122
126
  transit_number: string | null;
123
127
  }
124
128
 
129
+ interface Affirm {}
130
+
125
131
  interface AfterpayClearpay {}
126
132
 
127
133
  interface Alipay {}
@@ -548,6 +554,18 @@ declare module 'stripe' {
548
554
 
549
555
  interface Konbini {}
550
556
 
557
+ interface Link {
558
+ /**
559
+ * Account owner's email address.
560
+ */
561
+ email: string | null;
562
+
563
+ /**
564
+ * Token used for persistent Link logins.
565
+ */
566
+ persistent_token?: string;
567
+ }
568
+
551
569
  interface Oxxo {}
552
570
 
553
571
  interface P24 {
@@ -643,6 +661,7 @@ declare module 'stripe' {
643
661
 
644
662
  type Type =
645
663
  | 'acss_debit'
664
+ | 'affirm'
646
665
  | 'afterpay_clearpay'
647
666
  | 'alipay'
648
667
  | 'au_becs_debit'
@@ -660,6 +679,7 @@ declare module 'stripe' {
660
679
  | 'interac_present'
661
680
  | 'klarna'
662
681
  | 'konbini'
682
+ | 'link'
663
683
  | 'oxxo'
664
684
  | 'p24'
665
685
  | 'paynow'
@@ -741,6 +761,11 @@ declare module 'stripe' {
741
761
  */
742
762
  acss_debit?: PaymentMethodCreateParams.AcssDebit;
743
763
 
764
+ /**
765
+ * If this is an `affirm` PaymentMethod, this hash contains details about the Affirm payment method.
766
+ */
767
+ affirm?: PaymentMethodCreateParams.Affirm;
768
+
744
769
  /**
745
770
  * If this is an `AfterpayClearpay` PaymentMethod, this hash contains details about the AfterpayClearpay payment method.
746
771
  */
@@ -836,6 +861,11 @@ declare module 'stripe' {
836
861
  */
837
862
  konbini?: PaymentMethodCreateParams.Konbini;
838
863
 
864
+ /**
865
+ * If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
866
+ */
867
+ link?: PaymentMethodCreateParams.Link;
868
+
839
869
  /**
840
870
  * 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`.
841
871
  */
@@ -905,6 +935,8 @@ declare module 'stripe' {
905
935
  transit_number: string;
906
936
  }
907
937
 
938
+ interface Affirm {}
939
+
908
940
  interface AfterpayClearpay {}
909
941
 
910
942
  interface Alipay {}
@@ -1133,6 +1165,8 @@ declare module 'stripe' {
1133
1165
 
1134
1166
  interface Konbini {}
1135
1167
 
1168
+ interface Link {}
1169
+
1136
1170
  interface Oxxo {}
1137
1171
 
1138
1172
  interface P24 {
@@ -1193,6 +1227,7 @@ declare module 'stripe' {
1193
1227
 
1194
1228
  type Type =
1195
1229
  | 'acss_debit'
1230
+ | 'affirm'
1196
1231
  | 'afterpay_clearpay'
1197
1232
  | 'alipay'
1198
1233
  | 'au_becs_debit'
@@ -1208,6 +1243,7 @@ declare module 'stripe' {
1208
1243
  | 'ideal'
1209
1244
  | 'klarna'
1210
1245
  | 'konbini'
1246
+ | 'link'
1211
1247
  | 'oxxo'
1212
1248
  | 'p24'
1213
1249
  | 'paynow'
@@ -1265,6 +1301,11 @@ declare module 'stripe' {
1265
1301
  */
1266
1302
  acss_debit?: PaymentMethodUpdateParams.AcssDebit;
1267
1303
 
1304
+ /**
1305
+ * This is a legacy parameter that will be removed in the future. It is a hash that does not accept any keys.
1306
+ */
1307
+ affirm?: PaymentMethodUpdateParams.Affirm;
1308
+
1268
1309
  /**
1269
1310
  * This is a legacy parameter that will be removed in the future. It is a hash that does not accept any keys.
1270
1311
  */
@@ -1290,6 +1331,11 @@ declare module 'stripe' {
1290
1331
  */
1291
1332
  expand?: Array<string>;
1292
1333
 
1334
+ /**
1335
+ * If this is an `Link` PaymentMethod, this hash contains details about the Link payment method.
1336
+ */
1337
+ link?: PaymentMethodUpdateParams.Link;
1338
+
1293
1339
  /**
1294
1340
  * 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`.
1295
1341
  */
@@ -1309,6 +1355,8 @@ declare module 'stripe' {
1309
1355
  namespace PaymentMethodUpdateParams {
1310
1356
  interface AcssDebit {}
1311
1357
 
1358
+ interface Affirm {}
1359
+
1312
1360
  interface AuBecsDebit {}
1313
1361
 
1314
1362
  interface BacsDebit {}
@@ -1353,6 +1401,8 @@ declare module 'stripe' {
1353
1401
  exp_year?: number;
1354
1402
  }
1355
1403
 
1404
+ interface Link {}
1405
+
1356
1406
  interface SepaDebit {}
1357
1407
 
1358
1408
  interface UsBankAccount {
@@ -1387,6 +1437,7 @@ declare module 'stripe' {
1387
1437
  namespace PaymentMethodListParams {
1388
1438
  type Type =
1389
1439
  | 'acss_debit'
1440
+ | 'affirm'
1390
1441
  | 'afterpay_clearpay'
1391
1442
  | 'alipay'
1392
1443
  | 'au_becs_debit'
@@ -1403,6 +1454,7 @@ declare module 'stripe' {
1403
1454
  | 'ideal'
1404
1455
  | 'klarna'
1405
1456
  | 'konbini'
1457
+ | 'link'
1406
1458
  | 'oxxo'
1407
1459
  | 'p24'
1408
1460
  | 'paynow'