stripe 18.2.1 → 18.3.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 (293) hide show
  1. package/CHANGELOG.md +1243 -14
  2. package/README.md +1 -0
  3. package/VERSION +1 -1
  4. package/cjs/Error.js +91 -1
  5. package/cjs/RequestSender.js +1 -1
  6. package/cjs/apiVersion.js +1 -1
  7. package/cjs/resources/AccountNotices.js +21 -0
  8. package/cjs/resources/BalanceSettings.js +10 -0
  9. package/cjs/resources/Capital/FinancingOffers.js +21 -0
  10. package/cjs/resources/Capital/FinancingSummary.js +12 -0
  11. package/cjs/resources/Capital/FinancingTransactions.js +17 -0
  12. package/cjs/resources/ExternalAccounts.js +23 -0
  13. package/cjs/resources/FinancialConnections/Accounts.js +5 -0
  14. package/cjs/resources/FinancialConnections/Institutions.js +17 -0
  15. package/cjs/resources/FxQuotes.js +15 -0
  16. package/cjs/resources/Issuing/CreditUnderwritingRecords.js +33 -0
  17. package/cjs/resources/Issuing/DisputeSettlementDetails.js +17 -0
  18. package/cjs/resources/Issuing/FraudLiabilityDebits.js +17 -0
  19. package/cjs/resources/Margins.js +22 -0
  20. package/cjs/resources/Orders.js +24 -0
  21. package/cjs/resources/{InvoicePayments.js → PaymentAttemptRecords.js} +4 -4
  22. package/cjs/resources/PaymentIntents.js +13 -0
  23. package/cjs/resources/PaymentRecords.js +29 -0
  24. package/cjs/resources/Privacy/RedactionJobs.js +42 -0
  25. package/cjs/resources/Quotes.js +32 -0
  26. package/cjs/resources/SubscriptionSchedules.js +4 -0
  27. package/cjs/resources/Subscriptions.js +4 -0
  28. package/cjs/resources/Tax/Associations.js +9 -0
  29. package/cjs/resources/Tax/Forms.js +20 -0
  30. package/cjs/resources/Terminal/ReaderCollectedData.js +12 -0
  31. package/cjs/resources/Terminal/Readers.js +8 -0
  32. package/cjs/resources/V2/Core/AccountLinks.js +9 -0
  33. package/cjs/resources/V2/Core/Accounts/Persons.js +29 -0
  34. package/cjs/resources/V2/Core/Accounts.js +25 -0
  35. package/cjs/resources/V2/Core/Vault/GbBankAccounts.js +28 -0
  36. package/cjs/resources/V2/Core/Vault/UsBankAccounts.js +24 -0
  37. package/cjs/resources/V2/MoneyManagement/Adjustments.js +17 -0
  38. package/cjs/resources/V2/MoneyManagement/FinancialAccounts.js +17 -0
  39. package/cjs/resources/V2/MoneyManagement/FinancialAddresses.js +21 -0
  40. package/cjs/resources/V2/MoneyManagement/InboundTransfers.js +21 -0
  41. package/cjs/resources/V2/MoneyManagement/OutboundPaymentQuotes.js +16 -0
  42. package/cjs/resources/V2/MoneyManagement/OutboundPayments.js +25 -0
  43. package/cjs/resources/V2/MoneyManagement/OutboundSetupIntents.js +29 -0
  44. package/cjs/resources/V2/MoneyManagement/OutboundTransfers.js +25 -0
  45. package/cjs/resources/V2/MoneyManagement/PayoutMethods.js +25 -0
  46. package/cjs/resources/V2/MoneyManagement/PayoutMethodsBankAccountSpec.js +12 -0
  47. package/cjs/resources/V2/MoneyManagement/ReceivedCredits.js +17 -0
  48. package/cjs/resources/V2/MoneyManagement/ReceivedDebits.js +17 -0
  49. package/cjs/resources/V2/MoneyManagement/TransactionEntries.js +17 -0
  50. package/cjs/resources/V2/MoneyManagement/Transactions.js +17 -0
  51. package/cjs/resources/V2/Payments/OffSessionPayments.js +25 -0
  52. package/cjs/resources/V2/TestHelpers/FinancialAddresses.js +16 -0
  53. package/cjs/resources.js +98 -10
  54. package/cjs/stripe.core.js +1 -1
  55. package/esm/Error.js +79 -0
  56. package/esm/RequestSender.js +1 -1
  57. package/esm/apiVersion.js +1 -1
  58. package/esm/resources/AccountNotices.js +18 -0
  59. package/esm/resources/BalanceSettings.js +7 -0
  60. package/esm/resources/Capital/FinancingOffers.js +18 -0
  61. package/esm/resources/Capital/FinancingSummary.js +9 -0
  62. package/esm/resources/Capital/FinancingTransactions.js +14 -0
  63. package/esm/resources/ExternalAccounts.js +20 -0
  64. package/esm/resources/FinancialConnections/Accounts.js +5 -0
  65. package/esm/resources/FinancialConnections/Institutions.js +14 -0
  66. package/esm/resources/FxQuotes.js +12 -0
  67. package/esm/resources/Issuing/CreditUnderwritingRecords.js +30 -0
  68. package/esm/resources/Issuing/DisputeSettlementDetails.js +14 -0
  69. package/esm/resources/Issuing/FraudLiabilityDebits.js +14 -0
  70. package/esm/resources/Margins.js +19 -0
  71. package/esm/resources/Orders.js +21 -0
  72. package/esm/resources/{InvoicePayments.js → PaymentAttemptRecords.js} +3 -3
  73. package/esm/resources/PaymentIntents.js +13 -0
  74. package/esm/resources/PaymentRecords.js +26 -0
  75. package/esm/resources/Privacy/RedactionJobs.js +39 -0
  76. package/esm/resources/Quotes.js +32 -0
  77. package/esm/resources/SubscriptionSchedules.js +4 -0
  78. package/esm/resources/Subscriptions.js +4 -0
  79. package/esm/resources/Tax/Associations.js +6 -0
  80. package/esm/resources/Tax/Forms.js +17 -0
  81. package/esm/resources/Terminal/ReaderCollectedData.js +9 -0
  82. package/esm/resources/Terminal/Readers.js +8 -0
  83. package/esm/resources/V2/Core/AccountLinks.js +6 -0
  84. package/esm/resources/V2/Core/Accounts/Persons.js +26 -0
  85. package/esm/resources/V2/Core/Accounts.js +22 -0
  86. package/esm/resources/V2/Core/Vault/GbBankAccounts.js +25 -0
  87. package/esm/resources/V2/Core/Vault/UsBankAccounts.js +21 -0
  88. package/esm/resources/V2/MoneyManagement/Adjustments.js +14 -0
  89. package/esm/resources/V2/MoneyManagement/FinancialAccounts.js +14 -0
  90. package/esm/resources/V2/MoneyManagement/FinancialAddresses.js +18 -0
  91. package/esm/resources/V2/MoneyManagement/InboundTransfers.js +18 -0
  92. package/esm/resources/V2/MoneyManagement/OutboundPaymentQuotes.js +13 -0
  93. package/esm/resources/V2/MoneyManagement/OutboundPayments.js +22 -0
  94. package/esm/resources/V2/MoneyManagement/OutboundSetupIntents.js +26 -0
  95. package/esm/resources/V2/MoneyManagement/OutboundTransfers.js +22 -0
  96. package/esm/resources/V2/MoneyManagement/PayoutMethods.js +22 -0
  97. package/esm/resources/V2/MoneyManagement/PayoutMethodsBankAccountSpec.js +9 -0
  98. package/esm/resources/V2/MoneyManagement/ReceivedCredits.js +14 -0
  99. package/esm/resources/V2/MoneyManagement/ReceivedDebits.js +14 -0
  100. package/esm/resources/V2/MoneyManagement/TransactionEntries.js +14 -0
  101. package/esm/resources/V2/MoneyManagement/Transactions.js +14 -0
  102. package/esm/resources/V2/Payments/OffSessionPayments.js +22 -0
  103. package/esm/resources/V2/TestHelpers/FinancialAddresses.js +13 -0
  104. package/esm/resources.js +82 -1
  105. package/esm/stripe.core.js +1 -1
  106. package/package.json +1 -1
  107. package/types/AccountLinksResource.d.ts +5 -1
  108. package/types/AccountNotices.d.ts +113 -0
  109. package/types/AccountNoticesResource.d.ts +98 -0
  110. package/types/AccountSessions.d.ts +45 -0
  111. package/types/AccountSessionsResource.d.ts +264 -0
  112. package/types/Accounts.d.ts +212 -1
  113. package/types/AccountsResource.d.ts +544 -0
  114. package/types/BalanceSettings.d.ts +89 -0
  115. package/types/BalanceSettingsResource.d.ts +108 -0
  116. package/types/Billing/CreditBalanceSummary.d.ts +5 -0
  117. package/types/Billing/CreditBalanceSummaryResource.d.ts +8 -3
  118. package/types/Billing/CreditBalanceTransactionsResource.d.ts +12 -4
  119. package/types/Billing/CreditGrants.d.ts +5 -0
  120. package/types/Billing/CreditGrantsResource.d.ts +11 -1
  121. package/types/BillingPortal/Sessions.d.ts +5 -0
  122. package/types/BillingPortal/SessionsResource.d.ts +12 -4
  123. package/types/Capital/FinancingOffers.d.ts +188 -0
  124. package/types/Capital/FinancingOffersResource.d.ts +97 -0
  125. package/types/Capital/FinancingSummary.d.ts +106 -0
  126. package/types/Capital/FinancingSummaryResource.d.ts +27 -0
  127. package/types/Capital/FinancingTransactions.d.ts +135 -0
  128. package/types/Capital/FinancingTransactionsResource.d.ts +68 -0
  129. package/types/Cards.d.ts +5 -0
  130. package/types/CashBalances.d.ts +5 -0
  131. package/types/Charges.d.ts +166 -0
  132. package/types/ChargesResource.d.ts +1406 -0
  133. package/types/Checkout/Sessions.d.ts +314 -1
  134. package/types/Checkout/SessionsResource.d.ts +340 -1
  135. package/types/ConfirmationTokens.d.ts +125 -0
  136. package/types/Coupons.d.ts +33 -0
  137. package/types/CouponsResource.d.ts +21 -0
  138. package/types/CreditNoteLineItems.d.ts +17 -0
  139. package/types/CreditNotes.d.ts +5 -0
  140. package/types/CreditNotesResource.d.ts +5 -0
  141. package/types/CustomerBalanceTransactions.d.ts +2 -0
  142. package/types/CustomerCashBalanceTransactions.d.ts +2 -0
  143. package/types/CustomerSessions.d.ts +5 -0
  144. package/types/CustomerSessionsResource.d.ts +6 -1
  145. package/types/Customers.d.ts +2 -0
  146. package/types/CustomersResource.d.ts +8 -0
  147. package/types/Discounts.d.ts +10 -0
  148. package/types/Errors.d.ts +69 -2
  149. package/types/EventTypes.d.ts +681 -0
  150. package/types/Events.d.ts +98 -0
  151. package/types/ExternalAccountsResource.d.ts +304 -0
  152. package/types/FinancialConnections/AccountInferredBalances.d.ts +38 -0
  153. package/types/FinancialConnections/Accounts.d.ts +36 -1
  154. package/types/FinancialConnections/AccountsResource.d.ts +40 -3
  155. package/types/FinancialConnections/Institutions.d.ts +98 -0
  156. package/types/FinancialConnections/InstitutionsResource.d.ts +47 -0
  157. package/types/FinancialConnections/Sessions.d.ts +51 -1
  158. package/types/FinancialConnections/SessionsResource.d.ts +43 -1
  159. package/types/FxQuotes.d.ts +153 -0
  160. package/types/FxQuotesResource.d.ts +130 -0
  161. package/types/Identity/VerificationSessions.d.ts +5 -0
  162. package/types/Identity/VerificationSessionsResource.d.ts +7 -0
  163. package/types/InvoiceItems.d.ts +10 -0
  164. package/types/InvoiceItemsResource.d.ts +117 -6
  165. package/types/InvoiceLineItems.d.ts +45 -1
  166. package/types/InvoicePayments.d.ts +5 -0
  167. package/types/Invoices.d.ts +133 -3
  168. package/types/InvoicesResource.d.ts +1458 -13
  169. package/types/Issuing/CardholdersResource.d.ts +2 -1
  170. package/types/Issuing/CreditUnderwritingRecords.d.ts +451 -0
  171. package/types/Issuing/CreditUnderwritingRecordsResource.d.ts +1032 -0
  172. package/types/Issuing/DisputeSettlementDetails.d.ts +85 -0
  173. package/types/Issuing/DisputeSettlementDetailsResource.d.ts +52 -0
  174. package/types/Issuing/FraudLiabilityDebits.d.ts +52 -0
  175. package/types/Issuing/FraudLiabilityDebitsResource.d.ts +52 -0
  176. package/types/Issuing/Settlements.d.ts +113 -0
  177. package/types/Issuing/Transactions.d.ts +5 -0
  178. package/types/Issuing/TransactionsResource.d.ts +5 -0
  179. package/types/LineItems.d.ts +49 -0
  180. package/types/Mandates.d.ts +77 -0
  181. package/types/Margins.d.ts +56 -0
  182. package/types/MarginsResource.d.ts +114 -0
  183. package/types/Orders.d.ts +1159 -0
  184. package/types/OrdersResource.d.ts +2967 -0
  185. package/types/PaymentAttemptRecords.d.ts +2132 -0
  186. package/types/PaymentAttemptRecordsResource.d.ts +47 -0
  187. package/types/PaymentIntentAmountDetailsLineItems.d.ts +116 -0
  188. package/types/PaymentIntents.d.ts +764 -2
  189. package/types/PaymentIntentsResource.d.ts +8819 -4111
  190. package/types/PaymentLinks.d.ts +6 -0
  191. package/types/PaymentLinksResource.d.ts +12 -0
  192. package/types/PaymentMethodConfigurations.d.ts +180 -0
  193. package/types/PaymentMethodConfigurationsResource.d.ts +250 -0
  194. package/types/PaymentMethods.d.ts +125 -0
  195. package/types/PaymentMethodsResource.d.ts +167 -2
  196. package/types/PaymentRecords.d.ts +2125 -0
  197. package/types/PaymentRecordsResource.d.ts +455 -0
  198. package/types/Payouts.d.ts +5 -0
  199. package/types/PayoutsResource.d.ts +5 -0
  200. package/types/Prices.d.ts +22 -0
  201. package/types/PricesResource.d.ts +22 -0
  202. package/types/Privacy/RedactionJobValidationErrors.d.ts +60 -0
  203. package/types/Privacy/RedactionJobs.d.ts +111 -0
  204. package/types/Privacy/RedactionJobsResource.d.ts +230 -0
  205. package/types/PromotionCodes.d.ts +5 -0
  206. package/types/PromotionCodesResource.d.ts +10 -0
  207. package/types/QuoteLines.d.ts +634 -0
  208. package/types/QuotePreviewInvoices.d.ts +1695 -0
  209. package/types/QuotePreviewSubscriptionSchedules.d.ts +831 -0
  210. package/types/Quotes.d.ts +603 -1
  211. package/types/QuotesResource.d.ts +2572 -218
  212. package/types/Refunds.d.ts +14 -0
  213. package/types/SetupAttempts.d.ts +47 -1
  214. package/types/SetupIntents.d.ts +118 -2
  215. package/types/SetupIntentsResource.d.ts +730 -3
  216. package/types/Sources.d.ts +29 -0
  217. package/types/SubscriptionItems.d.ts +30 -0
  218. package/types/SubscriptionItemsResource.d.ts +109 -0
  219. package/types/SubscriptionSchedules.d.ts +212 -0
  220. package/types/SubscriptionSchedulesResource.d.ts +1240 -5
  221. package/types/Subscriptions.d.ts +116 -1
  222. package/types/SubscriptionsResource.d.ts +424 -10
  223. package/types/Tax/Associations.d.ts +82 -0
  224. package/types/Tax/AssociationsResource.d.ts +29 -0
  225. package/types/Tax/Forms.d.ts +220 -0
  226. package/types/Tax/FormsResource.d.ts +107 -0
  227. package/types/TaxIds.d.ts +10 -0
  228. package/types/TaxIdsResource.d.ts +10 -0
  229. package/types/Terminal/ReaderCollectedData.d.ts +51 -0
  230. package/types/Terminal/ReaderCollectedDataResource.d.ts +29 -0
  231. package/types/Terminal/Readers.d.ts +102 -0
  232. package/types/Terminal/ReadersResource.d.ts +96 -0
  233. package/types/TestHelpers/ConfirmationTokensResource.d.ts +126 -0
  234. package/types/TestHelpers/Treasury/ReceivedCreditsResource.d.ts +26 -0
  235. package/types/TestHelpers/Treasury/ReceivedDebitsResource.d.ts +26 -0
  236. package/types/Transfers.d.ts +5 -0
  237. package/types/TransfersResource.d.ts +5 -0
  238. package/types/Treasury/FinancialAccountFeatures.d.ts +7 -0
  239. package/types/Treasury/FinancialAccounts.d.ts +5 -0
  240. package/types/Treasury/FinancialAccountsResource.d.ts +37 -0
  241. package/types/Treasury/OutboundTransfers.d.ts +26 -0
  242. package/types/Treasury/OutboundTransfersResource.d.ts +26 -0
  243. package/types/Treasury/ReceivedCredits.d.ts +26 -0
  244. package/types/Treasury/ReceivedDebits.d.ts +31 -0
  245. package/types/V2/Core/AccountLinks.d.ts +106 -0
  246. package/types/V2/Core/AccountLinksResource.d.ts +90 -0
  247. package/types/V2/Core/Accounts/PersonsResource.d.ts +3770 -0
  248. package/types/V2/Core/Accounts.d.ts +8169 -0
  249. package/types/V2/Core/AccountsResource.d.ts +10203 -0
  250. package/types/V2/Core/Persons.d.ts +1867 -0
  251. package/types/V2/Core/Vault/GbBankAccounts.d.ts +160 -0
  252. package/types/V2/Core/Vault/GbBankAccountsResource.d.ts +172 -0
  253. package/types/V2/Core/Vault/UsBankAccounts.d.ts +70 -0
  254. package/types/V2/Core/Vault/UsBankAccountsResource.d.ts +123 -0
  255. package/types/V2/EventTypes.d.ts +907 -5
  256. package/types/V2/FinancialAddressCreditSimulations.d.ts +27 -0
  257. package/types/V2/FinancialAddressGeneratedMicrodeposits.d.ts +32 -0
  258. package/types/V2/MoneyManagement/Adjustments.d.ts +110 -0
  259. package/types/V2/MoneyManagement/AdjustmentsResource.d.ts +83 -0
  260. package/types/V2/MoneyManagement/FinancialAccounts.d.ts +546 -0
  261. package/types/V2/MoneyManagement/FinancialAccountsResource.d.ts +52 -0
  262. package/types/V2/MoneyManagement/FinancialAddresses.d.ts +314 -0
  263. package/types/V2/MoneyManagement/FinancialAddressesResource.d.ts +288 -0
  264. package/types/V2/MoneyManagement/InboundTransfers.d.ts +206 -0
  265. package/types/V2/MoneyManagement/InboundTransfersResource.d.ts +144 -0
  266. package/types/V2/MoneyManagement/OutboundPaymentQuotes.d.ts +168 -0
  267. package/types/V2/MoneyManagement/OutboundPaymentQuotesResource.d.ts +115 -0
  268. package/types/V2/MoneyManagement/OutboundPayments.d.ts +278 -0
  269. package/types/V2/MoneyManagement/OutboundPaymentsResource.d.ts +242 -0
  270. package/types/V2/MoneyManagement/OutboundSetupIntents.d.ts +97 -0
  271. package/types/V2/MoneyManagement/OutboundSetupIntentsResource.d.ts +296 -0
  272. package/types/V2/MoneyManagement/OutboundTransfers.d.ts +251 -0
  273. package/types/V2/MoneyManagement/OutboundTransfersResource.d.ts +207 -0
  274. package/types/V2/MoneyManagement/PayoutMethods.d.ts +151 -0
  275. package/types/V2/MoneyManagement/PayoutMethodsBankAccountSpecResource.d.ts +41 -0
  276. package/types/V2/MoneyManagement/PayoutMethodsBankAccountSpecs.d.ts +87 -0
  277. package/types/V2/MoneyManagement/PayoutMethodsResource.d.ts +113 -0
  278. package/types/V2/MoneyManagement/ReceivedCredits.d.ts +243 -0
  279. package/types/V2/MoneyManagement/ReceivedCreditsResource.d.ts +78 -0
  280. package/types/V2/MoneyManagement/ReceivedDebits.d.ts +176 -0
  281. package/types/V2/MoneyManagement/ReceivedDebitsResource.d.ts +48 -0
  282. package/types/V2/MoneyManagement/TransactionEntries.d.ts +155 -0
  283. package/types/V2/MoneyManagement/TransactionEntriesResource.d.ts +82 -0
  284. package/types/V2/MoneyManagement/Transactions.d.ts +170 -0
  285. package/types/V2/MoneyManagement/TransactionsResource.d.ts +83 -0
  286. package/types/V2/Payments/OffSessionPayments.d.ts +162 -0
  287. package/types/V2/Payments/OffSessionPaymentsResource.d.ts +159 -0
  288. package/types/V2/TestHelpers/FinancialAddressesResource.d.ts +66 -0
  289. package/types/WebhookEndpointsResource.d.ts +80 -0
  290. package/types/index.d.ts +141 -5
  291. package/types/lib.d.ts +11 -1
  292. package/types/test/typescriptTest.ts +3 -3
  293. package/types/InvoicePaymentsResource.d.ts +0 -74
