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
@@ -43,6 +43,11 @@ declare module 'stripe' {
43
43
  */
44
44
  invoice?: string;
45
45
 
46
+ /**
47
+ * The ids of the margins to apply to the invoice item. When set, the `default_margins` on the invoice do not apply to this invoice item.
48
+ */
49
+ margins?: Array<string>;
50
+
46
51
  /**
47
52
  * 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`.
48
53
  */
@@ -111,12 +116,56 @@ declare module 'stripe' {
111
116
  */
112
117
  discount?: string;
113
118
 
119
+ /**
120
+ * Details to determine how long the discount should be applied for.
121
+ */
122
+ discount_end?: Discount.DiscountEnd;
123
+
114
124
  /**
115
125
  * ID of the promotion code to create a new discount for.
116
126
  */
117
127
  promotion_code?: string;
118
128
  }
119
129
 
130
+ namespace Discount {
131
+ interface DiscountEnd {
132
+ /**
133
+ * Time span for the redeemed discount.
134
+ */
135
+ duration?: DiscountEnd.Duration;
136
+
137
+ /**
138
+ * A precise Unix timestamp for the discount to end. Must be in the future.
139
+ */
140
+ timestamp?: number;
141
+
142
+ /**
143
+ * The type of calculation made to determine when the discount ends.
144
+ */
145
+ type: DiscountEnd.Type;
146
+ }
147
+
148
+ namespace DiscountEnd {
149
+ interface Duration {
150
+ /**
151
+ * Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
152
+ */
153
+ interval: Duration.Interval;
154
+
155
+ /**
156
+ * The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
157
+ */
158
+ interval_count: number;
159
+ }
160
+
161
+ namespace Duration {
162
+ type Interval = 'day' | 'month' | 'week' | 'year';
163
+ }
164
+
165
+ type Type = 'duration' | 'timestamp';
166
+ }
167
+ }
168
+
120
169
  interface Period {
121
170
  /**
122
171
  * The end of the period, which must be greater than or equal to the start. This value is inclusive.
@@ -196,6 +245,11 @@ declare module 'stripe' {
196
245
  */
197
246
  expand?: Array<string>;
198
247
 
248
+ /**
249
+ * The ids of the margins to apply to the invoice item. When set, the `default_margins` on the invoice do not apply to this invoice item.
250
+ */
251
+ margins?: Stripe.Emptyable<Array<string>>;
252
+
199
253
  /**
200
254
  * 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`.
201
255
  */
@@ -259,12 +313,56 @@ declare module 'stripe' {
259
313
  */
260
314
  discount?: string;
261
315
 
316
+ /**
317
+ * Details to determine how long the discount should be applied for.
318
+ */
319
+ discount_end?: Discount.DiscountEnd;
320
+
262
321
  /**
263
322
  * ID of the promotion code to create a new discount for.
264
323
  */
265
324
  promotion_code?: string;
266
325
  }
267
326
 
327
+ namespace Discount {
328
+ interface DiscountEnd {
329
+ /**
330
+ * Time span for the redeemed discount.
331
+ */
332
+ duration?: DiscountEnd.Duration;
333
+
334
+ /**
335
+ * A precise Unix timestamp for the discount to end. Must be in the future.
336
+ */
337
+ timestamp?: number;
338
+
339
+ /**
340
+ * The type of calculation made to determine when the discount ends.
341
+ */
342
+ type: DiscountEnd.Type;
343
+ }
344
+
345
+ namespace DiscountEnd {
346
+ interface Duration {
347
+ /**
348
+ * Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
349
+ */
350
+ interval: Duration.Interval;
351
+
352
+ /**
353
+ * The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
354
+ */
355
+ interval_count: number;
356
+ }
357
+
358
+ namespace Duration {
359
+ type Interval = 'day' | 'month' | 'week' | 'year';
360
+ }
361
+
362
+ type Type = 'duration' | 'timestamp';
363
+ }
364
+ }
365
+
268
366
  interface Period {
269
367
  /**
270
368
  * The end of the period, which must be greater than or equal to the start. This value is inclusive.
@@ -68,6 +68,16 @@ declare module 'stripe' {
68
68
  */
69
69
  livemode: boolean;
70
70
 
71
+ /**
72
+ * The amount of margin calculated per margin for this line item.
73
+ */
74
+ margin_amounts?: Array<InvoiceLineItem.MarginAmount> | null;
75
+
76
+ /**
77
+ * The margins applied to the line item. When set, the `default_margins` on the invoice do not apply to the line item. Use `expand[]=margins` to expand each margin.
78
+ */
79
+ margins?: Array<string | Stripe.Margin> | null;
80
+
71
81
  /**
72
82
  * 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. Note that for line items with `type=subscription`, `metadata` reflects the current metadata from the subscription associated with the line item, unless the invoice line was directly updated with different metadata after creation.
73
83
  */
@@ -149,6 +159,18 @@ declare module 'stripe' {
149
159
  discount: string | Stripe.Discount | Stripe.DeletedDiscount;
150
160
  }
151
161
 
162
+ interface MarginAmount {
163
+ /**
164
+ * The amount, in cents (or local equivalent), of the reduction in line item amount.
165
+ */
166
+ amount: number;
167
+
168
+ /**
169
+ * The margin that was applied to get this margin amount.
170
+ */
171
+ margin: string | Stripe.Margin;
172
+ }
173
+
152
174
  interface Period {
153
175
  /**
154
176
  * The end of the period, which must be greater than or equal to the start. This value is inclusive.
@@ -180,6 +202,11 @@ declare module 'stripe' {
180
202
  */
181
203
  discount?: string | Stripe.Discount | Stripe.DeletedDiscount;
182
204
 
205
+ /**
206
+ * The margin that was applied to get this pretax credit amount.
207
+ */
208
+ margin?: string | Stripe.Margin;
209
+
183
210
  /**
184
211
  * Type of the pretax credit amount referenced.
185
212
  */
@@ -187,7 +214,7 @@ declare module 'stripe' {
187
214
  }
188
215
 
189
216
  namespace PretaxCreditAmount {
190
- type Type = 'credit_balance_transaction' | 'discount';
217
+ type Type = 'credit_balance_transaction' | 'discount' | 'margin';
191
218
  }
192
219
 
193
220
  interface ProrationDetails {
@@ -0,0 +1,113 @@
1
+ // File generated from our OpenAPI spec
2
+
3
+ declare module 'stripe' {
4
+ namespace Stripe {
5
+ /**
6
+ * The invoice payment object
7
+ */
8
+ interface InvoicePayment {
9
+ /**
10
+ * Unique identifier for the object.
11
+ */
12
+ id: string;
13
+
14
+ /**
15
+ * String representing the object's type. Objects of the same type share the same value.
16
+ */
17
+ object: 'invoice_payment';
18
+
19
+ /**
20
+ * Excess payment that was received for this invoice and credited to the customer's `invoice_credit_balance`. This field is null until the payment is `paid`. Overpayment can happen when you attach more than one PaymentIntent to the invoice, and each of them succeeds. To avoid overpayment, cancel any PaymentIntents that you do not need before attaching more.
21
+ */
22
+ amount_overpaid: number | null;
23
+
24
+ /**
25
+ * Amount that was actually paid for this invoice, in cents (or local equivalent). This field is null until the payment is `paid`. This amount can be less than the `amount_requested` if the PaymentIntent's `amount_received` is not sufficient to pay all of the invoices that it is attached to.
26
+ */
27
+ amount_paid: number | null;
28
+
29
+ /**
30
+ * Amount intended to be paid toward this invoice, in cents (or local equivalent)
31
+ */
32
+ amount_requested: number;
33
+
34
+ /**
35
+ * Time at which the object was created. Measured in seconds since the Unix epoch.
36
+ */
37
+ created: number;
38
+
39
+ /**
40
+ * 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).
41
+ */
42
+ currency: string;
43
+
44
+ /**
45
+ * The invoice that was paid.
46
+ */
47
+ invoice: string | Stripe.Invoice | Stripe.DeletedInvoice;
48
+
49
+ /**
50
+ * Stripe automatically creates a default InvoicePayment when the invoice is finalized, and keeps it synchronized with the invoice's `amount_remaining`. The PaymentIntent associated with the default payment can't be edited or canceled directly.
51
+ */
52
+ is_default: boolean | null;
53
+
54
+ /**
55
+ * Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
56
+ */
57
+ livemode: boolean;
58
+
59
+ payment: InvoicePayment.Payment;
60
+
61
+ /**
62
+ * The status of the payment, one of `open`, `paid`, or `canceled`.
63
+ */
64
+ status: string;
65
+
66
+ status_transitions: InvoicePayment.StatusTransitions;
67
+ }
68
+
69
+ namespace InvoicePayment {
70
+ interface Payment {
71
+ /**
72
+ * ID of the successful charge for this payment when `type` is `charge`.
73
+ */
74
+ charge?: string | Stripe.Charge;
75
+
76
+ /**
77
+ * ID of the PaymentIntent associated with this payment when `type` is `payment_intent`. Note: This property is only populated for invoices finalized on or after March 15th, 2019.
78
+ */
79
+ payment_intent?: string | Stripe.PaymentIntent;
80
+
81
+ /**
82
+ * ID of the PaymentRecord associated with this payment when `type` is `payment_record`.
83
+ */
84
+ payment_record?: string | Stripe.PaymentRecord;
85
+
86
+ /**
87
+ * Type of payment object associated with this invoice payment.
88
+ */
89
+ type: Payment.Type;
90
+ }
91
+
92
+ namespace Payment {
93
+ type Type =
94
+ | 'charge'
95
+ | 'out_of_band_payment'
96
+ | 'payment_intent'
97
+ | 'payment_record';
98
+ }
99
+
100
+ interface StatusTransitions {
101
+ /**
102
+ * The time that the payment was canceled.
103
+ */
104
+ canceled_at: number | null;
105
+
106
+ /**
107
+ * The time that the payment succeeded.
108
+ */
109
+ paid_at: number | null;
110
+ }
111
+ }
112
+ }
113
+ }
@@ -89,6 +89,11 @@ declare module 'stripe' {
89
89
  */
90
90
  amount_due: number;
91
91
 
92
+ /**
93
+ * Amount that was overpaid on the invoice. Overpayments are debited to the customer's credit balance.
94
+ */
95
+ amount_overpaid?: number;
96
+
92
97
  /**
93
98
  * The amount, in cents (or local equivalent), that was paid.
94
99
  */
@@ -104,6 +109,11 @@ declare module 'stripe' {
104
109
  */
105
110
  amount_shipping: number;
106
111
 
112
+ /**
113
+ * List of expected payments and corresponding due dates. This value will be null for invoices where collection_method=charge_automatically.
114
+ */
115
+ amounts_due?: Array<Invoice.AmountsDue> | null;
116
+
107
117
  /**
108
118
  * ID of the Connect Application that created the invoice.
109
119
  */
@@ -218,6 +228,11 @@ declare module 'stripe' {
218
228
  */
219
229
  customer_tax_ids?: Array<Invoice.CustomerTaxId> | null;
220
230
 
231
+ /**
232
+ * The margins applied to the invoice. Can be overridden by line item `margins`. Use `expand[]=default_margins` to expand each margin.
233
+ */
234
+ default_margins?: Array<string | Stripe.Margin> | null;
235
+
221
236
  /**
222
237
  * ID of the default payment method for the invoice. It must belong to the customer associated with the invoice. If not set, defaults to the subscription's default payment method, if any, or to the default payment method in the customer's invoice settings.
223
238
  */
@@ -347,6 +362,11 @@ declare module 'stripe' {
347
362
 
348
363
  payment_settings: Invoice.PaymentSettings;
349
364
 
365
+ /**
366
+ * Payments for this invoice
367
+ */
368
+ payments?: ApiList<Stripe.InvoicePayment>;
369
+
350
370
  /**
351
371
  * End of the usage period during which invoice items were added to this invoice. This looks back one period for a subscription invoice. Use the [line item period](https://stripe.com/api/invoices/line_item#invoice_line_item_object-period) to get the service period for each price.
352
372
  */
@@ -461,6 +481,11 @@ declare module 'stripe' {
461
481
  */
462
482
  total_excluding_tax: number | null;
463
483
 
484
+ /**
485
+ * The aggregate amounts calculated per margin across all line items.
486
+ */
487
+ total_margin_amounts?: Array<Invoice.TotalMarginAmount> | null;
488
+
464
489
  /**
465
490
  * Contains pretax credit amounts (ex: discount, credit grants, etc) that apply to this invoice. This is a combined list of total_pretax_credit_amounts across all invoice line items.
466
491
  */
@@ -485,6 +510,52 @@ declare module 'stripe' {
485
510
  }
486
511
 
487
512
  namespace Invoice {
513
+ interface AmountsDue {
514
+ /**
515
+ * Incremental amount due for this payment in cents (or local equivalent).
516
+ */
517
+ amount: number;
518
+
519
+ /**
520
+ * The amount in cents (or local equivalent) that was paid for this payment.
521
+ */
522
+ amount_paid: number;
523
+
524
+ /**
525
+ * The difference between the payment's amount and amount_paid, in cents (or local equivalent).
526
+ */
527
+ amount_remaining: number;
528
+
529
+ /**
530
+ * Number of days from when invoice is finalized until the payment is due.
531
+ */
532
+ days_until_due: number | null;
533
+
534
+ /**
535
+ * An arbitrary string attached to the object. Often useful for displaying to users.
536
+ */
537
+ description: string | null;
538
+
539
+ /**
540
+ * Date on which a payment plan's payment is due.
541
+ */
542
+ due_date: number | null;
543
+
544
+ /**
545
+ * Timestamp when the payment was paid.
546
+ */
547
+ paid_at: number | null;
548
+
549
+ /**
550
+ * The status of the payment, one of `open`, `paid`, or `past_due`
551
+ */
552
+ status: AmountsDue.Status;
553
+ }
554
+
555
+ namespace AmountsDue {
556
+ type Status = 'open' | 'paid' | 'past_due';
557
+ }
558
+
488
559
  interface AutomaticTax {
489
560
  /**
490
561
  * Whether Stripe automatically computes tax on this invoice. Note that incompatible invoice items (invoice items with manually specified [tax rates](https://stripe.com/docs/api/tax_rates), negative amounts, or `tax_behavior=unspecified`) cannot be added to automatic tax invoices.
@@ -563,7 +634,7 @@ declare module 'stripe' {
563
634
 
564
635
  interface CustomerTaxId {
565
636
  /**
566
- * The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, or `unknown`
637
+ * The type of the tax ID, one of `ad_nrt`, `ar_cuit`, `eu_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `cn_tin`, `co_nit`, `cr_tin`, `do_rcn`, `ec_ruc`, `eu_oss_vat`, `hr_oib`, `pe_ruc`, `ro_tin`, `rs_pib`, `sv_nit`, `uy_ruc`, `ve_rif`, `vn_tin`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `no_voec`, `za_vat`, `ch_vat`, `mx_rfc`, `sg_uen`, `ru_inn`, `ru_kpp`, `ca_bn`, `hk_br`, `es_cif`, `tw_vat`, `th_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `li_uid`, `li_vat`, `my_itn`, `us_ein`, `kr_brn`, `ca_qst`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `my_sst`, `sg_gst`, `ae_trn`, `cl_tin`, `sa_vat`, `id_npwp`, `my_frp`, `il_vat`, `ge_vat`, `ua_vat`, `is_vat`, `bg_uic`, `hu_tin`, `si_tin`, `ke_pin`, `tr_tin`, `eg_tin`, `ph_tin`, `bh_vat`, `kz_bin`, `ng_tin`, `om_vat`, `de_stn`, `ch_uid`, `tz_vat`, `uz_vat`, `uz_tin`, `md_vat`, `ma_vat`, `by_tin`, or `unknown`
567
638
  */
568
639
  type: CustomerTaxId.Type;
569
640
 
@@ -621,6 +692,7 @@ declare module 'stripe' {
621
692
  | 'kr_brn'
622
693
  | 'kz_bin'
623
694
  | 'li_uid'
695
+ | 'li_vat'
624
696
  | 'ma_vat'
625
697
  | 'md_vat'
626
698
  | 'mx_rfc'
@@ -846,11 +918,15 @@ declare module 'stripe' {
846
918
  | 'email_invalid'
847
919
  | 'expired_card'
848
920
  | 'financial_connections_account_inactive'
921
+ | 'financial_connections_institution_unavailable'
849
922
  | 'financial_connections_no_successful_transaction_refresh'
850
923
  | 'forwarding_api_inactive'
851
924
  | 'forwarding_api_invalid_parameter'
852
925
  | 'forwarding_api_upstream_connection_error'
853
926
  | 'forwarding_api_upstream_connection_timeout'
927
+ | 'gift_card_balance_insufficient'
928
+ | 'gift_card_code_exists'
929
+ | 'gift_card_inactive'
854
930
  | 'idempotency_key_in_use'
855
931
  | 'incorrect_address'
856
932
  | 'incorrect_cvc'
@@ -940,6 +1016,7 @@ declare module 'stripe' {
940
1016
  | 'return_intent_already_processed'
941
1017
  | 'routing_number_invalid'
942
1018
  | 'secret_key_required'
1019
+ | 'sensitive_data_access_expired'
943
1020
  | 'sepa_unsupported_account'
944
1021
  | 'setup_attempt_failed'
945
1022
  | 'setup_intent_authentication_failure'
@@ -957,6 +1034,7 @@ declare module 'stripe' {
957
1034
  | 'taxes_calculation_failed'
958
1035
  | 'terminal_location_country_unsupported'
959
1036
  | 'terminal_reader_busy'
1037
+ | 'terminal_reader_collected_data_invalid'
960
1038
  | 'terminal_reader_hardware_fault'
961
1039
  | 'terminal_reader_invalid_location_for_activation'
962
1040
  | 'terminal_reader_invalid_location_for_payment'
@@ -1017,6 +1095,11 @@ declare module 'stripe' {
1017
1095
  */
1018
1096
  customer_balance: PaymentMethodOptions.CustomerBalance | null;
1019
1097
 
1098
+ /**
1099
+ * If paying by `id_bank_transfer`, this sub-hash contains details about the Indonesia bank transfer payment method options to pass to the invoice's PaymentIntent.
1100
+ */
1101
+ id_bank_transfer?: PaymentMethodOptions.IdBankTransfer | null;
1102
+
1020
1103
  /**
1021
1104
  * If paying by `konbini`, this sub-hash contains details about the Konbini payment method options to pass to the invoice's PaymentIntent.
1022
1105
  */
@@ -1122,6 +1205,8 @@ declare module 'stripe' {
1122
1205
  }
1123
1206
  }
1124
1207
 
1208
+ interface IdBankTransfer {}
1209
+
1125
1210
  interface Konbini {}
1126
1211
 
1127
1212
  interface SepaDebit {}
@@ -1156,6 +1241,11 @@ declare module 'stripe' {
1156
1241
  * The account subcategories to use to filter for possible accounts to link. Valid subcategories are `checking` and `savings`.
1157
1242
  */
1158
1243
  account_subcategories?: Array<Filters.AccountSubcategory>;
1244
+
1245
+ /**
1246
+ * The institution to use to filter for possible accounts to link.
1247
+ */
1248
+ institution?: string;
1159
1249
  }
1160
1250
 
1161
1251
  namespace Filters {
@@ -1168,7 +1258,11 @@ declare module 'stripe' {
1168
1258
  | 'payment_method'
1169
1259
  | 'transactions';
1170
1260
 
1171
- type Prefetch = 'balances' | 'ownership' | 'transactions';
1261
+ type Prefetch =
1262
+ | 'balances'
1263
+ | 'inferred_balances'
1264
+ | 'ownership'
1265
+ | 'transactions';
1172
1266
  }
1173
1267
 
1174
1268
  type VerificationMethod = 'automatic' | 'instant' | 'microdeposits';
@@ -1186,11 +1280,13 @@ declare module 'stripe' {
1186
1280
  | 'boleto'
1187
1281
  | 'card'
1188
1282
  | 'cashapp'
1283
+ | 'custom'
1189
1284
  | 'customer_balance'
1190
1285
  | 'eps'
1191
1286
  | 'fpx'
1192
1287
  | 'giropay'
1193
1288
  | 'grabpay'
1289
+ | 'id_bank_transfer'
1194
1290
  | 'ideal'
1195
1291
  | 'jp_credit_transfer'
1196
1292
  | 'kakao_pay'
@@ -1374,6 +1470,29 @@ declare module 'stripe' {
1374
1470
  * *Note: This attribute is populated only for invoices created on or after June 29, 2023.*
1375
1471
  */
1376
1472
  metadata: Stripe.Metadata | null;
1473
+
1474
+ /**
1475
+ * If specified, payment collection for this subscription will be paused. Note that the subscription status will be unchanged and will not be updated to `paused`. Learn more about [pausing collection](https://stripe.com/billing/subscriptions/pause-payment).
1476
+ */
1477
+ pause_collection?: SubscriptionDetails.PauseCollection | null;
1478
+ }
1479
+
1480
+ namespace SubscriptionDetails {
1481
+ interface PauseCollection {
1482
+ /**
1483
+ * The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
1484
+ */
1485
+ behavior: PauseCollection.Behavior;
1486
+
1487
+ /**
1488
+ * The time after which the subscription will resume collecting payments.
1489
+ */
1490
+ resumes_at: number | null;
1491
+ }
1492
+
1493
+ namespace PauseCollection {
1494
+ type Behavior = 'keep_as_draft' | 'mark_uncollectible' | 'void';
1495
+ }
1377
1496
  }
1378
1497
 
1379
1498
  interface ThresholdReason {
@@ -1414,6 +1533,18 @@ declare module 'stripe' {
1414
1533
  discount: string | Stripe.Discount | Stripe.DeletedDiscount;
1415
1534
  }
1416
1535
 
1536
+ interface TotalMarginAmount {
1537
+ /**
1538
+ * The amount, in cents (or local equivalent), of the reduction in line item amount.
1539
+ */
1540
+ amount: number;
1541
+
1542
+ /**
1543
+ * The margin that was applied to get this margin amount.
1544
+ */
1545
+ margin: string | Stripe.Margin;
1546
+ }
1547
+
1417
1548
  interface TotalPretaxCreditAmount {
1418
1549
  /**
1419
1550
  * The amount, in cents (or local equivalent), of the pretax credit amount.
@@ -1433,6 +1564,11 @@ declare module 'stripe' {
1433
1564
  */
1434
1565
  discount?: string | Stripe.Discount | Stripe.DeletedDiscount;
1435
1566
 
1567
+ /**
1568
+ * The margin that was applied to get this pretax credit amount.
1569
+ */
1570
+ margin?: string | Stripe.Margin;
1571
+
1436
1572
  /**
1437
1573
  * Type of the pretax credit amount referenced.
1438
1574
  */
@@ -1440,7 +1576,7 @@ declare module 'stripe' {
1440
1576
  }
1441
1577
 
1442
1578
  namespace TotalPretaxCreditAmount {
1443
- type Type = 'credit_balance_transaction' | 'discount';
1579
+ type Type = 'credit_balance_transaction' | 'discount' | 'margin';
1444
1580
  }
1445
1581
 
1446
1582
  interface TotalTaxAmount {