@@ -105,6 +105,8 @@ declare module 'stripe' {
105
105
 
106
106
  p24?: Source.P24;
107
107
 
108
+ paypal?: Source.Paypal;
109
+
108
110
  receiver?: Source.Receiver;
109
111
 
110
112
  redirect?: Source.Redirect;
@@ -236,6 +238,8 @@ declare module 'stripe' {
236
238
 
237
239
  brand?: string | null;
238
240
 
241
+ brand_product?: string | null;
242
+
239
243
  country?: string | null;
240
244
 
241
245
  cvc_check?: string | null;
@@ -276,6 +280,8 @@ declare module 'stripe' {
276
280
 
277
281
  brand?: string | null;
278
282
 
283
+ brand_product?: string | null;
284
+
279
285
  country?: string | null;
280
286
 
281
287
  cvm_type?: string;
@@ -479,6 +485,26 @@ declare module 'stripe' {
479
485
  reference?: string | null;
480
486
  }
481
487
 
488
+ interface Paypal {
489
+ billing_agreement?: string | null;
490
+
491
+ fingerprint?: string | null;
492
+
493
+ payer_id?: string | null;
494
+
495
+ reference_id?: string;
496
+
497
+ reference_transaction_amount?: string;
498
+
499
+ reference_transaction_charged?: boolean;
500
+
501
+ statement_descriptor?: string | null;
502
+
503
+ transaction_id?: string;
504
+
505
+ verified_email?: string | null;
506
+ }
507
+
482
508
  interface Receiver {
483
509
  /**
484
510
  * The address of the receiver source. This is the value that should be communicated to the customer to send their funds to.
@@ -680,6 +706,8 @@ declare module 'stripe' {
680
706
 
681
707
  brand?: string | null;
682
708
 
709
+ brand_product?: string | null;
710
+
683
711
  card?: string | null;
684
712
 
685
713
  country?: string | null;
@@ -728,6 +756,7 @@ declare module 'stripe' {
728
756
  | 'klarna'
729
757
  | 'multibanco'
730
758
  | 'p24'
759
+ | 'paypal'
731
760
  | 'sepa_credit_transfer'
732
761
  | 'sepa_debit'
733
762
  | 'sofort'
@@ -108,6 +108,36 @@ declare module 'stripe' {
108
108
  * The tax rates which apply to this `subscription_item`. When set, the `default_tax_rates` on the subscription do not apply to this `subscription_item`.
109
109
  */
110
110
  tax_rates: Array<Stripe.TaxRate> | null;
111
+
112
+ /**
113
+ * Options that configure the trial on the subscription item.
114
+ */
115
+ trial?: SubscriptionItem.Trial | null;
116
+ }
117
+
118
+ namespace SubscriptionItem {
119
+ interface BillingThresholds {
120
+ /**
121
+ * Usage threshold that triggers the subscription to create an invoice
122
+ */
123
+ usage_gte: number | null;
124
+ }
125
+
126
+ interface Trial {
127
+ /**
128
+ * List of price IDs which, if present on the subscription following a paid trial, constitute opting-in to the paid trial.
129
+ */
130
+ converts_to?: Array<string> | null;
131
+
132
+ /**
133
+ * Determines the type of trial for this item.
134
+ */
135
+ type: Trial.Type;
136
+ }
137
+
138
+ namespace Trial {
139
+ type Type = 'free' | 'paid';
140
+ }
111
141
  }
112
142
 
113
143
  namespace SubscriptionItem {
@@ -77,6 +77,11 @@ declare module 'stripe' {
77
77
  * A list of [Tax Rate](https://stripe.com/docs/api/tax_rates) ids. These Tax Rates will override the [`default_tax_rates`](https://stripe.com/docs/api/subscriptions/create#create_subscription-default_tax_rates) on the Subscription. When updating, pass an empty string to remove previously-defined tax rates.
78
78
  */
79
79
  tax_rates?: Stripe.Emptyable<Array<string>>;
80
+
81
+ /**
82
+ * Options that configure the trial on the subscription item.
83
+ */
84
+ trial?: SubscriptionItemCreateParams.Trial;
80
85
  }
81
86
 
82
87
  namespace SubscriptionItemCreateParams {
@@ -98,12 +103,56 @@ declare module 'stripe' {
98
103
  */
99
104
  discount?: string;
100
105
 
106
+ /**
107
+ * Details to determine how long the discount should be applied for.
108
+ */
109
+ discount_end?: Discount.DiscountEnd;
110
+
101
111
  /**
102
112
  * ID of the promotion code to create a new discount for.
103
113
  */
104
114
  promotion_code?: string;
105
115
  }
106
116
 
117
+ namespace Discount {
118
+ interface DiscountEnd {
119
+ /**
120
+ * Time span for the redeemed discount.
121
+ */
122
+ duration?: DiscountEnd.Duration;
123
+
124
+ /**
125
+ * A precise Unix timestamp for the discount to end. Must be in the future.
126
+ */
127
+ timestamp?: number;
128
+
129
+ /**
130
+ * The type of calculation made to determine when the discount ends.
131
+ */
132
+ type: DiscountEnd.Type;
133
+ }
134
+
135
+ namespace DiscountEnd {
136
+ interface Duration {
137
+ /**
138
+ * Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
139
+ */
140
+ interval: Duration.Interval;
141
+
142
+ /**
143
+ * The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
144
+ */
145
+ interval_count: number;
146
+ }
147
+
148
+ namespace Duration {
149
+ type Interval = 'day' | 'month' | 'week' | 'year';
150
+ }
151
+
152
+ type Type = 'duration' | 'timestamp';
153
+ }
154
+ }
155
+
107
156
  type PaymentBehavior =
108
157
  | 'allow_incomplete'
109
158
  | 'default_incomplete'
@@ -163,6 +212,22 @@ declare module 'stripe' {
163
212
  }
164
213
 
165
214
  type ProrationBehavior = 'always_invoice' | 'create_prorations' | 'none';
215
+
216
+ interface Trial {
217
+ /**
218
+ * List of price IDs which, if present on the subscription following a paid trial, constitute opting-in to the paid trial. Currently only supports at most 1 price ID.
219
+ */
220
+ converts_to?: Array<string>;
221
+
222
+ /**
223
+ * Determines the type of trial for this item.
224
+ */
225
+ type: Trial.Type;
226
+ }
227
+
228
+ namespace Trial {
229
+ type Type = 'free' | 'paid';
230
+ }
166
231
  }
167
232
 
168
233
  interface SubscriptionItemRetrieveParams {
@@ -268,12 +333,56 @@ declare module 'stripe' {
268
333
  */
269
334
  discount?: string;
270
335
 
336
+ /**
337
+ * Details to determine how long the discount should be applied for.
338
+ */
339
+ discount_end?: Discount.DiscountEnd;
340
+
271
341
  /**
272
342
  * ID of the promotion code to create a new discount for.
273
343
  */
274
344
  promotion_code?: string;
275
345
  }
276
346
 
347
+ namespace Discount {
348
+ interface DiscountEnd {
349
+ /**
350
+ * Time span for the redeemed discount.
351
+ */
352
+ duration?: DiscountEnd.Duration;
353
+
354
+ /**
355
+ * A precise Unix timestamp for the discount to end. Must be in the future.
356
+ */
357
+ timestamp?: number;
358
+
359
+ /**
360
+ * The type of calculation made to determine when the discount ends.
361
+ */
362
+ type: DiscountEnd.Type;
363
+ }
364
+
365
+ namespace DiscountEnd {
366
+ interface Duration {
367
+ /**
368
+ * Specifies a type of interval unit. Either `day`, `week`, `month` or `year`.
369
+ */
370
+ interval: Duration.Interval;
371
+
372
+ /**
373
+ * The number of intervals, as an whole number greater than 0. Stripe multiplies this by the interval type to get the overall duration.
374
+ */
375
+ interval_count: number;
376
+ }
377
+
378
+ namespace Duration {
379
+ type Interval = 'day' | 'month' | 'week' | 'year';
380
+ }
381
+
382
+ type Type = 'duration' | 'timestamp';
383
+ }
384
+ }
385
+
277
386
  type PaymentBehavior =
278
387
  | 'allow_incomplete'
279
388
  | 'default_incomplete'
@@ -27,6 +27,16 @@ declare module 'stripe' {
27
27
  | Stripe.DeletedApplication
28
28
  | null;
29
29
 
30
+ /**
31
+ * Configures when the subscription schedule generates prorations for phase transitions. Possible values are `prorate_on_next_phase` or `prorate_up_front` with the default being `prorate_on_next_phase`. `prorate_on_next_phase` will apply phase changes and generate prorations at transition time. `prorate_up_front` will bill for all phases within the current billing cycle up front.
32
+ */
33
+ billing_behavior?: SubscriptionSchedule.BillingBehavior;
34
+
35
+ /**
36
+ * The [billing mode](https://docs.stripe.com/api/subscriptions/create#create_subscription-billing_mode) that will be used to process all future operations for the subscription schedule.
37
+ */
38
+ billing_mode?: SubscriptionSchedule.BillingMode;
39
+
30
40
  /**
31
41
  * Time at which the subscription schedule was canceled. Measured in seconds since the Unix epoch.
32
42
  */
@@ -52,6 +62,11 @@ declare module 'stripe' {
52
62
  */
53
63
  customer: string | Stripe.Customer | Stripe.DeletedCustomer;
54
64
 
65
+ /**
66
+ * ID of the account who owns the subscription schedule.
67
+ */
68
+ customer_account?: string | null;
69
+
55
70
  default_settings: SubscriptionSchedule.DefaultSettings;
56
71
 
57
72
  /**
@@ -59,6 +74,11 @@ declare module 'stripe' {
59
74
  */
60
75
  end_behavior: SubscriptionSchedule.EndBehavior;
61
76
 
77
+ /**
78
+ * Details of the most recent price migration that failed for the subscription schedule.
79
+ */
80
+ last_price_migration_error?: SubscriptionSchedule.LastPriceMigrationError | null;
81
+
62
82
  /**
63
83
  * Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
64
84
  */
@@ -74,6 +94,11 @@ declare module 'stripe' {
74
94
  */
75
95
  phases: Array<SubscriptionSchedule.Phase>;
76
96
 
97
+ /**
98
+ * Time period and invoice for a Subscription billed in advance.
99
+ */
100
+ prebilling?: SubscriptionSchedule.Prebilling | null;
101
+
77
102
  /**
78
103
  * Time at which the subscription schedule was released. Measured in seconds since the Unix epoch.
79
104
  */
@@ -101,6 +126,10 @@ declare module 'stripe' {
101
126
  }
102
127
 
103
128
  namespace SubscriptionSchedule {
129
+ type BillingBehavior = 'prorate_on_next_phase' | 'prorate_up_front';
130
+
131
+ type BillingMode = 'classic' | 'flexible';
132
+
104
133
  interface CurrentPhase {
105
134
  /**
106
135
  * The end of this phase of the subscription schedule.
@@ -260,6 +289,37 @@ declare module 'stripe' {
260
289
 
261
290
  type EndBehavior = 'cancel' | 'none' | 'release' | 'renew';
262
291
 
292
+ interface LastPriceMigrationError {
293
+ /**
294
+ * The time at which the price migration encountered an error.
295
+ */
296
+ errored_at: number;
297
+
298
+ /**
299
+ * The involved price pairs in each failed transition.
300
+ */
301
+ failed_transitions: Array<LastPriceMigrationError.FailedTransition>;
302
+
303
+ /**
304
+ * The type of error encountered by the price migration.
305
+ */
306
+ type: 'price_uniqueness_violation';
307
+ }
308
+
309
+ namespace LastPriceMigrationError {
310
+ interface FailedTransition {
311
+ /**
312
+ * The original price to be migrated.
313
+ */
314
+ source_price: string;
315
+
316
+ /**
317
+ * The intended resulting price of the migration.
318
+ */
319
+ target_price: string;
320
+ }
321
+ }
322
+
263
323
  interface Phase {
264
324
  /**
265
325
  * A list of prices and quantities that will generate invoice items appended to the next invoice for this phase.
@@ -338,6 +398,11 @@ declare module 'stripe' {
338
398
  */
339
399
  on_behalf_of: string | Stripe.Account | null;
340
400
 
401
+ /**
402
+ * 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/docs/billing/subscriptions/pause-payment).
403
+ */
404
+ pause_collection?: Phase.PauseCollection | null;
405
+
341
406
  /**
342
407
  * When transitioning phases, controls how prorations are handled (if any). Possible values are `create_prorations`, `none`, and `always_invoice`.
343
408
  */
@@ -353,10 +418,20 @@ declare module 'stripe' {
353
418
  */
354
419
  transfer_data: Phase.TransferData | null;
355
420
 
421
+ /**
422
+ * Specify behavior of the trial when crossing schedule phase boundaries
423
+ */
424
+ trial_continuation?: Phase.TrialContinuation | null;
425
+
356
426
  /**
357
427
  * When the trial ends within the phase.
358
428
  */
359
429
  trial_end: number | null;
430
+
431
+ /**
432
+ * Settings related to any trials on the subscription during this phase.
433
+ */
434
+ trial_settings?: Phase.TrialSettings | null;
360
435
  }
361
436
 
362
437
  namespace Phase {
@@ -394,11 +469,30 @@ declare module 'stripe' {
394
469
  */
395
470
  discount: string | Stripe.Discount | null;
396
471
 
472
+ /**
473
+ * Details to determine how long the discount should be applied for.
474
+ */
475
+ discount_end?: Discount.DiscountEnd | null;
476
+
397
477
  /**
398
478
  * ID of the promotion code to create a new discount for.
399
479
  */
400
480
  promotion_code: string | Stripe.PromotionCode | null;
401
481
  }
482
+
483
+ namespace Discount {
484
+ interface DiscountEnd {
485
+ /**
486
+ * The discount end timestamp.
487
+ */
488
+ timestamp: number | null;
489
+
490
+ /**
491
+ * The discount end type.
492
+ */
493
+ type: 'timestamp';
494
+ }
495
+ }
402
496
  }
403
497
 
404
498
  interface AutomaticTax {
@@ -463,12 +557,31 @@ declare module 'stripe' {
463
557
  */
464
558
  discount: string | Stripe.Discount | null;
465
559
 
560
+ /**
561
+ * Details to determine how long the discount should be applied for.
562
+ */
563
+ discount_end?: Discount.DiscountEnd | null;
564
+
466
565
  /**
467
566
  * ID of the promotion code to create a new discount for.
468
567
  */
469
568
  promotion_code: string | Stripe.PromotionCode | null;
470
569
  }
471
570
 
571
+ namespace Discount {
572
+ interface DiscountEnd {
573
+ /**
574
+ * The discount end timestamp.
575
+ */
576
+ timestamp: number | null;
577
+
578
+ /**
579
+ * The discount end type.
580
+ */
581
+ type: 'timestamp';
582
+ }
583
+ }
584
+
472
585
  interface InvoiceSettings {
473
586
  /**
474
587
  * The account tax IDs associated with this phase of the subscription schedule. Will be set on invoices generated by this phase of the subscription schedule.
@@ -541,6 +654,11 @@ declare module 'stripe' {
541
654
  * The tax rates which apply to this `phase_item`. When set, the `default_tax_rates` on the phase do not apply to this `phase_item`.
542
655
  */
543
656
  tax_rates?: Array<Stripe.TaxRate> | null;
657
+
658
+ /**
659
+ * Options that configure the trial on the subscription item.
660
+ */
661
+ trial?: Item.Trial | null;
544
662
  }
545
663
 
546
664
  namespace Item {
@@ -562,11 +680,57 @@ declare module 'stripe' {
562
680
  */
563
681
  discount: string | Stripe.Discount | null;
564
682
 
683
+ /**
684
+ * Details to determine how long the discount should be applied for.
685
+ */
686
+ discount_end?: Discount.DiscountEnd | null;
687
+
565
688
  /**
566
689
  * ID of the promotion code to create a new discount for.
567
690
  */
568
691
  promotion_code: string | Stripe.PromotionCode | null;
569
692
  }
693
+
694
+ namespace Discount {
695
+ interface DiscountEnd {
696
+ /**
697
+ * The discount end timestamp.
698
+ */
699
+ timestamp: number | null;
700
+
701
+ /**
702
+ * The discount end type.
703
+ */
704
+ type: 'timestamp';
705
+ }
706
+ }
707
+
708
+ interface Trial {
709
+ /**
710
+ * List of price IDs which, if present on the subscription following a paid trial, constitute opting-in to the paid trial.
711
+ */
712
+ converts_to?: Array<string> | null;
713
+
714
+ /**
715
+ * Determines the type of trial for this item.
716
+ */
717
+ type: Trial.Type;
718
+ }
719
+
720
+ namespace Trial {
721
+ type Type = 'free' | 'paid';
722
+ }
723
+ }
724
+
725
+ interface PauseCollection {
726
+ /**
727
+ * The payment collection behavior for this subscription while paused. One of `keep_as_draft`, `mark_uncollectible`, or `void`.
728
+ */
729
+ behavior: PauseCollection.Behavior;
730
+ }
731
+
732
+ namespace PauseCollection {
733
+ type Behavior = 'keep_as_draft' | 'mark_uncollectible' | 'void';
570
734
  }
571
735
 
572
736
  type ProrationBehavior =
@@ -585,6 +749,54 @@ declare module 'stripe' {
585
749
  */
586
750
  destination: string | Stripe.Account;
587
751
  }
752
+
753
+ type TrialContinuation = 'continue' | 'none';
754
+
755
+ interface TrialSettings {
756
+ /**
757
+ * Defines how the subscription should behave when a trial ends.
758
+ */
759
+ end_behavior: TrialSettings.EndBehavior | null;
760
+ }
761
+
762
+ namespace TrialSettings {
763
+ interface EndBehavior {
764
+ /**
765
+ * Configure how an opt-in following a paid trial is billed when using `billing_behavior: prorate_up_front`.
766
+ */
767
+ prorate_up_front: EndBehavior.ProrateUpFront | null;
768
+ }
769
+
770
+ namespace EndBehavior {
771
+ type ProrateUpFront = 'defer' | 'include';
772
+ }
773
+ }
774
+ }
775
+
776
+ interface Prebilling {
777
+ /**
778
+ * ID of the prebilling invoice.
779
+ */
780
+ invoice: string | Stripe.Invoice;
781
+
782
+ /**
783
+ * The end of the last period for which the invoice pre-bills.
784
+ */
785
+ period_end: number;
786
+
787
+ /**
788
+ * The start of the first period for which the invoice pre-bills.
789
+ */
790
+ period_start: number;
791
+
792
+ /**
793
+ * Whether to cancel or preserve `prebilling` if the subscription is updated during the prebilled period.
794
+ */
795
+ update_behavior?: Prebilling.UpdateBehavior;
796
+ }
797
+
798
+ namespace Prebilling {
799
+ type UpdateBehavior = 'prebill' | 'reset';
588
800
  }
589
801
 
590
802
  type Status =