From 7cd066cf92d4238ecb17bdfe14167e86690dd56b Mon Sep 17 00:00:00 2001
From: Drew Powers
Date: Mon, 3 Oct 2022 00:13:42 -0600
Subject: [PATCH 1/2] update example schemas
---
examples/stripe-openapi3.ts | 23847 ++++--
test/bin/expected/paths-enum.ts | 235 +-
test/bin/expected/prettier-js.ts | 234 +-
test/bin/expected/prettier-json.ts | 234 +-
test/bin/expected/specs/no-response.ts | 21 +
test/bin/expected/specs/petstore.ts | 234 +-
test/bin/expected/stdin.ts | 234 +-
test/bin/expected/stdout.ts | 234 +-
test/bin/specs/petstore.yaml | 486 +-
test/v2/specs/stripe.yaml | 2 +-
test/v3/expected/github.additional.ts | 34727 ++++----
test/v3/expected/github.exported-type.ts | 29229 ++++---
test/v3/expected/github.immutable.ts | 29229 ++++---
.../expected/github.support-array-length.ts | 28855 +++----
test/v3/expected/github.ts | 29229 ++++---
test/v3/expected/petstore.additional.ts | 234 +-
test/v3/expected/petstore.exported-type.ts | 234 +-
test/v3/expected/petstore.immutable.ts | 234 +-
.../expected/petstore.support-array-length.ts | 234 +-
test/v3/expected/petstore.ts | 234 +-
test/v3/expected/stripe.additional.ts | 28071 ++++--
test/v3/expected/stripe.exported-type.ts | 26336 ++++--
test/v3/expected/stripe.immutable.ts | 27108 ++++--
.../expected/stripe.support-array-length.ts | 26336 ++++--
test/v3/expected/stripe.ts | 26336 ++++--
test/v3/specs/github.yaml | 71180 ++++++++--------
test/v3/specs/petstore.yaml | 722 +-
test/v3/specs/stripe.yaml | 66047 +++++++++-----
28 files changed, 269620 insertions(+), 180716 deletions(-)
create mode 100644 test/bin/expected/specs/no-response.ts
diff --git a/examples/stripe-openapi3.ts b/examples/stripe-openapi3.ts
index d6f07bc3f..ea5d66585 100644
--- a/examples/stripe-openapi3.ts
+++ b/examples/stripe-openapi3.ts
@@ -4,14 +4,6 @@
*/
export interface paths {
- "/v1/3d_secure": {
- /** Initiate 3D Secure authentication.
*/
- post: operations["Post3dSecure"];
- };
- "/v1/3d_secure/{three_d_secure}": {
- /** Retrieves a 3D Secure object.
*/
- get: operations["Get3dSecureThreeDSecure"];
- };
"/v1/account": {
/** Retrieves the details of an account.
*/
get: operations["GetAccount"];
@@ -278,6 +270,20 @@ export interface paths {
*/
post: operations["PostApplicationFeesIdRefunds"];
};
+ "/v1/apps/secrets": {
+ /** List all secrets stored on the given scope.
*/
+ get: operations["GetAppsSecrets"];
+ /** Create or replace a secret in the secret store.
*/
+ post: operations["PostAppsSecrets"];
+ };
+ "/v1/apps/secrets/delete": {
+ /** Deletes a secret from the secret store by name and scope.
*/
+ post: operations["PostAppsSecretsDelete"];
+ };
+ "/v1/apps/secrets/find": {
+ /** Finds a secret in the secret store by name and scope.
*/
+ get: operations["GetAppsSecretsFind"];
+ };
"/v1/balance": {
/**
* Retrieves the current account balance, based on the authentication that was used to make the request.
@@ -333,28 +339,21 @@ export interface paths {
/**
Creates a session of the customer portal.
*/
post: operations["PostBillingPortalSessions"];
};
- "/v1/bitcoin/receivers": {
- /** Returns a list of your receivers. Receivers are returned sorted by creation date, with the most recently created receivers appearing first.
*/
- get: operations["GetBitcoinReceivers"];
- };
- "/v1/bitcoin/receivers/{id}": {
- /** Retrieves the Bitcoin receiver with the given ID.
*/
- get: operations["GetBitcoinReceiversId"];
- };
- "/v1/bitcoin/receivers/{receiver}/transactions": {
- /** List bitcoin transacitons for a given receiver.
*/
- get: operations["GetBitcoinReceiversReceiverTransactions"];
- };
- "/v1/bitcoin/transactions": {
- /** List bitcoin transacitons for a given receiver.
*/
- get: operations["GetBitcoinTransactions"];
- };
"/v1/charges": {
/** Returns a list of charges you’ve previously created. The charges are returned in sorted order, with the most recent charges appearing first.
*/
get: operations["GetCharges"];
/** To charge a credit card or other payment source, you create a Charge
object. If your API key is in test mode, the supplied payment source (e.g., card) won’t actually be charged, although everything else will occur as if in live mode. (Stripe assumes that the charge would have completed successfully).
*/
post: operations["PostCharges"];
};
+ "/v1/charges/search": {
+ /**
+ * Search for charges you’ve previously created using Stripe’s Search Query Language.
+ * Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating
+ * conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up
+ * to an hour behind during outages. Search functionality is not available to merchants in India.
+ */
+ get: operations["GetChargesSearch"];
+ };
"/v1/charges/{charge}": {
/** Retrieves the details of a charge that has previously been created. Supply the unique charge ID that was returned from your previous request, and Stripe will return the corresponding charge information. The same information is returned when creating or refunding the charge.
*/
get: operations["GetChargesCharge"];
@@ -502,6 +501,15 @@ export interface paths {
/** Creates a new customer object.
*/
post: operations["PostCustomers"];
};
+ "/v1/customers/search": {
+ /**
+ * Search for customers you’ve previously created using Stripe’s Search Query Language.
+ * Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating
+ * conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up
+ * to an hour behind during outages. Search functionality is not available to merchants in India.
+ */
+ get: operations["GetCustomersSearch"];
+ };
"/v1/customers/{customer}": {
/** Retrieves a Customer object.
*/
get: operations["GetCustomersCustomer"];
@@ -574,15 +582,41 @@ export interface paths {
/** Delete a specified source for a given customer.
*/
delete: operations["DeleteCustomersCustomerCardsId"];
};
+ "/v1/customers/{customer}/cash_balance": {
+ /** Retrieves a customer’s cash balance.
*/
+ get: operations["GetCustomersCustomerCashBalance"];
+ /** Changes the settings on a customer’s cash balance.
*/
+ post: operations["PostCustomersCustomerCashBalance"];
+ };
+ "/v1/customers/{customer}/cash_balance_transactions": {
+ /** Returns a list of transactions that modified the customer’s cash balance.
*/
+ get: operations["GetCustomersCustomerCashBalanceTransactions"];
+ };
+ "/v1/customers/{customer}/cash_balance_transactions/{transaction}": {
+ /** Retrieves a specific cash balance transaction, which updated the customer’s cash balance.
*/
+ get: operations["GetCustomersCustomerCashBalanceTransactionsTransaction"];
+ };
"/v1/customers/{customer}/discount": {
get: operations["GetCustomersCustomerDiscount"];
/** Removes the currently applied discount on a customer.
*/
delete: operations["DeleteCustomersCustomerDiscount"];
};
+ "/v1/customers/{customer}/funding_instructions": {
+ /**
+ * Retrieve funding instructions for a customer cash balance. If funding instructions do not yet exist for the customer, new
+ * funding instructions will be created. If funding instructions have already been created for a given customer, the same
+ * funding instructions will be retrieved. In other words, we will return the same funding instructions each time.
+ */
+ post: operations["PostCustomersCustomerFundingInstructions"];
+ };
"/v1/customers/{customer}/payment_methods": {
/** Returns a list of PaymentMethods for a given Customer
*/
get: operations["GetCustomersCustomerPaymentMethods"];
};
+ "/v1/customers/{customer}/payment_methods/{payment_method}": {
+ /** Retrieves a PaymentMethod object for a given Customer.
*/
+ get: operations["GetCustomersCustomerPaymentMethodsPaymentMethod"];
+ };
"/v1/customers/{customer}/sources": {
/** List sources for a specified customer.
*/
get: operations["GetCustomersCustomerSources"];
@@ -716,6 +750,34 @@ export interface paths {
/** Retrieves the details of an existing file object. Supply the unique file ID from a file, and Stripe will return the corresponding file object. To access file contents, see the File Upload Guide.
*/
get: operations["GetFilesFile"];
};
+ "/v1/financial_connections/accounts": {
+ /** Returns a list of Financial Connections Account
objects.
*/
+ get: operations["GetFinancialConnectionsAccounts"];
+ };
+ "/v1/financial_connections/accounts/{account}": {
+ /** Retrieves the details of an Financial Connections Account
.
*/
+ get: operations["GetFinancialConnectionsAccountsAccount"];
+ };
+ "/v1/financial_connections/accounts/{account}/disconnect": {
+ /** Disables your access to a Financial Connections Account
. You will no longer be able to access data associated with the account (e.g. balances, transactions).
*/
+ post: operations["PostFinancialConnectionsAccountsAccountDisconnect"];
+ };
+ "/v1/financial_connections/accounts/{account}/owners": {
+ /** Lists all owners for a given Account
*/
+ get: operations["GetFinancialConnectionsAccountsAccountOwners"];
+ };
+ "/v1/financial_connections/accounts/{account}/refresh": {
+ /** Refreshes the data associated with a Financial Connections Account
.
*/
+ post: operations["PostFinancialConnectionsAccountsAccountRefresh"];
+ };
+ "/v1/financial_connections/sessions": {
+ /** To launch the Financial Connections authorization flow, create a Session
. The session’s client_secret
can be used to launch the flow using Stripe.js.
*/
+ post: operations["PostFinancialConnectionsSessions"];
+ };
+ "/v1/financial_connections/sessions/{session}": {
+ /** Retrieves the details of a Financial Connections Session
*/
+ get: operations["GetFinancialConnectionsSessionsSession"];
+ };
"/v1/identity/verification_reports": {
/** List all verification reports.
*/
get: operations["GetIdentityVerificationReports"];
@@ -803,9 +865,18 @@ export interface paths {
"/v1/invoices": {
/** You can list all invoices, or list the invoices for a specific customer. The invoices are returned sorted by creation date, with the most recently created invoices appearing first.
*/
get: operations["GetInvoices"];
- /** This endpoint creates a draft invoice for a given customer. The draft invoice created pulls in all pending invoice items on that customer, including prorations. The invoice remains a draft until you finalize the invoice, which allows you to pay or send the invoice to your customers.
*/
+ /** This endpoint creates a draft invoice for a given customer. The invoice remains a draft until you finalize the invoice, which allows you to pay or send the invoice to your customers.
*/
post: operations["PostInvoices"];
};
+ "/v1/invoices/search": {
+ /**
+ * Search for invoices you’ve previously created using Stripe’s Search Query Language.
+ * Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating
+ * conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up
+ * to an hour behind during outages. Search functionality is not available to merchants in India.
+ */
+ get: operations["GetInvoicesSearch"];
+ };
"/v1/invoices/upcoming": {
/**
* At any time, you can preview the upcoming invoice for a customer. This will show you all the charges that are pending, including subscription renewal charges, invoice item charges, etc. It will also show you any discounts that are applicable to the invoice.
@@ -863,18 +934,6 @@ export interface paths {
/** Mark a finalized invoice as void. This cannot be undone. Voiding an invoice is similar to deletion, however it only applies to finalized invoices and maintains a papertrail where the invoice can still be found.
*/
post: operations["PostInvoicesInvoiceVoid"];
};
- "/v1/issuer_fraud_records": {
- /** Returns a list of issuer fraud records.
*/
- get: operations["GetIssuerFraudRecords"];
- };
- "/v1/issuer_fraud_records/{issuer_fraud_record}": {
- /**
- * Retrieves the details of an issuer fraud record that has previously been created.
- *
- * Please refer to the issuer fraud record object reference for more details.
- */
- get: operations["GetIssuerFraudRecordsIssuerFraudRecord"];
- };
"/v1/issuing/authorizations": {
/** Returns a list of Issuing Authorization
objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
*/
get: operations["GetIssuingAuthorizations"];
@@ -953,22 +1012,42 @@ export interface paths {
/** Updates the specified Issuing Transaction
object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
*/
post: operations["PostIssuingTransactionsTransaction"];
};
+ "/v1/link_account_sessions": {
+ /** To launch the Financial Connections authorization flow, create a Session
. The session’s client_secret
can be used to launch the flow using Stripe.js.
*/
+ post: operations["PostLinkAccountSessions"];
+ };
+ "/v1/link_account_sessions/{session}": {
+ /** Retrieves the details of a Financial Connections Session
*/
+ get: operations["GetLinkAccountSessionsSession"];
+ };
+ "/v1/linked_accounts": {
+ /** Returns a list of Financial Connections Account
objects.
*/
+ get: operations["GetLinkedAccounts"];
+ };
+ "/v1/linked_accounts/{account}": {
+ /** Retrieves the details of an Financial Connections Account
.
*/
+ get: operations["GetLinkedAccountsAccount"];
+ };
+ "/v1/linked_accounts/{account}/disconnect": {
+ /** Disables your access to a Financial Connections Account
. You will no longer be able to access data associated with the account (e.g. balances, transactions).
*/
+ post: operations["PostLinkedAccountsAccountDisconnect"];
+ };
+ "/v1/linked_accounts/{account}/owners": {
+ /** Lists all owners for a given Account
*/
+ get: operations["GetLinkedAccountsAccountOwners"];
+ };
+ "/v1/linked_accounts/{account}/refresh": {
+ /** Refreshes the data associated with a Financial Connections Account
.
*/
+ post: operations["PostLinkedAccountsAccountRefresh"];
+ };
"/v1/mandates/{mandate}": {
/** Retrieves a Mandate object.
*/
get: operations["GetMandatesMandate"];
};
- "/v1/order_returns": {
- /** Returns a list of your order returns. The returns are returned sorted by creation date, with the most recently created return appearing first.
*/
- get: operations["GetOrderReturns"];
- };
- "/v1/order_returns/{id}": {
- /** Retrieves the details of an existing order return. Supply the unique order ID from either an order return creation request or the order return list, and Stripe will return the corresponding order information.
*/
- get: operations["GetOrderReturnsId"];
- };
"/v1/orders": {
/** Returns a list of your orders. The orders are returned sorted by creation date, with the most recently created orders appearing first.
*/
get: operations["GetOrders"];
- /** Creates a new order object.
*/
+ /** Creates a new open
order object.
*/
post: operations["PostOrders"];
};
"/v1/orders/{id}": {
@@ -977,13 +1056,21 @@ export interface paths {
/** Updates the specific order by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
*/
post: operations["PostOrdersId"];
};
- "/v1/orders/{id}/pay": {
- /** Pay an order by providing a source
to create a payment.
*/
- post: operations["PostOrdersIdPay"];
+ "/v1/orders/{id}/cancel": {
+ /** Cancels the order as well as the payment intent if one is attached.
*/
+ post: operations["PostOrdersIdCancel"];
+ };
+ "/v1/orders/{id}/line_items": {
+ /** When retrieving an order, there is an includable line_items property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
*/
+ get: operations["GetOrdersIdLineItems"];
+ };
+ "/v1/orders/{id}/reopen": {
+ /** Reopens a submitted
order.
*/
+ post: operations["PostOrdersIdReopen"];
};
- "/v1/orders/{id}/returns": {
- /** Return all or part of an order. The order must have a status of paid
or fulfilled
before it can be returned. Once all items have been returned, the order will become canceled
or returned
depending on which status the order started in.
*/
- post: operations["PostOrdersIdReturns"];
+ "/v1/orders/{id}/submit": {
+ /** Submitting an Order transitions the status to processing
and creates a PaymentIntent object so the order can be paid. If the Order has an amount_total
of 0, no PaymentIntent object will be created. Once the order is submitted, its contents cannot be changed, unless the reopen method is called.
*/
+ post: operations["PostOrdersIdSubmit"];
};
"/v1/payment_intents": {
/** Returns a list of PaymentIntents.
*/
@@ -1002,6 +1089,15 @@ export interface paths {
*/
post: operations["PostPaymentIntents"];
};
+ "/v1/payment_intents/search": {
+ /**
+ * Search for PaymentIntents you’ve previously created using Stripe’s Search Query Language.
+ * Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating
+ * conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up
+ * to an hour behind during outages. Search functionality is not available to merchants in India.
+ */
+ get: operations["GetPaymentIntentsSearch"];
+ };
"/v1/payment_intents/{intent}": {
/**
* Retrieves the details of a PaymentIntent that has previously been created.
@@ -1022,11 +1118,17 @@ export interface paths {
*/
post: operations["PostPaymentIntentsIntent"];
};
+ "/v1/payment_intents/{intent}/apply_customer_balance": {
+ /** Manually reconcile the remaining amount for a customer_balance PaymentIntent.
*/
+ post: operations["PostPaymentIntentsIntentApplyCustomerBalance"];
+ };
"/v1/payment_intents/{intent}/cancel": {
/**
* A PaymentIntent object can be canceled when it is in one of these statuses: requires_payment_method
, requires_capture
, requires_confirmation
, requires_action
, or processing
.
*
- * Once canceled, no additional charges will be made by the PaymentIntent and any operations on the PaymentIntent will fail with an error. For PaymentIntents with status=’requires_capture’
, the remaining amount_capturable
will automatically be refunded.
+ * Once canceled, no additional charges will be made by the PaymentIntent and any operations on the PaymentIntent will fail with an error. For PaymentIntents with status=’requires_capture’
, the remaining amount_capturable
will automatically be refunded.
+ *
+ * You cannot cancel the PaymentIntent for a Checkout Session. Expire the Checkout Session instead
*/
post: operations["PostPaymentIntentsIntentCancel"];
};
@@ -1070,6 +1172,35 @@ export interface paths {
*/
post: operations["PostPaymentIntentsIntentConfirm"];
};
+ "/v1/payment_intents/{intent}/increment_authorization": {
+ /**
+ * Perform an incremental authorization on an eligible
+ * PaymentIntent. To be eligible, the
+ * PaymentIntent’s status must be requires_capture
and
+ * incremental_authorization_supported
+ * must be true
.
+ *
+ * Incremental authorizations attempt to increase the authorized amount on
+ * your customer’s card to the new, higher amount
provided. As with the
+ * initial authorization, incremental authorizations may be declined. A
+ * single PaymentIntent can call this endpoint multiple times to further
+ * increase the authorized amount.
+ *
+ * If the incremental authorization succeeds, the PaymentIntent object is
+ * returned with the updated
+ * amount.
+ * If the incremental authorization fails, a
+ * card_declined error is returned, and no
+ * fields on the PaymentIntent or Charge are updated. The PaymentIntent
+ * object remains capturable for the previously authorized amount.
+ *
+ * Each PaymentIntent can have a maximum of 10 incremental authorization attempts, including declines.
+ * Once captured, a PaymentIntent can no longer be incremented.
+ *
+ * Learn more about incremental authorizations.
+ */
+ post: operations["PostPaymentIntentsIntentIncrementAuthorization"];
+ };
"/v1/payment_intents/{intent}/verify_microdeposits": {
/** Verifies microdeposits on a PaymentIntent object.
*/
post: operations["PostPaymentIntentsIntentVerifyMicrodeposits"];
@@ -1091,7 +1222,7 @@ export interface paths {
get: operations["GetPaymentLinksPaymentLinkLineItems"];
};
"/v1/payment_methods": {
- /** Returns a list of PaymentMethods. For listing a customer’s payment methods, you should use List a Customer’s PaymentMethods
*/
+ /** Returns a list of PaymentMethods attached to the StripeAccount. For listing a customer’s payment methods, you should use List a Customer’s PaymentMethods
*/
get: operations["GetPaymentMethods"];
/**
* Creates a PaymentMethod object. Read the Stripe.js reference to learn how to create PaymentMethods via Stripe.js.
@@ -1101,7 +1232,7 @@ export interface paths {
post: operations["PostPaymentMethods"];
};
"/v1/payment_methods/{payment_method}": {
- /** Retrieves a PaymentMethod object.
*/
+ /** Retrieves a PaymentMethod object attached to the StripeAccount. To retrieve a payment method attached to a Customer, you should use Retrieve a Customer’s PaymentMethods
*/
get: operations["GetPaymentMethodsPaymentMethod"];
/** Updates a PaymentMethod object. A PaymentMethod must be attached a customer to be updated.
*/
post: operations["PostPaymentMethodsPaymentMethod"];
@@ -1112,9 +1243,11 @@ export interface paths {
*
* To attach a new PaymentMethod to a customer for future payments, we recommend you use a SetupIntent
* or a PaymentIntent with setup_future_usage.
- * These approaches will perform any necessary steps to ensure that the PaymentMethod can be used in a future payment. Using the
- * /v1/payment_methods/:id/attach
endpoint does not ensure that future payments can be made with the attached PaymentMethod.
- * See Optimizing cards for future payments for more information about setting up future payments.
+ * These approaches will perform any necessary steps to set up the PaymentMethod for future payments. Using the /v1/payment_methods/:id/attach
+ * endpoint without first using a SetupIntent or PaymentIntent with setup_future_usage
does not optimize the PaymentMethod for
+ * future use, which makes later declines and payment friction more likely.
+ * See Optimizing cards for future payments for more information about setting up
+ * future payments.
*
* To use this PaymentMethod as the default for invoice or subscription payments,
* set invoice_settings.default_payment_method
,
@@ -1123,7 +1256,7 @@ export interface paths {
post: operations["PostPaymentMethodsPaymentMethodAttach"];
};
"/v1/payment_methods/{payment_method}/detach": {
- /**
Detaches a PaymentMethod object from a Customer.
*/
+ /** Detaches a PaymentMethod object from a Customer. After a PaymentMethod is detached, it can no longer be used for a payment or re-attached to a Customer.
*/
post: operations["PostPaymentMethodsPaymentMethodDetach"];
};
"/v1/payouts": {
@@ -1176,6 +1309,15 @@ export interface paths {
/** Creates a new price for an existing product. The price can be recurring or one-time.
*/
post: operations["PostPrices"];
};
+ "/v1/prices/search": {
+ /**
+ * Search for prices you’ve previously created using Stripe’s Search Query Language.
+ * Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating
+ * conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up
+ * to an hour behind during outages. Search functionality is not available to merchants in India.
+ */
+ get: operations["GetPricesSearch"];
+ };
"/v1/prices/{price}": {
/** Retrieves the price with the given ID.
*/
get: operations["GetPricesPrice"];
@@ -1188,6 +1330,15 @@ export interface paths {
/** Creates a new product object.
*/
post: operations["PostProducts"];
};
+ "/v1/products/search": {
+ /**
+ * Search for products you’ve previously created using Stripe’s Search Query Language.
+ * Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating
+ * conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up
+ * to an hour behind during outages. Search functionality is not available to merchants in India.
+ */
+ get: operations["GetProductsSearch"];
+ };
"/v1/products/{id}": {
/** Retrieves the details of an existing product. Supply the unique product ID from either a product creation request or the product list, and Stripe will return the corresponding product information.
*/
get: operations["GetProductsId"];
@@ -1282,29 +1433,6 @@ export interface paths {
/** Deletes a ValueList
object, also deleting any items contained within the value list. To be deleted, a value list must not be referenced in any rules.
*/
delete: operations["DeleteRadarValueListsValueList"];
};
- "/v1/recipients": {
- /** Returns a list of your recipients. The recipients are returned sorted by creation date, with the most recently created recipients appearing first.
*/
- get: operations["GetRecipients"];
- /**
- * Creates a new Recipient
object and verifies the recipient’s identity.
- * Also verifies the recipient’s bank account information or debit card, if either is provided.
- */
- post: operations["PostRecipients"];
- };
- "/v1/recipients/{id}": {
- /** Retrieves the details of an existing recipient. You need only supply the unique recipient identifier that was returned upon recipient creation.
*/
- get: operations["GetRecipientsId"];
- /**
- * Updates the specified recipient by setting the values of the parameters passed.
- * Any parameters not provided will be left unchanged.
- *
- * If you update the name or tax ID, the identity verification will automatically be rerun.
- * If you update the bank account, the bank account validation will automatically be rerun.
- */
- post: operations["PostRecipientsId"];
- /** Permanently deletes a recipient. It cannot be undone.
*/
- delete: operations["DeleteRecipientsId"];
- };
"/v1/refunds": {
/** Returns a list of all refunds you’ve previously created. The refunds are returned in sorted order, with the most recent refunds appearing first. For convenience, the 10 most recent refunds are always available by default on the charge object.
*/
get: operations["GetRefunds"];
@@ -1321,6 +1449,14 @@ export interface paths {
*/
post: operations["PostRefundsRefund"];
};
+ "/v1/refunds/{refund}/cancel": {
+ /**
+ * Cancels a refund with a status of requires_action
.
+ *
+ * Refunds in other states cannot be canceled, and only refunds for payment methods that require customer action will enter the requires_action
state.
+ */
+ post: operations["PostRefundsRefundCancel"];
+ };
"/v1/reporting/report_runs": {
/** Returns a list of Report Runs, with the most recent appearing first.
*/
get: operations["GetReportingReportRuns"];
@@ -1533,9 +1669,26 @@ export interface paths {
"/v1/subscriptions": {
/** By default, returns a list of subscriptions that have not been canceled. In order to list canceled subscriptions, specify status=canceled
.
*/
get: operations["GetSubscriptions"];
- /** Creates a new subscription on an existing customer. Each customer can have up to 500 active or scheduled subscriptions.
*/
+ /**
+ * Creates a new subscription on an existing customer. Each customer can have up to 500 active or scheduled subscriptions.
+ *
+ * When you create a subscription with collection_method=charge_automatically
, the first invoice is finalized as part of the request.
+ * The payment_behavior
parameter determines the exact behavior of the initial payment.
+ *
+ * To start subscriptions where the first invoice always begins in a draft
status, use subscription schedules instead.
+ * Schedules provide the flexibility to model more complex billing configurations that change over time.
+ */
post: operations["PostSubscriptions"];
};
+ "/v1/subscriptions/search": {
+ /**
+ * Search for subscriptions you’ve previously created using Stripe’s Search Query Language.
+ * Don’t use search in read-after-write flows where strict consistency is necessary. Under normal operating
+ * conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up
+ * to an hour behind during outages. Search functionality is not available to merchants in India.
+ */
+ get: operations["GetSubscriptionsSearch"];
+ };
"/v1/subscriptions/{subscription_exposed_id}": {
/** Retrieves the subscription with the given ID.
*/
get: operations["GetSubscriptionsSubscriptionExposedId"];
@@ -1555,7 +1708,7 @@ export interface paths {
delete: operations["DeleteSubscriptionsSubscriptionExposedIdDiscount"];
};
"/v1/tax_codes": {
- /** A list of all tax codes available to add to Products in order to allow specific tax calculations.
*/
+ /** A list of all tax codes available to add to Products in order to allow specific tax calculations.
*/
get: operations["GetTaxCodes"];
};
"/v1/tax_codes/{id}": {
@@ -1574,6 +1727,20 @@ export interface paths {
/** Updates an existing tax rate.
*/
post: operations["PostTaxRatesTaxRate"];
};
+ "/v1/terminal/configurations": {
+ /** Returns a list of Configuration
objects.
*/
+ get: operations["GetTerminalConfigurations"];
+ /** Creates a new Configuration
object.
*/
+ post: operations["PostTerminalConfigurations"];
+ };
+ "/v1/terminal/configurations/{configuration}": {
+ /** Retrieves a Configuration
object.
*/
+ get: operations["GetTerminalConfigurationsConfiguration"];
+ /** Updates a new Configuration
object.
*/
+ post: operations["PostTerminalConfigurationsConfiguration"];
+ /** Deletes a Configuration
object.
*/
+ delete: operations["DeleteTerminalConfigurationsConfiguration"];
+ };
"/v1/terminal/connection_tokens": {
/** To connect to a reader the Stripe Terminal SDK needs to retrieve a short-lived connection token from Stripe, proxied through your server. On your backend, add an endpoint that creates and returns a connection token.
*/
post: operations["PostTerminalConnectionTokens"];
@@ -1609,6 +1776,110 @@ export interface paths {
/** Deletes a Reader
object.
*/
delete: operations["DeleteTerminalReadersReader"];
};
+ "/v1/terminal/readers/{reader}/cancel_action": {
+ /** Cancels the current reader action.
*/
+ post: operations["PostTerminalReadersReaderCancelAction"];
+ };
+ "/v1/terminal/readers/{reader}/process_payment_intent": {
+ /** Initiates a payment flow on a Reader.
*/
+ post: operations["PostTerminalReadersReaderProcessPaymentIntent"];
+ };
+ "/v1/terminal/readers/{reader}/process_setup_intent": {
+ /** Initiates a setup intent flow on a Reader.
*/
+ post: operations["PostTerminalReadersReaderProcessSetupIntent"];
+ };
+ "/v1/terminal/readers/{reader}/set_reader_display": {
+ /** Sets reader display to show cart details.
*/
+ post: operations["PostTerminalReadersReaderSetReaderDisplay"];
+ };
+ "/v1/test_helpers/customers/{customer}/fund_cash_balance": {
+ /** Create an incoming testmode bank transfer
*/
+ post: operations["PostTestHelpersCustomersCustomerFundCashBalance"];
+ };
+ "/v1/test_helpers/issuing/cards/{card}/shipping/deliver": {
+ /** Updates the shipping status of the specified Issuing Card
object to delivered
.
*/
+ post: operations["PostTestHelpersIssuingCardsCardShippingDeliver"];
+ };
+ "/v1/test_helpers/issuing/cards/{card}/shipping/fail": {
+ /** Updates the shipping status of the specified Issuing Card
object to failure
.
*/
+ post: operations["PostTestHelpersIssuingCardsCardShippingFail"];
+ };
+ "/v1/test_helpers/issuing/cards/{card}/shipping/return": {
+ /** Updates the shipping status of the specified Issuing Card
object to returned
.
*/
+ post: operations["PostTestHelpersIssuingCardsCardShippingReturn"];
+ };
+ "/v1/test_helpers/issuing/cards/{card}/shipping/ship": {
+ /** Updates the shipping status of the specified Issuing Card
object to shipped
.
*/
+ post: operations["PostTestHelpersIssuingCardsCardShippingShip"];
+ };
+ "/v1/test_helpers/refunds/{refund}/expire": {
+ /** Expire a refund with a status of requires_action
.
*/
+ post: operations["PostTestHelpersRefundsRefundExpire"];
+ };
+ "/v1/test_helpers/terminal/readers/{reader}/present_payment_method": {
+ /** Presents a payment method on a simulated reader. Can be used to simulate accepting a payment, saving a card or refunding a transaction.
*/
+ post: operations["PostTestHelpersTerminalReadersReaderPresentPaymentMethod"];
+ };
+ "/v1/test_helpers/test_clocks": {
+ /** Returns a list of your test clocks.
*/
+ get: operations["GetTestHelpersTestClocks"];
+ /** Creates a new test clock that can be attached to new customers and quotes.
*/
+ post: operations["PostTestHelpersTestClocks"];
+ };
+ "/v1/test_helpers/test_clocks/{test_clock}": {
+ /** Retrieves a test clock.
*/
+ get: operations["GetTestHelpersTestClocksTestClock"];
+ /** Deletes a test clock.
*/
+ delete: operations["DeleteTestHelpersTestClocksTestClock"];
+ };
+ "/v1/test_helpers/test_clocks/{test_clock}/advance": {
+ /** Starts advancing a test clock to a specified time in the future. Advancement is done when status changes to Ready
.
*/
+ post: operations["PostTestHelpersTestClocksTestClockAdvance"];
+ };
+ "/v1/test_helpers/treasury/inbound_transfers/{id}/fail": {
+ /** Transitions a test mode created InboundTransfer to the failed
status. The InboundTransfer must already be in the processing
state.
*/
+ post: operations["PostTestHelpersTreasuryInboundTransfersIdFail"];
+ };
+ "/v1/test_helpers/treasury/inbound_transfers/{id}/return": {
+ /** Marks the test mode InboundTransfer object as returned and links the InboundTransfer to a ReceivedDebit. The InboundTransfer must already be in the succeeded
state.
*/
+ post: operations["PostTestHelpersTreasuryInboundTransfersIdReturn"];
+ };
+ "/v1/test_helpers/treasury/inbound_transfers/{id}/succeed": {
+ /** Transitions a test mode created InboundTransfer to the succeeded
status. The InboundTransfer must already be in the processing
state.
*/
+ post: operations["PostTestHelpersTreasuryInboundTransfersIdSucceed"];
+ };
+ "/v1/test_helpers/treasury/outbound_payments/{id}/fail": {
+ /** Transitions a test mode created OutboundPayment to the failed
status. The OutboundPayment must already be in the processing
state.
*/
+ post: operations["PostTestHelpersTreasuryOutboundPaymentsIdFail"];
+ };
+ "/v1/test_helpers/treasury/outbound_payments/{id}/post": {
+ /** Transitions a test mode created OutboundPayment to the posted
status. The OutboundPayment must already be in the processing
state.
*/
+ post: operations["PostTestHelpersTreasuryOutboundPaymentsIdPost"];
+ };
+ "/v1/test_helpers/treasury/outbound_payments/{id}/return": {
+ /** Transitions a test mode created OutboundPayment to the returned
status. The OutboundPayment must already be in the processing
state.
*/
+ post: operations["PostTestHelpersTreasuryOutboundPaymentsIdReturn"];
+ };
+ "/v1/test_helpers/treasury/outbound_transfers/{outbound_transfer}/fail": {
+ /** Transitions a test mode created OutboundTransfer to the failed
status. The OutboundTransfer must already be in the processing
state.
*/
+ post: operations["PostTestHelpersTreasuryOutboundTransfersOutboundTransferFail"];
+ };
+ "/v1/test_helpers/treasury/outbound_transfers/{outbound_transfer}/post": {
+ /** Transitions a test mode created OutboundTransfer to the posted
status. The OutboundTransfer must already be in the processing
state.
*/
+ post: operations["PostTestHelpersTreasuryOutboundTransfersOutboundTransferPost"];
+ };
+ "/v1/test_helpers/treasury/outbound_transfers/{outbound_transfer}/return": {
+ /** Transitions a test mode created OutboundTransfer to the returned
status. The OutboundTransfer must already be in the processing
state.
*/
+ post: operations["PostTestHelpersTreasuryOutboundTransfersOutboundTransferReturn"];
+ };
+ "/v1/test_helpers/treasury/received_credits": {
+ /** Use this endpoint to simulate a test mode ReceivedCredit initiated by a third party. In live mode, you can’t directly create ReceivedCredits initiated by third parties.
*/
+ post: operations["PostTestHelpersTreasuryReceivedCredits"];
+ };
+ "/v1/test_helpers/treasury/received_debits": {
+ /** Use this endpoint to simulate a test mode ReceivedDebit initiated by a third party. In live mode, you can’t directly create ReceivedDebits initiated by third parties.
*/
+ post: operations["PostTestHelpersTreasuryReceivedDebits"];
+ };
"/v1/tokens": {
/**
* Creates a single-use token that represents a bank account’s details.
@@ -1674,6 +1945,118 @@ export interface paths {
*/
post: operations["PostTransfersTransferReversalsId"];
};
+ "/v1/treasury/credit_reversals": {
+ /**
Returns a list of CreditReversals.
*/
+ get: operations["GetTreasuryCreditReversals"];
+ /** Reverses a ReceivedCredit and creates a CreditReversal object.
*/
+ post: operations["PostTreasuryCreditReversals"];
+ };
+ "/v1/treasury/credit_reversals/{credit_reversal}": {
+ /** Retrieves the details of an existing CreditReversal by passing the unique CreditReversal ID from either the CreditReversal creation request or CreditReversal list
*/
+ get: operations["GetTreasuryCreditReversalsCreditReversal"];
+ };
+ "/v1/treasury/debit_reversals": {
+ /** Returns a list of DebitReversals.
*/
+ get: operations["GetTreasuryDebitReversals"];
+ /** Reverses a ReceivedDebit and creates a DebitReversal object.
*/
+ post: operations["PostTreasuryDebitReversals"];
+ };
+ "/v1/treasury/debit_reversals/{debit_reversal}": {
+ /** Retrieves a DebitReversal object.
*/
+ get: operations["GetTreasuryDebitReversalsDebitReversal"];
+ };
+ "/v1/treasury/financial_accounts": {
+ /** Returns a list of FinancialAccounts.
*/
+ get: operations["GetTreasuryFinancialAccounts"];
+ /** Creates a new FinancialAccount. For now, each connected account can only have one FinancialAccount.
*/
+ post: operations["PostTreasuryFinancialAccounts"];
+ };
+ "/v1/treasury/financial_accounts/{financial_account}": {
+ /** Retrieves the details of a FinancialAccount.
*/
+ get: operations["GetTreasuryFinancialAccountsFinancialAccount"];
+ /** Updates the details of a FinancialAccount.
*/
+ post: operations["PostTreasuryFinancialAccountsFinancialAccount"];
+ };
+ "/v1/treasury/financial_accounts/{financial_account}/features": {
+ /** Retrieves Features information associated with the FinancialAccount.
*/
+ get: operations["GetTreasuryFinancialAccountsFinancialAccountFeatures"];
+ /** Updates the Features associated with a FinancialAccount.
*/
+ post: operations["PostTreasuryFinancialAccountsFinancialAccountFeatures"];
+ };
+ "/v1/treasury/inbound_transfers": {
+ /** Returns a list of InboundTransfers sent from the specified FinancialAccount.
*/
+ get: operations["GetTreasuryInboundTransfers"];
+ /** Creates an InboundTransfer.
*/
+ post: operations["PostTreasuryInboundTransfers"];
+ };
+ "/v1/treasury/inbound_transfers/{id}": {
+ /** Retrieves the details of an existing InboundTransfer.
*/
+ get: operations["GetTreasuryInboundTransfersId"];
+ };
+ "/v1/treasury/inbound_transfers/{inbound_transfer}/cancel": {
+ /** Cancels an InboundTransfer.
*/
+ post: operations["PostTreasuryInboundTransfersInboundTransferCancel"];
+ };
+ "/v1/treasury/outbound_payments": {
+ /** Returns a list of OutboundPayments sent from the specified FinancialAccount.
*/
+ get: operations["GetTreasuryOutboundPayments"];
+ /** Creates an OutboundPayment.
*/
+ post: operations["PostTreasuryOutboundPayments"];
+ };
+ "/v1/treasury/outbound_payments/{id}": {
+ /** Retrieves the details of an existing OutboundPayment by passing the unique OutboundPayment ID from either the OutboundPayment creation request or OutboundPayment list.
*/
+ get: operations["GetTreasuryOutboundPaymentsId"];
+ };
+ "/v1/treasury/outbound_payments/{id}/cancel": {
+ /** Cancel an OutboundPayment.
*/
+ post: operations["PostTreasuryOutboundPaymentsIdCancel"];
+ };
+ "/v1/treasury/outbound_transfers": {
+ /** Returns a list of OutboundTransfers sent from the specified FinancialAccount.
*/
+ get: operations["GetTreasuryOutboundTransfers"];
+ /** Creates an OutboundTransfer.
*/
+ post: operations["PostTreasuryOutboundTransfers"];
+ };
+ "/v1/treasury/outbound_transfers/{outbound_transfer}": {
+ /** Retrieves the details of an existing OutboundTransfer by passing the unique OutboundTransfer ID from either the OutboundTransfer creation request or OutboundTransfer list.
*/
+ get: operations["GetTreasuryOutboundTransfersOutboundTransfer"];
+ };
+ "/v1/treasury/outbound_transfers/{outbound_transfer}/cancel": {
+ /** An OutboundTransfer can be canceled if the funds have not yet been paid out.
*/
+ post: operations["PostTreasuryOutboundTransfersOutboundTransferCancel"];
+ };
+ "/v1/treasury/received_credits": {
+ /** Returns a list of ReceivedCredits.
*/
+ get: operations["GetTreasuryReceivedCredits"];
+ };
+ "/v1/treasury/received_credits/{id}": {
+ /** Retrieves the details of an existing ReceivedCredit by passing the unique ReceivedCredit ID from the ReceivedCredit list.
*/
+ get: operations["GetTreasuryReceivedCreditsId"];
+ };
+ "/v1/treasury/received_debits": {
+ /** Returns a list of ReceivedDebits.
*/
+ get: operations["GetTreasuryReceivedDebits"];
+ };
+ "/v1/treasury/received_debits/{id}": {
+ /** Retrieves the details of an existing ReceivedDebit by passing the unique ReceivedDebit ID from the ReceivedDebit list
*/
+ get: operations["GetTreasuryReceivedDebitsId"];
+ };
+ "/v1/treasury/transaction_entries": {
+ /** Retrieves a list of TransactionEntry objects.
*/
+ get: operations["GetTreasuryTransactionEntries"];
+ };
+ "/v1/treasury/transaction_entries/{id}": {
+ /** Retrieves a TransactionEntry object.
*/
+ get: operations["GetTreasuryTransactionEntriesId"];
+ };
+ "/v1/treasury/transactions": {
+ /** Retrieves a list of Transaction objects.
*/
+ get: operations["GetTreasuryTransactions"];
+ };
+ "/v1/treasury/transactions/{id}": {
+ /** Retrieves the details of an existing Transaction.
*/
+ get: operations["GetTreasuryTransactionsId"];
+ };
"/v1/webhook_endpoints": {
/** Returns a list of your webhook endpoints.
*/
get: operations["GetWebhookEndpoints"];
@@ -1703,9 +2086,9 @@ export interface components {
*/
account: {
/** @description Business information about the account. */
- business_profile?: Partial<
- components["schemas"]["account_business_profile"]
- > | null;
+ business_profile?:
+ | components["schemas"]["account_business_profile"]
+ | null;
/**
* @description The business type.
* @enum {string|null}
@@ -1722,7 +2105,7 @@ export interface components {
country?: string;
/**
* Format: unix-time
- * @description Time at which the object was created. Measured in seconds since the Unix epoch.
+ * @description Time at which the account was connected. Measured in seconds since the Unix epoch.
*/
created?: number;
/** @description Three-letter ISO currency code representing the default currency for the account. This must be a currency that [Stripe supports in the account's country](https://stripe.com/docs/payouts). */
@@ -1737,8 +2120,10 @@ export interface components {
*/
external_accounts?: {
/** @description The list contains all external accounts that have been attached to the Stripe account. These may be bank accounts or cards. */
- data: (Partial &
- Partial)[];
+ data: (
+ | components["schemas"]["bank_account"]
+ | components["schemas"]["card"]
+ )[];
/** @description True if this list has another page of items after this one that can be fetched. */
has_more: boolean;
/**
@@ -1764,7 +2149,7 @@ export interface components {
payouts_enabled?: boolean;
requirements?: components["schemas"]["account_requirements"];
/** @description Options for customizing how the account functions within Stripe. */
- settings?: Partial | null;
+ settings?: components["schemas"]["account_settings"] | null;
tos_acceptance?: components["schemas"]["account_tos_acceptance"];
/**
* @description The Stripe account type. Can be `standard`, `express`, or `custom`.
@@ -1780,9 +2165,9 @@ export interface components {
/** AccountBrandingSettings */
account_branding_settings: {
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) An icon for the account. Must be square and at least 128px x 128px. */
- icon?: (Partial & Partial) | null;
+ icon?: (string | components["schemas"]["file"]) | null;
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) A logo for the account that will be used in Checkout instead of the icon and without the account's name next to it if provided. Must be at least 128px x 128px. */
- logo?: (Partial & Partial) | null;
+ logo?: (string | components["schemas"]["file"]) | null;
/** @description A CSS hex color value representing the primary branding color for this account */
primary_color?: string | null;
/** @description A CSS hex color value representing the secondary branding color for this account */
@@ -1797,7 +2182,7 @@ export interface components {
/** @description Internal-only description of the product sold or service provided by the business. It's used by Stripe for risk and underwriting purposes. */
product_description?: string | null;
/** @description A publicly available mailing address for sending support issues to. */
- support_address?: Partial | null;
+ support_address?: components["schemas"]["address"] | null;
/** @description A publicly available email address for sending support issues to. */
support_email?: string | null;
/** @description A publicly available phone number to call with support issues. */
@@ -1814,6 +2199,11 @@ export interface components {
* @enum {string}
*/
acss_debit_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the Affirm capability of the account, or whether the account can directly process Affirm charges.
+ * @enum {string}
+ */
+ affirm_payments?: "active" | "inactive" | "pending";
/**
* @description The status of the Afterpay Clearpay capability of the account, or whether the account can directly process Afterpay Clearpay charges.
* @enum {string}
@@ -1834,6 +2224,16 @@ export interface components {
* @enum {string}
*/
bancontact_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the customer_balance payments capability of the account, or whether the account can directly process customer_balance charges.
+ * @enum {string}
+ */
+ bank_transfer_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the blik payments capability of the account, or whether the account can directly process blik charges.
+ * @enum {string}
+ */
+ blik_payments?: "active" | "inactive" | "pending";
/**
* @description The status of the boleto payments capability of the account, or whether the account can directly process boleto charges.
* @enum {string}
@@ -1889,11 +2289,21 @@ export interface components {
* @enum {string}
*/
klarna_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the konbini payments capability of the account, or whether the account can directly process konbini charges.
+ * @enum {string}
+ */
+ konbini_payments?: "active" | "inactive" | "pending";
/**
* @description The status of the legacy payments capability of the account.
* @enum {string}
*/
legacy_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the link_payments capability of the account, or whether the account can directly process Link charges.
+ * @enum {string}
+ */
+ link_payments?: "active" | "inactive" | "pending";
/**
* @description The status of the OXXO payments capability of the account, or whether the account can directly process OXXO charges.
* @enum {string}
@@ -1904,6 +2314,16 @@ export interface components {
* @enum {string}
*/
p24_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the paynow payments capability of the account, or whether the account can directly process paynow charges.
+ * @enum {string}
+ */
+ paynow_payments?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the promptpay payments capability of the account, or whether the account can directly process promptpay charges.
+ * @enum {string}
+ */
+ promptpay_payments?: "active" | "inactive" | "pending";
/**
* @description The status of the SEPA Direct Debits payments capability of the account, or whether the account can directly process SEPA Direct Debits charges.
* @enum {string}
@@ -1929,6 +2349,16 @@ export interface components {
* @enum {string}
*/
transfers?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the banking capability, or whether the account can have bank accounts.
+ * @enum {string}
+ */
+ treasury?: "active" | "inactive" | "pending";
+ /**
+ * @description The status of the US bank account ACH payments capability of the account, or whether the account can directly process US bank account charges.
+ * @enum {string}
+ */
+ us_bank_account_ach_payments?: "active" | "inactive" | "pending";
};
/** AccountCapabilityFutureRequirements */
account_capability_future_requirements: {
@@ -1995,6 +2425,10 @@ export interface components {
decline_on?: components["schemas"]["account_decline_charge_on"];
/** @description The default text that appears on credit card statements when a charge is made. This field prefixes any dynamic `statement_descriptor` specified on the charge. `statement_descriptor_prefix` is useful for maximizing descriptor space for the dynamic portion. */
statement_descriptor_prefix?: string | null;
+ /** @description The Kana variation of the default text that appears on credit card statements when a charge is made (Japan only). This field prefixes any dynamic `statement_descriptor_suffix_kana` specified on the charge. `statement_descriptor_prefix_kana` is useful for maximizing descriptor space for the dynamic portion. */
+ statement_descriptor_prefix_kana?: string | null;
+ /** @description The Kanji variation of the default text that appears on credit card statements when a charge is made (Japan only). This field prefixes any dynamic `statement_descriptor_suffix_kanji` specified on the charge. `statement_descriptor_prefix_kanji` is useful for maximizing descriptor space for the dynamic portion. */
+ statement_descriptor_prefix_kanji?: string | null;
};
/** AccountDashboardSettings */
account_dashboard_settings: {
@@ -2068,6 +2502,10 @@ export interface components {
statement_descriptor_kana?: string | null;
/** @description The Kanji variation of the default text that appears on credit card statements when a charge is made (Japan only) */
statement_descriptor_kanji?: string | null;
+ /** @description The Kana variation of the default text that appears on credit card statements when a charge is made (Japan only). This field prefixes any dynamic `statement_descriptor_suffix_kana` specified on the charge. `statement_descriptor_prefix_kana` is useful for maximizing descriptor space for the dynamic portion. */
+ statement_descriptor_prefix_kana?: string | null;
+ /** @description The Kanji variation of the default text that appears on credit card statements when a charge is made (Japan only). This field prefixes any dynamic `statement_descriptor_suffix_kanji` specified on the charge. `statement_descriptor_prefix_kanji` is useful for maximizing descriptor space for the dynamic portion. */
+ statement_descriptor_prefix_kanji?: string | null;
};
/** AccountPayoutSettings */
account_payout_settings: {
@@ -2117,6 +2555,7 @@ export interface components {
code:
| "invalid_address_city_state_postal_code"
| "invalid_street_address"
+ | "invalid_tos_acceptance"
| "invalid_value_other"
| "verification_document_address_mismatch"
| "verification_document_address_missing"
@@ -2180,6 +2619,16 @@ export interface components {
payments: components["schemas"]["account_payments_settings"];
payouts?: components["schemas"]["account_payout_settings"];
sepa_debit_payments?: components["schemas"]["account_sepa_debit_payments_settings"];
+ treasury?: components["schemas"]["account_treasury_settings"];
+ };
+ /** AccountTermsOfService */
+ account_terms_of_service: {
+ /** @description The Unix timestamp marking when the account representative accepted the service agreement. */
+ date?: number | null;
+ /** @description The IP address from which the account representative accepted the service agreement. */
+ ip?: string | null;
+ /** @description The user agent of the browser from which the account representative accepted the service agreement. */
+ user_agent?: string;
};
/** AccountTOSAcceptance */
account_tos_acceptance: {
@@ -2195,6 +2644,10 @@ export interface components {
/** @description The user agent of the browser from which the account representative accepted their service agreement */
user_agent?: string | null;
};
+ /** AccountTreasurySettings */
+ account_treasury_settings: {
+ tos_acceptance?: components["schemas"]["account_terms_of_service"];
+ };
/** AccountUnificationAccountController */
account_unification_account_controller: {
/** @description `true` if the Connect application retrieving the resource controls the account and can therefore exercise [platform controls](https://stripe.com/docs/connect/platform-controls-for-standard-accounts). Otherwise, this field is null. */
@@ -2220,43 +2673,6 @@ export interface components {
/** @description State, county, province, or region. */
state?: string | null;
};
- /** AlipayAccount */
- alipay_account: {
- /**
- * Format: unix-time
- * @description Time at which the object was created. Measured in seconds since the Unix epoch.
- */
- created: number;
- /** @description The ID of the customer associated with this Alipay Account. */
- customer?:
- | (Partial &
- Partial &
- Partial)
- | null;
- /** @description Uniquely identifies the account and will be the same across all Alipay account objects that are linked to the same Alipay account. */
- fingerprint: string;
- /** @description Unique identifier for the object. */
- id: string;
- /** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
- livemode: boolean;
- /** @description 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. */
- metadata?: { [key: string]: string };
- /**
- * @description String representing the object's type. Objects of the same type share the same value.
- * @enum {string}
- */
- object: "alipay_account";
- /** @description If the Alipay account object is not reusable, the exact amount that you can create a charge for. */
- payment_amount?: number | null;
- /** @description If the Alipay account object is not reusable, the exact currency that you can create a charge for. */
- payment_currency?: string | null;
- /** @description True if you can create multiple payments using this account. If the account is reusable, then you can freely choose the amount of each payment. */
- reusable: boolean;
- /** @description Whether this Alipay account object has ever been used for a payment. */
- used: boolean;
- /** @description The username for the Alipay account. */
- username: string;
- };
/** APIErrors */
api_errors: {
/** @description For card errors, the ID of the failed charge. */
@@ -2277,9 +2693,10 @@ export interface components {
payment_method_type?: string;
setup_intent?: components["schemas"]["setup_intent"];
/** @description The source object for errors returned on a request involving a source. */
- source?: Partial &
- Partial &
- Partial;
+ source?:
+ | components["schemas"]["bank_account"]
+ | components["schemas"]["card"]
+ | components["schemas"]["source"];
/**
* @description The type of error returned. One of `api_error`, `card_error`, `idempotency_error`, or `invalid_request_error`
* @enum {string}
@@ -2323,21 +2740,19 @@ export interface components {
/** PlatformFee */
application_fee: {
/** @description ID of the Stripe account this fee was taken from. */
- account: Partial & Partial;
+ account: string | components["schemas"]["account"];
/** @description Amount earned, in %s. */
amount: number;
/** @description Amount in %s refunded (can be less than the amount attribute on the fee if a partial refund was issued) */
amount_refunded: number;
/** @description ID of the Connect application that earned the fee. */
- application: Partial &
- Partial;
+ application: string | components["schemas"]["application"];
/** @description Balance transaction that describes the impact of this collected application fee on your account balance (not including refunds). */
balance_transaction?:
- | (Partial &
- Partial)
+ | (string | components["schemas"]["balance_transaction"])
| null;
/** @description ID of the charge that the application fee was taken from. */
- charge: Partial & Partial;
+ charge: string | components["schemas"]["charge"];
/**
* Format: unix-time
* @description Time at which the object was created. Measured in seconds since the Unix epoch.
@@ -2356,7 +2771,7 @@ export interface components {
object: "application_fee";
/** @description ID of the corresponding charge on the platform account, if this fee was the result of a charge using the `destination` parameter. */
originating_transaction?:
- | (Partial & Partial)
+ | (string | components["schemas"]["charge"])
| null;
/** @description Whether the fee has been fully refunded. If the fee is only partially refunded, this attribute will still be false. */
refunded: boolean;
@@ -2378,9 +2793,49 @@ export interface components {
url: string;
};
};
+ /**
+ * SecretServiceResourceSecret
+ * @description Secret Store is an API that allows Stripe Apps developers to securely persist secrets for use by UI Extensions and app backends.
+ *
+ * The primary resource in Secret Store is a `secret`. Other apps can't view secrets created by an app. Additionally, secrets are scoped to provide further permission control.
+ *
+ * All Dashboard users and the app backend share `account` scoped secrets. Use the `account` scope for secrets that don't change per-user, like a third-party API key.
+ *
+ * A `user` scoped secret is accessible by the app backend and one specific Dashboard user. Use the `user` scope for per-user secrets like per-user OAuth tokens, where different users might have different permissions.
+ *
+ * Related guide: [Store data between page reloads](https://stripe.com/docs/stripe-apps/store-auth-data-custom-objects).
+ */
+ "apps.secret": {
+ /**
+ * Format: unix-time
+ * @description Time at which the object was created. Measured in seconds since the Unix epoch.
+ */
+ created: number;
+ /** @description If true, indicates that this secret has been deleted */
+ deleted?: boolean;
+ /**
+ * Format: unix-time
+ * @description The Unix timestamp for the expiry time of the secret, after which the secret deletes.
+ */
+ expires_at?: number | null;
+ /** @description Unique identifier for the object. */
+ id: string;
+ /** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
+ livemode: boolean;
+ /** @description A name for the secret that's unique within the scope. */
+ name: string;
+ /**
+ * @description String representing the object's type. Objects of the same type share the same value.
+ * @enum {string}
+ */
+ object: "apps.secret";
+ /** @description The plaintext secret value to be stored. */
+ payload?: string | null;
+ scope: components["schemas"]["secret_service_resource_scope"];
+ };
/** AutomaticTax */
automatic_tax: {
- /** @description Whether Stripe automatically computes tax on this invoice. */
+ /** @description 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. */
enabled: boolean;
/**
* @description The status of the most recent automated tax calculation for this invoice.
@@ -2485,23 +2940,25 @@ export interface components {
reporting_category: string;
/** @description The Stripe object to which this transaction is related. */
source?:
- | (Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial)
+ | (
+ | string
+ | components["schemas"]["application_fee"]
+ | components["schemas"]["charge"]
+ | components["schemas"]["connect_collection_transfer"]
+ | components["schemas"]["dispute"]
+ | components["schemas"]["fee_refund"]
+ | components["schemas"]["issuing.authorization"]
+ | components["schemas"]["issuing.dispute"]
+ | components["schemas"]["issuing.transaction"]
+ | components["schemas"]["payout"]
+ | components["schemas"]["platform_tax_fee"]
+ | components["schemas"]["refund"]
+ | components["schemas"]["reserve_transaction"]
+ | components["schemas"]["tax_deducted_at_source"]
+ | components["schemas"]["topup"]
+ | components["schemas"]["transfer"]
+ | components["schemas"]["transfer_reversal"]
+ )
| null;
/** @description If the transaction's net funds are available in the Stripe balance yet. Either `available` or `pending`. */
status: string;
@@ -2555,9 +3012,7 @@ export interface components {
*/
bank_account: {
/** @description The ID of the account that the bank account is associated with. */
- account?:
- | (Partial & Partial)
- | null;
+ account?: (string | components["schemas"]["account"]) | null;
/** @description The name of the person or business that owns the bank account. */
account_holder_name?: string | null;
/** @description The type of entity that holds the account. This can be either `individual` or `company`. */
@@ -2574,9 +3029,11 @@ export interface components {
currency: string;
/** @description The ID of the customer that the bank account is associated with. */
customer?:
- | (Partial &
- Partial &
- Partial)
+ | (
+ | string
+ | components["schemas"]["customer"]
+ | components["schemas"]["deleted_customer"]
+ )
| null;
/** @description Whether this bank account is the default external account for its currency. */
default_for_currency?: boolean | null;
@@ -2602,10 +3059,98 @@ export interface components {
*/
status: string;
};
+ /** BankConnectionsResourceAccountholder */
+ bank_connections_resource_accountholder: {
+ /** @description The ID of the Stripe account this account belongs to. Should only be present if `account_holder.type` is `account`. */
+ account?: string | components["schemas"]["account"];
+ /** @description ID of the Stripe customer this account belongs to. Present if and only if `account_holder.type` is `customer`. */
+ customer?: string | components["schemas"]["customer"];
+ /**
+ * @description Type of account holder that this account belongs to.
+ * @enum {string}
+ */
+ type: "account" | "customer";
+ };
+ /** BankConnectionsResourceBalance */
+ bank_connections_resource_balance: {
+ /**
+ * Format: unix-time
+ * @description The time that the external institution calculated this balance. Measured in seconds since the Unix epoch.
+ */
+ as_of: number;
+ cash?: components["schemas"]["bank_connections_resource_balance_api_resource_cash_balance"];
+ credit?: components["schemas"]["bank_connections_resource_balance_api_resource_credit_balance"];
+ /**
+ * @description The balances owed to (or by) the account holder.
+ *
+ * Each key is a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase.
+ *
+ * Each value is a integer amount. A positive amount indicates money owed to the account holder. A negative amount indicates money owed by the account holder.
+ */
+ current: { [key: string]: number };
+ /**
+ * @description The `type` of the balance. An additional hash is included on the balance with a name matching this value.
+ * @enum {string}
+ */
+ type: "cash" | "credit";
+ };
+ /** BankConnectionsResourceBalanceAPIResourceCashBalance */
+ bank_connections_resource_balance_api_resource_cash_balance: {
+ /**
+ * @description The funds available to the account holder. Typically this is the current balance less any holds.
+ *
+ * Each key is a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase.
+ *
+ * Each value is a integer amount. A positive amount indicates money owed to the account holder. A negative amount indicates money owed by the account holder.
+ */
+ available?: { [key: string]: number } | null;
+ };
+ /** BankConnectionsResourceBalanceAPIResourceCreditBalance */
+ bank_connections_resource_balance_api_resource_credit_balance: {
+ /**
+ * @description The credit that has been used by the account holder.
+ *
+ * Each key is a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase.
+ *
+ * Each value is a integer amount. A positive amount indicates money owed to the account holder. A negative amount indicates money owed by the account holder.
+ */
+ used?: { [key: string]: number } | null;
+ };
+ /** BankConnectionsResourceBalanceRefresh */
+ bank_connections_resource_balance_refresh: {
+ /**
+ * Format: unix-time
+ * @description The time at which the last refresh attempt was initiated. Measured in seconds since the Unix epoch.
+ */
+ last_attempted_at: number;
+ /**
+ * @description The status of the last refresh attempt.
+ * @enum {string}
+ */
+ status: "failed" | "pending" | "succeeded";
+ };
+ /** BankConnectionsResourceLinkAccountSessionFilters */
+ bank_connections_resource_link_account_session_filters: {
+ /** @description List of countries from which to filter accounts. */
+ countries?: string[] | null;
+ };
+ /** BankConnectionsResourceOwnershipRefresh */
+ bank_connections_resource_ownership_refresh: {
+ /**
+ * Format: unix-time
+ * @description The time at which the last refresh attempt was initiated. Measured in seconds since the Unix epoch.
+ */
+ last_attempted_at: number;
+ /**
+ * @description The status of the last refresh attempt.
+ * @enum {string}
+ */
+ status: "failed" | "pending" | "succeeded";
+ };
/** billing_details */
billing_details: {
/** @description Billing address. */
- address?: Partial | null;
+ address?: components["schemas"]["address"] | null;
/** @description Email address. */
email?: string | null;
/** @description Full name. */
@@ -2621,7 +3166,13 @@ export interface components {
/** @description Whether the configuration is active and can be used to create portal sessions. */
active: boolean;
/** @description ID of the Connect Application that created the configuration. */
- application?: string | null;
+ application?:
+ | (
+ | string
+ | components["schemas"]["application"]
+ | components["schemas"]["deleted_application"]
+ )
+ | null;
business_profile: components["schemas"]["portal_business_profile"];
/**
* Format: unix-time
@@ -2637,6 +3188,7 @@ export interface components {
is_default: boolean;
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
livemode: boolean;
+ login_page: components["schemas"]["portal_login_page"];
/** @description 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. */
metadata?: { [key: string]: string } | null;
/**
@@ -2669,8 +3221,9 @@ export interface components {
*/
"billing_portal.session": {
/** @description The configuration used by this session, describing the features available. */
- configuration: Partial &
- Partial;
+ configuration:
+ | string
+ | components["schemas"]["billing_portal.configuration"];
/**
* Format: unix-time
* @description Time at which the object was created. Measured in seconds since the Unix epoch.
@@ -2745,101 +3298,10 @@ export interface components {
/** @description The account for which the session was created on behalf of. When specified, only subscriptions and invoices with this `on_behalf_of` account appear in the portal. For more information, see the [docs](https://stripe.com/docs/connect/charges-transfers#on-behalf-of). Use the [Accounts API](https://stripe.com/docs/api/accounts/object#account_object-settings-branding) to modify the `on_behalf_of` account's branding settings, which the portal displays. */
on_behalf_of?: string | null;
/** @description The URL to redirect customers to when they click on the portal's link to return to your website. */
- return_url: string;
+ return_url?: string | null;
/** @description The short-lived URL of the session that gives customers access to the customer portal. */
url: string;
};
- /** BitcoinReceiver */
- bitcoin_receiver: {
- /** @description True when this bitcoin receiver has received a non-zero amount of bitcoin. */
- active: boolean;
- /** @description The amount of `currency` that you are collecting as payment. */
- amount: number;
- /** @description The amount of `currency` to which `bitcoin_amount_received` has been converted. */
- amount_received: number;
- /** @description The amount of bitcoin that the customer should send to fill the receiver. The `bitcoin_amount` is denominated in Satoshi: there are 10^8 Satoshi in one bitcoin. */
- bitcoin_amount: number;
- /** @description The amount of bitcoin that has been sent by the customer to this receiver. */
- bitcoin_amount_received: number;
- /** @description This URI can be displayed to the customer as a clickable link (to activate their bitcoin client) or as a QR code (for mobile wallets). */
- bitcoin_uri: string;
- /**
- * Format: unix-time
- * @description Time at which the object was created. Measured in seconds since the Unix epoch.
- */
- created: number;
- /** @description Three-letter [ISO code for the currency](https://stripe.com/docs/currencies) to which the bitcoin will be converted. */
- currency: string;
- /** @description The customer ID of the bitcoin receiver. */
- customer?: string | null;
- /** @description An arbitrary string attached to the object. Often useful for displaying to users. */
- description?: string | null;
- /** @description The customer's email address, set by the API call that creates the receiver. */
- email?: string | null;
- /** @description This flag is initially false and updates to true when the customer sends the `bitcoin_amount` to this receiver. */
- filled: boolean;
- /** @description Unique identifier for the object. */
- id: string;
- /** @description A bitcoin address that is specific to this receiver. The customer can send bitcoin to this address to fill the receiver. */
- inbound_address: string;
- /** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
- livemode: boolean;
- /** @description 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. */
- metadata?: { [key: string]: string } | null;
- /**
- * @description String representing the object's type. Objects of the same type share the same value.
- * @enum {string}
- */
- object: "bitcoin_receiver";
- /** @description The ID of the payment created from the receiver, if any. Hidden when viewing the receiver with a publishable key. */
- payment?: string | null;
- /** @description The refund address of this bitcoin receiver. */
- refund_address?: string | null;
- /**
- * BitcoinTransactionList
- * @description A list with one entry for each time that the customer sent bitcoin to the receiver. Hidden when viewing the receiver with a publishable key.
- */
- transactions?: {
- /** @description Details about each object. */
- data: components["schemas"]["bitcoin_transaction"][];
- /** @description True if this list has another page of items after this one that can be fetched. */
- has_more: boolean;
- /**
- * @description String representing the object's type. Objects of the same type share the same value. Always has the value `list`.
- * @enum {string}
- */
- object: "list";
- /** @description The URL where this list can be accessed. */
- url: string;
- };
- /** @description This receiver contains uncaptured funds that can be used for a payment or refunded. */
- uncaptured_funds: boolean;
- /** @description Indicate if this source is used for payment. */
- used_for_payment?: boolean | null;
- };
- /** BitcoinTransaction */
- bitcoin_transaction: {
- /** @description The amount of `currency` that the transaction was converted to in real-time. */
- amount: number;
- /** @description The amount of bitcoin contained in the transaction. */
- bitcoin_amount: number;
- /**
- * Format: unix-time
- * @description Time at which the object was created. Measured in seconds since the Unix epoch.
- */
- created: number;
- /** @description Three-letter [ISO code for the currency](https://stripe.com/docs/currencies) to which this transaction was converted. */
- currency: string;
- /** @description Unique identifier for the object. */
- id: string;
- /**
- * @description String representing the object's type. Objects of the same type share the same value.
- * @enum {string}
- */
- object: "bitcoin_transaction";
- /** @description The receiver to which this transaction was sent. */
- receiver: string;
- };
/**
* AccountCapability
* @description This is an object representing a capability for a Stripe account.
@@ -2848,7 +3310,7 @@ export interface components {
*/
capability: {
/** @description The account for which the capability enables functionality. */
- account: Partial & Partial;
+ account: string | components["schemas"]["account"];
future_requirements?: components["schemas"]["account_capability_future_requirements"];
/** @description The identifier for the capability. */
id: string;
@@ -2881,9 +3343,7 @@ export interface components {
*/
card: {
/** @description The account this card belongs to. This attribute will not be in the card object if the card belongs to a customer or recipient instead. */
- account?:
- | (Partial & Partial)
- | null;
+ account?: (string | components["schemas"]["account"]) | null;
/** @description City/District/Suburb/Town/Village. */
address_city?: string | null;
/** @description Billing address country, if provided when creating card. */
@@ -2910,9 +3370,11 @@ export interface components {
currency?: string | null;
/** @description The customer that this card belongs to. This attribute will not be in the card object if the card belongs to an account or recipient instead. */
customer?:
- | (Partial &
- Partial &
- Partial)
+ | (
+ | string
+ | components["schemas"]["customer"]
+ | components["schemas"]["deleted_customer"]
+ )
| null;
/** @description If a CVC was provided, results of the check: `pass`, `fail`, `unavailable`, or `unchecked`. A result of unchecked indicates that CVC was provided but hasn't been checked yet. Checks are typically performed when attaching a card to a Customer object, or when creating a charge. For more details, see [Check if a card is valid without a charge](https://support.stripe.com/questions/check-if-a-card-is-valid-without-a-charge). */
cvc_check?: string | null;
@@ -2945,10 +3407,8 @@ export interface components {
* @enum {string}
*/
object: "card";
- /** @description The recipient that this card belongs to. This attribute will not be in the card object if the card belongs to a customer or account instead. */
- recipient?:
- | (Partial & Partial)
- | null;
+ /** @description For external accounts, possible values are `new` and `errored`. If a transfer fails, the status is set to `errored` and transfers are stopped until account details are updated. */
+ status?: string | null;
/** @description If the card number is tokenized, this is the method that was used. Can be `android_pay` (includes Google Pay), `apple_pay`, `masterpass`, `visa_checkout`, or null. */
tokenization_method?: string | null;
};
@@ -2969,6 +3429,24 @@ export interface components {
};
/** card_mandate_payment_method_details */
card_mandate_payment_method_details: { [key: string]: unknown };
+ /**
+ * cash_balance
+ * @description A customer's `Cash balance` represents real funds. Customers can add funds to their cash balance by sending a bank transfer. These funds can be used for payment and can eventually be paid out to your bank account.
+ */
+ cash_balance: {
+ /** @description A hash of all cash balances available to this customer. You cannot delete a customer with any cash balances, even if the balance is 0. Amounts are represented in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). */
+ available?: { [key: string]: number } | null;
+ /** @description The ID of the customer whose cash balance this object represents. */
+ customer: string;
+ /** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
+ livemode: boolean;
+ /**
+ * @description String representing the object's type. Objects of the same type share the same value.
+ * @enum {string}
+ */
+ object: "cash_balance";
+ settings: components["schemas"]["customer_balance_customer_balance_settings"];
+ };
/**
* Charge
* @description To charge a credit or a debit card, you create a `Charge` object. You can
@@ -2985,19 +3463,16 @@ export interface components {
/** @description Amount in %s refunded (can be less than the amount attribute on the charge if a partial refund was issued). */
amount_refunded: number;
/** @description ID of the Connect application that created the charge. */
- application?:
- | (Partial & Partial)
- | null;
+ application?: (string | components["schemas"]["application"]) | null;
/** @description The application fee (if any) for the charge. [See the Connect documentation](https://stripe.com/docs/connect/direct-charges#collecting-fees) for details. */
application_fee?:
- | (Partial & Partial)
+ | (string | components["schemas"]["application_fee"])
| null;
/** @description The amount of the application fee (if any) requested for the charge. [See the Connect documentation](https://stripe.com/docs/connect/direct-charges#collecting-fees) for details. */
application_fee_amount?: number | null;
/** @description ID of the balance transaction that describes the impact of this charge on your account balance (not including refunds or disputes). */
balance_transaction?:
- | (Partial &
- Partial)
+ | (string | components["schemas"]["balance_transaction"])
| null;
billing_details: components["schemas"]["billing_details"];
/** @description The full statement descriptor that is passed to card networks, and that is displayed on your customers' credit card and bank statements. Allows you to see what the statement descriptor looks like after the static and dynamic portions are combined. */
@@ -3013,28 +3488,30 @@ export interface components {
currency: string;
/** @description ID of the customer this charge is for if one exists. */
customer?:
- | (Partial &
- Partial &
- Partial)
+ | (
+ | string
+ | components["schemas"]["customer"]
+ | components["schemas"]["deleted_customer"]
+ )
| null;
/** @description An arbitrary string attached to the object. Often useful for displaying to users. */
description?: string | null;
/** @description Whether the charge has been disputed. */
disputed: boolean;
+ /** @description ID of the balance transaction that describes the reversal of the balance on your account due to payment failure. */
+ failure_balance_transaction?:
+ | (string | components["schemas"]["balance_transaction"])
+ | null;
/** @description Error code explaining reason for charge failure if available (see [the errors section](https://stripe.com/docs/api#errors) for a list of codes). */
failure_code?: string | null;
/** @description Message to user further explaining reason for charge failure if available. */
failure_message?: string | null;
/** @description Information on fraud assessments for the charge. */
- fraud_details?: Partial<
- components["schemas"]["charge_fraud_details"]
- > | null;
+ fraud_details?: components["schemas"]["charge_fraud_details"] | null;
/** @description Unique identifier for the object. */
id: string;
/** @description ID of the invoice this charge is for if one exists. */
- invoice?:
- | (Partial & Partial)
- | null;
+ invoice?: (string | components["schemas"]["invoice"]) | null;
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
livemode: boolean;
/** @description 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. */
@@ -3045,27 +3522,22 @@ export interface components {
*/
object: "charge";
/** @description The account (if any) the charge was made on behalf of without triggering an automatic transfer. See the [Connect documentation](https://stripe.com/docs/connect/charges-transfers) for details. */
- on_behalf_of?:
- | (Partial & Partial)
- | null;
- /** @description ID of the order this charge is for if one exists. */
- order?:
- | (Partial & Partial)
- | null;
+ on_behalf_of?: (string | components["schemas"]["account"]) | null;
/** @description Details about whether the payment was accepted, and why. See [understanding declines](https://stripe.com/docs/declines) for details. */
- outcome?: Partial | null;
+ outcome?: components["schemas"]["charge_outcome"] | null;
/** @description `true` if the charge succeeded, or was successfully authorized for later capture. */
paid: boolean;
/** @description ID of the PaymentIntent associated with this charge, if one exists. */
payment_intent?:
- | (Partial & Partial)
+ | (string | components["schemas"]["payment_intent"])
| null;
/** @description ID of the payment method used in this charge. */
payment_method?: string | null;
/** @description Details about the payment method at the time of the transaction. */
- payment_method_details?: Partial<
- components["schemas"]["payment_method_details"]
- > | null;
+ payment_method_details?:
+ | components["schemas"]["payment_method_details"]
+ | null;
+ radar_options?: components["schemas"]["radar_radar_options"];
/** @description This is the email address that the receipt for this charge was sent to. */
receipt_email?: string | null;
/** @description This is the transaction number that appears on email receipts sent for this charge. This attribute will be `null` until a receipt has been sent. */
@@ -3078,7 +3550,7 @@ export interface components {
* RefundList
* @description A list of refunds that have been applied to the charge.
*/
- refunds: {
+ refunds?: {
/** @description Details about each object. */
data: components["schemas"]["refund"][];
/** @description True if this list has another page of items after this one that can be fetched. */
@@ -3092,15 +3564,11 @@ export interface components {
url: string;
};
/** @description ID of the review associated with this charge if one exists. */
- review?:
- | (Partial & Partial)
- | null;
+ review?: (string | components["schemas"]["review"]) | null;
/** @description Shipping information for the charge. */
- shipping?: Partial | null;
+ shipping?: components["schemas"]["shipping"] | null;
/** @description The transfer ID which created this charge. Only present if the charge came from another Stripe account. [See the Connect documentation](https://stripe.com/docs/connect/destination-charges) for details. */
- source_transfer?:
- | (Partial & Partial)
- | null;
+ source_transfer?: (string | components["schemas"]["transfer"]) | null;
/** @description For card charges, use `statement_descriptor_suffix` instead. Otherwise, you can use this value as the complete description of a charge on your customers’ statements. Must contain at least one letter, maximum 22 characters. */
statement_descriptor?: string | null;
/** @description Provides information about the charge that customers see on their statements. Concatenated with the prefix (shortened descriptor) or statement descriptor that’s set on the account to form the complete statement descriptor. Maximum 22 characters for the concatenated descriptor. */
@@ -3111,11 +3579,9 @@ export interface components {
*/
status: "failed" | "pending" | "succeeded";
/** @description ID of the transfer to the `destination` account (only applicable if the charge was created using the `destination` parameter). */
- transfer?: Partial & Partial;
+ transfer?: string | components["schemas"]["transfer"];
/** @description An optional dictionary including the account to automatically transfer to as part of a destination charge. [See the Connect documentation](https://stripe.com/docs/connect/destination-charges) for details. */
- transfer_data?: Partial<
- components["schemas"]["charge_transfer_data"]
- > | null;
+ transfer_data?: components["schemas"]["charge_transfer_data"] | null;
/** @description A string that identifies this transaction as part of a group. See the [Connect documentation](https://stripe.com/docs/connect/charges-transfers#transfer-options) for details. */
transfer_group?: string | null;
};
@@ -3137,7 +3603,7 @@ export interface components {
/** @description Stripe Radar's evaluation of the riskiness of the payment. Possible values for evaluated payments are between 0 and 100. For non-card payments, card-based payments predating the public assignment of risk scores, or in the event of an error during evaluation, this field will not be present. This field is only available with Radar for Fraud Teams. */
risk_score?: number;
/** @description The ID of the Radar rule that matched the payment, if applicable. */
- rule?: Partial & Partial;
+ rule?: string | components["schemas"]["rule"];
/** @description A human-readable description of the outcome type and reason, designed for you (the recipient of the payment), not your customer. */
seller_message?: string | null;
/** @description Possible values are `authorized`, `manual_review`, `issuer_declined`, `blocked`, and `invalid`. See [understanding declines](https://stripe.com/docs/declines) and [Radar reviews](https://stripe.com/docs/radar/reviews) for details. */
@@ -3148,7 +3614,7 @@ export interface components {
/** @description The amount transferred to the destination account, if specified. By default, the entire charge amount is transferred to the destination account. */
amount?: number | null;
/** @description ID of an existing, connected Stripe account to transfer funds to if `transfer_data` was specified in the charge request. */
- destination: Partial & Partial;
+ destination: string | components["schemas"]["account"];
};
/**
* Session
@@ -3165,13 +3631,13 @@ export interface components {
* You can create a Checkout Session on your server and pass its ID to the
* client to begin Checkout.
*
- * Related guide: [Checkout Server Quickstart](https://stripe.com/docs/payments/checkout/api).
+ * Related guide: [Checkout Quickstart](https://stripe.com/docs/checkout/quickstart).
*/
"checkout.session": {
/** @description When set, provides configuration for actions to take if this Checkout Session expires. */
- after_expiration?: Partial<
- components["schemas"]["payment_pages_checkout_session_after_expiration"]
- > | null;
+ after_expiration?:
+ | components["schemas"]["payment_pages_checkout_session_after_expiration"]
+ | null;
/** @description Enables user redeemable promotion codes. */
allow_promotion_codes?: boolean | null;
/** @description Total of all items before discounts or taxes are applied. */
@@ -3193,13 +3659,18 @@ export interface components {
*/
client_reference_id?: string | null;
/** @description Results of `consent_collection` for this session. */
- consent?: Partial<
- components["schemas"]["payment_pages_checkout_session_consent"]
- > | null;
+ consent?:
+ | components["schemas"]["payment_pages_checkout_session_consent"]
+ | null;
/** @description When set, provides configuration for the Checkout Session to gather active consent from customers. */
- consent_collection?: Partial<
- components["schemas"]["payment_pages_checkout_session_consent_collection"]
- > | null;
+ consent_collection?:
+ | components["schemas"]["payment_pages_checkout_session_consent_collection"]
+ | null;
+ /**
+ * Format: unix-time
+ * @description Time at which the object was created. Measured in seconds since the Unix epoch.
+ */
+ created: number;
/** @description 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). */
currency?: string | null;
/**
@@ -3210,19 +3681,21 @@ export interface components {
* the Session was created.
*/
customer?:
- | (Partial &
- Partial &
- Partial)
+ | (
+ | string
+ | components["schemas"]["customer"]
+ | components["schemas"]["deleted_customer"]
+ )
| null;
/**
* @description Configure whether a Checkout Session creates a Customer when the Checkout Session completes.
* @enum {string|null}
*/
customer_creation?: ("always" | "if_required") | null;
- /** @description The customer details including the customer's tax exempt status and the customer's tax IDs. Only present on Sessions in `payment` or `subscription` mode. */
- customer_details?: Partial<
- components["schemas"]["payment_pages_checkout_session_customer_details"]
- > | null;
+ /** @description The customer details including the customer's tax exempt status and the customer's tax IDs. Only the customer's email is present on Sessions in `setup` mode. */
+ customer_details?:
+ | components["schemas"]["payment_pages_checkout_session_customer_details"]
+ | null;
/**
* @description If provided, this value will be used when the Customer object is created.
* If not provided, customers will be asked to enter their email address.
@@ -3323,16 +3796,19 @@ export interface components {
object: "checkout.session";
/** @description The ID of the PaymentIntent for Checkout Sessions in `payment` mode. */
payment_intent?:
- | (Partial & Partial)
+ | (string | components["schemas"]["payment_intent"])
| null;
/** @description The ID of the Payment Link that created this Session. */
- payment_link?:
- | (Partial & Partial)
- | null;
+ payment_link?: (string | components["schemas"]["payment_link"]) | null;
+ /**
+ * @description Configure whether a Checkout Session should collect a payment method.
+ * @enum {string|null}
+ */
+ payment_method_collection?: ("always" | "if_required") | null;
/** @description Payment-method-specific configuration for the PaymentIntent or SetupIntent of this CheckoutSession. */
- payment_method_options?: Partial<
- components["schemas"]["checkout_session_payment_method_options"]
- > | null;
+ payment_method_options?:
+ | components["schemas"]["checkout_session_payment_method_options"]
+ | null;
/**
* @description A list of the types of payment methods (e.g. card) this Checkout
* Session is allowed to accept.
@@ -3348,21 +3824,19 @@ export interface components {
/** @description The ID of the original expired Checkout Session that triggered the recovery flow. */
recovered_from?: string | null;
/** @description The ID of the SetupIntent for Checkout Sessions in `setup` mode. */
- setup_intent?:
- | (Partial & Partial)
+ setup_intent?: (string | components["schemas"]["setup_intent"]) | null;
+ /** @description When set, provides configuration for Checkout to collect a shipping address from a customer. */
+ shipping_address_collection?:
+ | components["schemas"]["payment_pages_checkout_session_shipping_address_collection"]
+ | null;
+ /** @description The details of the customer cost of shipping, including the customer chosen ShippingRate. */
+ shipping_cost?:
+ | components["schemas"]["payment_pages_checkout_session_shipping_cost"]
| null;
/** @description Shipping information for this Checkout Session. */
- shipping?: Partial | null;
- /** @description When set, provides configuration for Checkout to collect a shipping address from a customer. */
- shipping_address_collection?: Partial<
- components["schemas"]["payment_pages_checkout_session_shipping_address_collection"]
- > | null;
+ shipping_details?: components["schemas"]["shipping"] | null;
/** @description The shipping rate options applied to this Session. */
shipping_options: components["schemas"]["payment_pages_checkout_session_shipping_option"][];
- /** @description The ID of the ShippingRate for Checkout Sessions in `payment` mode. */
- shipping_rate?:
- | (Partial & Partial)
- | null;
/**
* @description The status of the Checkout Session, one of `open`, `complete`, or `expired`.
* @enum {string|null}
@@ -3377,9 +3851,7 @@ export interface components {
*/
submit_type?: ("auto" | "book" | "donate" | "pay") | null;
/** @description The ID of the subscription for Checkout Sessions in `subscription` mode. */
- subscription?:
- | (Partial & Partial)
- | null;
+ subscription?: (string | components["schemas"]["subscription"]) | null;
/**
* @description The URL the customer will be directed to after the payment or
* subscription creation is successful.
@@ -3387,10 +3859,13 @@ export interface components {
success_url: string;
tax_id_collection?: components["schemas"]["payment_pages_checkout_session_tax_id_collection"];
/** @description Tax and discount details for the computed total amount. */
- total_details?: Partial<
- components["schemas"]["payment_pages_checkout_session_total_details"]
- > | null;
- /** @description The URL to the Checkout Session. */
+ total_details?:
+ | components["schemas"]["payment_pages_checkout_session_total_details"]
+ | null;
+ /**
+ * @description The URL to the Checkout Session. Redirect customers to this URL to take them to Checkout. If you’re using [Custom Domains](https://stripe.com/docs/payments/checkout/custom-domains), the URL will use your subdomain. Otherwise, it’ll use `checkout.stripe.com.`
+ * This value is only present when the session is active.
+ */
url?: string | null;
};
/** CheckoutAcssDebitMandateOptions */
@@ -3420,27 +3895,372 @@ export interface components {
*/
currency?: "cad" | "usd";
mandate_options?: components["schemas"]["checkout_acss_debit_mandate_options"];
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none" | "off_session" | "on_session";
/**
* @description Bank account verification method.
* @enum {string}
*/
verification_method?: "automatic" | "instant" | "microdeposits";
};
+ /** CheckoutAffirmPaymentMethodOptions */
+ checkout_affirm_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutAfterpayClearpayPaymentMethodOptions */
+ checkout_afterpay_clearpay_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutAlipayPaymentMethodOptions */
+ checkout_alipay_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutAuBecsDebitPaymentMethodOptions */
+ checkout_au_becs_debit_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutBacsDebitPaymentMethodOptions */
+ checkout_bacs_debit_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none" | "off_session" | "on_session";
+ };
+ /** CheckoutBancontactPaymentMethodOptions */
+ checkout_bancontact_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
/** CheckoutBoletoPaymentMethodOptions */
checkout_boleto_payment_method_options: {
/** @description The number of calendar days before a Boleto voucher expires. For example, if you create a Boleto voucher on Monday and you set expires_after_days to 2, the Boleto voucher will expire on Wednesday at 23:59 America/Sao_Paulo time. */
expires_after_days: number;
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none" | "off_session" | "on_session";
+ };
+ /** CheckoutCardInstallmentsOptions */
+ checkout_card_installments_options: {
+ /** @description Indicates if installments are enabled */
+ enabled?: boolean;
+ };
+ /** CheckoutCardPaymentMethodOptions */
+ checkout_card_payment_method_options: {
+ installments?: components["schemas"]["checkout_card_installments_options"];
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none" | "off_session" | "on_session";
+ /** @description Provides information about a card payment that customers see on their statements. Concatenated with the Kana prefix (shortened Kana descriptor) or Kana statement descriptor that’s set on the account to form the complete statement descriptor. Maximum 22 characters. On card statements, the *concatenation* of both prefix and suffix (including separators) will appear truncated to 22 characters. */
+ statement_descriptor_suffix_kana?: string;
+ /** @description Provides information about a card payment that customers see on their statements. Concatenated with the Kanji prefix (shortened Kanji descriptor) or Kanji statement descriptor that’s set on the account to form the complete statement descriptor. Maximum 17 characters. On card statements, the *concatenation* of both prefix and suffix (including separators) will appear truncated to 17 characters. */
+ statement_descriptor_suffix_kanji?: string;
+ };
+ /** CheckoutCustomerBalanceBankTransferPaymentMethodOptions */
+ checkout_customer_balance_bank_transfer_payment_method_options: {
+ eu_bank_transfer?: components["schemas"]["payment_method_options_customer_balance_eu_bank_account"];
+ /**
+ * @description List of address types that should be returned in the financial_addresses response. If not specified, all valid types will be returned.
+ *
+ * Permitted values include: `sort_code`, `zengin`, `iban`, or `spei`.
+ */
+ requested_address_types?: (
+ | "iban"
+ | "sepa"
+ | "sort_code"
+ | "spei"
+ | "zengin"
+ )[];
+ /**
+ * @description The bank transfer type that this PaymentIntent is allowed to use for funding Permitted values include: `eu_bank_transfer`, `gb_bank_transfer`, `jp_bank_transfer`, or `mx_bank_transfer`.
+ * @enum {string|null}
+ */
+ type?:
+ | (
+ | "eu_bank_transfer"
+ | "gb_bank_transfer"
+ | "jp_bank_transfer"
+ | "mx_bank_transfer"
+ )
+ | null;
+ };
+ /** CheckoutCustomerBalancePaymentMethodOptions */
+ checkout_customer_balance_payment_method_options: {
+ bank_transfer?: components["schemas"]["checkout_customer_balance_bank_transfer_payment_method_options"];
+ /**
+ * @description The funding method type to be used when there are not enough funds in the customer balance. Permitted values include: `bank_transfer`.
+ * @enum {string|null}
+ */
+ funding_type?: "bank_transfer" | null;
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutEpsPaymentMethodOptions */
+ checkout_eps_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutFpxPaymentMethodOptions */
+ checkout_fpx_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutGiropayPaymentMethodOptions */
+ checkout_giropay_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutGrabPayPaymentMethodOptions */
+ checkout_grab_pay_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutIdealPaymentMethodOptions */
+ checkout_ideal_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutKlarnaPaymentMethodOptions */
+ checkout_klarna_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none" | "off_session" | "on_session";
+ };
+ /** CheckoutKonbiniPaymentMethodOptions */
+ checkout_konbini_payment_method_options: {
+ /** @description The number of calendar days (between 1 and 60) after which Konbini payment instructions will expire. For example, if a PaymentIntent is confirmed with Konbini and `expires_after_days` set to 2 on Monday JST, the instructions will expire on Wednesday 23:59:59 JST. */
+ expires_after_days?: number | null;
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
};
/** CheckoutOxxoPaymentMethodOptions */
checkout_oxxo_payment_method_options: {
/** @description 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. */
expires_after_days: number;
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutP24PaymentMethodOptions */
+ checkout_p24_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutPaynowPaymentMethodOptions */
+ checkout_paynow_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutPixPaymentMethodOptions */
+ checkout_pix_payment_method_options: {
+ /** @description The number of seconds after which Pix payment will expire. */
+ expires_after_seconds?: number | null;
+ };
+ /** CheckoutSepaDebitPaymentMethodOptions */
+ checkout_sepa_debit_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none" | "off_session" | "on_session";
};
/** CheckoutSessionPaymentMethodOptions */
checkout_session_payment_method_options: {
acss_debit?: components["schemas"]["checkout_acss_debit_payment_method_options"];
+ affirm?: components["schemas"]["checkout_affirm_payment_method_options"];
+ afterpay_clearpay?: components["schemas"]["checkout_afterpay_clearpay_payment_method_options"];
+ alipay?: components["schemas"]["checkout_alipay_payment_method_options"];
+ au_becs_debit?: components["schemas"]["checkout_au_becs_debit_payment_method_options"];
+ bacs_debit?: components["schemas"]["checkout_bacs_debit_payment_method_options"];
+ bancontact?: components["schemas"]["checkout_bancontact_payment_method_options"];
boleto?: components["schemas"]["checkout_boleto_payment_method_options"];
+ card?: components["schemas"]["checkout_card_payment_method_options"];
+ customer_balance?: components["schemas"]["checkout_customer_balance_payment_method_options"];
+ eps?: components["schemas"]["checkout_eps_payment_method_options"];
+ fpx?: components["schemas"]["checkout_fpx_payment_method_options"];
+ giropay?: components["schemas"]["checkout_giropay_payment_method_options"];
+ grabpay?: components["schemas"]["checkout_grab_pay_payment_method_options"];
+ ideal?: components["schemas"]["checkout_ideal_payment_method_options"];
+ klarna?: components["schemas"]["checkout_klarna_payment_method_options"];
+ konbini?: components["schemas"]["checkout_konbini_payment_method_options"];
oxxo?: components["schemas"]["checkout_oxxo_payment_method_options"];
+ p24?: components["schemas"]["checkout_p24_payment_method_options"];
+ paynow?: components["schemas"]["checkout_paynow_payment_method_options"];
+ pix?: components["schemas"]["checkout_pix_payment_method_options"];
+ sepa_debit?: components["schemas"]["checkout_sepa_debit_payment_method_options"];
+ sofort?: components["schemas"]["checkout_sofort_payment_method_options"];
+ us_bank_account?: components["schemas"]["checkout_us_bank_account_payment_method_options"];
+ };
+ /** CheckoutSofortPaymentMethodOptions */
+ checkout_sofort_payment_method_options: {
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none";
+ };
+ /** CheckoutUsBankAccountPaymentMethodOptions */
+ checkout_us_bank_account_payment_method_options: {
+ financial_connections?: components["schemas"]["linked_account_options_us_bank_account"];
+ /**
+ * @description Indicates that you intend to make future payments with this PaymentIntent's payment method.
+ *
+ * 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.
+ *
+ * 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).
+ * @enum {string}
+ */
+ setup_future_usage?: "none" | "off_session" | "on_session";
+ /**
+ * @description Bank account verification method.
+ * @enum {string}
+ */
+ verification_method?: "automatic" | "instant";
};
/** ConnectCollectionTransfer */
connect_collection_transfer: {
@@ -3449,7 +4269,7 @@ export interface components {
/** @description 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). */
currency: string;
/** @description ID of the account that funds are being collected for. */
- destination: Partial & Partial;
+ destination: string | components["schemas"]["account"];
/** @description Unique identifier for the object. */
id: string;
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
@@ -3504,8 +4324,8 @@ export interface components {
/**
* Coupon
* @description A coupon contains information about a percent-off or amount-off discount you
- * might want to apply to a customer. Coupons may be applied to [invoices](https://stripe.com/docs/api#invoices) or
- * [orders](https://stripe.com/docs/api#create_order_legacy-coupon). Coupons do not work with conventional one-off [charges](https://stripe.com/docs/api#create_charge).
+ * might want to apply to a customer. Coupons may be applied to [subscriptions](https://stripe.com/docs/api#subscriptions), [invoices](https://stripe.com/docs/api#invoices),
+ * [checkout sessions](https://stripe.com/docs/api/checkout/sessions), [quotes](https://stripe.com/docs/api#quotes), and more. Coupons do not work with conventional one-off [charges](https://stripe.com/docs/api#create_charge) or [payment intents](https://stripe.com/docs/api/payment_intents).
*/
coupon: {
/** @description Amount (in the `currency` specified) that will be taken off the subtotal of any invoices for this customer. */
@@ -3518,6 +4338,10 @@ export interface components {
created: number;
/** @description If `amount_off` has been set, the three-letter [ISO code for the currency](https://stripe.com/docs/currencies) of the amount to take off. */
currency?: string | null;
+ /** @description Coupons defined in each available currency option. Each key must be a three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html) and a [supported currency](https://stripe.com/docs/currencies). */
+ currency_options?: {
+ [key: string]: components["schemas"]["coupon_currency_option"];
+ };
/**
* @description One of `forever`, `once`, and `repeating`. Describes how long a customer who applies this coupon will get the discount.
* @enum {string}
@@ -3557,6 +4381,11 @@ export interface components {
/** @description A list of product IDs this coupon applies to */
products: string[];
};
+ /** CouponCurrencyOption */
+ coupon_currency_option: {
+ /** @description Amount (in the `currency` specified) that will be taken off the subtotal of any invoices for this customer. */
+ amount_off: number;
+ };
/**
* CreditNote
* @description Issue a credit note to adjust an invoice's amount after the invoice is finalized.
@@ -3574,13 +4403,13 @@ export interface components {
/** @description 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). */
currency: string;
/** @description ID of the customer. */
- customer: Partial &
- Partial &
- Partial;
+ customer:
+ | string
+ | components["schemas"]["customer"]
+ | components["schemas"]["deleted_customer"];
/** @description Customer balance transaction related to this credit note. */
customer_balance_transaction?:
- | (Partial &
- Partial)
+ | (string | components["schemas"]["customer_balance_transaction"])
| null;
/** @description The integer amount in %s representing the total amount of discount that was credited. */
discount_amount: number;
@@ -3589,7 +4418,7 @@ export interface components {
/** @description Unique identifier for the object. */
id: string;
/** @description ID of the invoice. */
- invoice: Partial & Partial;
+ invoice: string | components["schemas"]["invoice"];
/**
* CreditNoteLinesList
* @description Line items that make up the credit note
@@ -3637,20 +4466,22 @@ export interface components {
)
| null;
/** @description Refund related to this credit note. */
- refund?:
- | (Partial & Partial)
- | null;
+ refund?: (string | components["schemas"]["refund"]) | null;
/**
* @description Status of this credit note, one of `issued` or `void`. Learn more about [voiding credit notes](https://stripe.com/docs/billing/invoices/credit-notes#voiding).
* @enum {string}
*/
status: "issued" | "void";
- /** @description The integer amount in %s representing the amount of the credit note, excluding tax and invoice level discounts. */
+ /** @description The integer amount in %s representing the amount of the credit note, excluding exclusive tax and invoice level discounts. */
subtotal: number;
+ /** @description The integer amount in %s representing the amount of the credit note, excluding all tax and invoice level discounts. */
+ subtotal_excluding_tax?: number | null;
/** @description The aggregate amounts calculated per tax rate for all line items. */
tax_amounts: components["schemas"]["credit_note_tax_amount"][];
/** @description The integer amount in %s representing the total amount of the credit note, including tax and all discount. */
total: number;
+ /** @description The integer amount in %s representing the total amount of the credit note, excluding tax, but including discounts. */
+ total_excluding_tax?: number | null;
/**
* @description Type of this credit note, one of `pre_payment` or `post_payment`. A `pre_payment` credit note means it was issued when the invoice was open. A `post_payment` credit note means it was issued when the invoice was paid.
* @enum {string}
@@ -3666,6 +4497,8 @@ export interface components {
credit_note_line_item: {
/** @description The integer amount in %s representing the gross amount being credited for this line item, excluding (exclusive) tax and discounts. */
amount: number;
+ /** @description The integer amount in %s representing the amount being credited for this line item, excluding all tax and discounts. */
+ amount_excluding_tax?: number | null;
/** @description Description of the item being credited. */
description?: string | null;
/** @description The integer amount in %s representing the discount being credited for this line item. */
@@ -3701,6 +4534,11 @@ export interface components {
* @description Same as `unit_amount`, but contains a decimal value with at most 12 decimal places.
*/
unit_amount_decimal?: string | null;
+ /**
+ * Format: decimal
+ * @description The amount in %s representing the unit amount being credited for this line item, excluding all tax and discounts.
+ */
+ unit_amount_excluding_tax?: string | null;
};
/** CreditNoteTaxAmount */
credit_note_tax_amount: {
@@ -3709,7 +4547,35 @@ export interface components {
/** @description Whether this tax amount is inclusive or exclusive. */
inclusive: boolean;
/** @description The tax rate that was applied to get this tax amount. */
- tax_rate: Partial & Partial;
+ tax_rate: string | components["schemas"]["tax_rate"];
+ };
+ /** CurrencyOption */
+ currency_option: {
+ /** @description When set, provides configuration for the amount to be adjusted by the customer during Checkout Sessions and Payment Links. */
+ custom_unit_amount?: components["schemas"]["custom_unit_amount"] | null;
+ /**
+ * @description Specifies whether the price is considered inclusive of taxes or exclusive of taxes. One of `inclusive`, `exclusive`, or `unspecified`. Once specified as either `inclusive` or `exclusive`, it cannot be changed.
+ * @enum {string|null}
+ */
+ tax_behavior?: ("exclusive" | "inclusive" | "unspecified") | null;
+ /** @description Each element represents a pricing tier. This parameter requires `billing_scheme` to be set to `tiered`. See also the documentation for `billing_scheme`. */
+ tiers?: components["schemas"]["price_tier"][];
+ /** @description The unit amount in %s to be charged, represented as a whole integer if possible. Only set if `billing_scheme=per_unit`. */
+ unit_amount?: number | null;
+ /**
+ * Format: decimal
+ * @description The unit amount in %s to be charged, represented as a decimal string with at most 12 decimal places. Only set if `billing_scheme=per_unit`.
+ */
+ unit_amount_decimal?: string | null;
+ };
+ /** CustomUnitAmount */
+ custom_unit_amount: {
+ /** @description The maximum unit amount the customer can specify for this item. */
+ maximum?: number | null;
+ /** @description The minimum unit amount the customer can specify for this item. Must be at least the minimum charge amount. */
+ minimum?: number | null;
+ /** @description The starting unit amount which can be updated by the customer. */
+ preset?: number | null;
};
/**
* Customer
@@ -3719,9 +4585,11 @@ export interface components {
*/
customer: {
/** @description The customer's address. */
- address?: Partial | null;
+ address?: components["schemas"]["address"] | null;
/** @description Current balance, if any, being stored on the customer. If negative, the customer has credit to apply to their next invoice. If positive, the customer has an amount owed that will be added to their next invoice. The balance does not refer to any unpaid invoices; it solely takes into account amounts that have yet to be successfully applied to any invoice. This balance is only taken into account as invoices are finalized. */
balance?: number;
+ /** @description The current funds being held by Stripe on behalf of the customer. These funds can be applied towards payment intents with source "cash_balance".The settings[reconciliation_mode] field describes whether these funds are applied to such payment intents manually or automatically. */
+ cash_balance?: components["schemas"]["cash_balance"] | null;
/**
* Format: unix-time
* @description Time at which the object was created. Measured in seconds since the Unix epoch.
@@ -3735,12 +4603,12 @@ export interface components {
* If you are using payment methods created via the PaymentMethods API, see the [invoice_settings.default_payment_method](https://stripe.com/docs/api/customers/object#customer_object-invoice_settings-default_payment_method) field instead.
*/
default_source?:
- | (Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial)
+ | (
+ | string
+ | components["schemas"]["bank_account"]
+ | components["schemas"]["card"]
+ | components["schemas"]["source"]
+ )
| null;
/**
* @description When the customer's latest invoice is billed by charging automatically, `delinquent` is `true` if the invoice's latest charge failed. When the customer's latest invoice is billed by sending an invoice, `delinquent` is `true` if the invoice isn't paid by its due date.
@@ -3751,11 +4619,13 @@ export interface components {
/** @description An arbitrary string attached to the object. Often useful for displaying to users. */
description?: string | null;
/** @description Describes the current discount active on the customer, if there is one. */
- discount?: Partial | null;
+ discount?: components["schemas"]["discount"] | null;
/** @description The customer's email address. */
email?: string | null;
/** @description Unique identifier for the object. */
id: string;
+ /** @description The current multi-currency balances, if any, being stored on the customer.If positive in a currency, the customer has a credit to apply to their next invoice denominated in that currency.If negative, the customer has an amount owed that will be added to their next invoice denominated in that currency. These balances do not refer to any unpaid invoices.They solely track amounts that have yet to be successfully applied to any invoice. A balance in a particular currency is only applied to any invoice as an invoice in that currency is finalized. */
+ invoice_credit_balance?: { [key: string]: number };
/** @description The prefix for the customer used to generate unique invoice numbers. */
invoice_prefix?: string | null;
invoice_settings?: components["schemas"]["invoice_setting_customer_setting"];
@@ -3777,18 +4647,18 @@ export interface components {
/** @description The customer's preferred locales (languages), ordered by preference. */
preferred_locales?: string[] | null;
/** @description Mailing and shipping address for the customer. Appears on invoices emailed to this customer. */
- shipping?: Partial | null;
+ shipping?: components["schemas"]["shipping"] | null;
/**
* ApmsSourcesSourceList
* @description The customer's payment sources, if any.
*/
sources?: {
/** @description Details about each object. */
- data: (Partial &
- Partial &
- Partial &
- Partial &
- Partial)[];
+ data: (
+ | components["schemas"]["bank_account"]
+ | components["schemas"]["card"]
+ | components["schemas"]["source"]
+ )[];
/** @description True if this list has another page of items after this one that can be fetched. */
has_more: boolean;
/**
@@ -3839,6 +4709,10 @@ export interface components {
/** @description The URL where this list can be accessed. */
url: string;
};
+ /** @description ID of the test clock this customer belongs to. */
+ test_clock?:
+ | (string | components["schemas"]["test_helpers.test_clock"])
+ | null;
};
/** customer_acceptance */
customer_acceptance: {
@@ -3855,6 +4729,57 @@ export interface components {
*/
type: "offline" | "online";
};
+ /** CustomerBalanceCustomerBalanceSettings */
+ customer_balance_customer_balance_settings: {
+ /**
+ * @description The configuration for how funds that land in the customer cash balance are reconciled.
+ * @enum {string}
+ */
+ reconciliation_mode: "automatic" | "manual";
+ };
+ /** CustomerBalanceResourceCashBalanceTransactionResourceAppliedToPaymentTransaction */
+ customer_balance_resource_cash_balance_transaction_resource_applied_to_payment_transaction: {
+ /** @description The [Payment Intent](https://stripe.com/docs/api/payment_intents/object) that funds were applied to. */
+ payment_intent: string | components["schemas"]["payment_intent"];
+ };
+ /** CustomerBalanceResourceCashBalanceTransactionResourceFundedTransaction */
+ customer_balance_resource_cash_balance_transaction_resource_funded_transaction: {
+ bank_transfer: components["schemas"]["customer_balance_resource_cash_balance_transaction_resource_funded_transaction_resource_bank_transfer"];
+ };
+ /** CustomerBalanceResourceCashBalanceTransactionResourceFundedTransactionResourceBankTransfer */
+ customer_balance_resource_cash_balance_transaction_resource_funded_transaction_resource_bank_transfer: {
+ eu_bank_transfer?: components["schemas"]["customer_balance_resource_cash_balance_transaction_resource_funded_transaction_resource_bank_transfer_resource_eu_bank_transfer"];
+ /** @description The user-supplied reference field on the bank transfer. */
+ reference?: string | null;
+ /**
+ * @description The funding method type used to fund the customer balance. Permitted values include: `eu_bank_transfer`, `gb_bank_transfer`, `jp_bank_transfer`, or `mx_bank_transfer`.
+ * @enum {string}
+ */
+ type:
+ | "eu_bank_transfer"
+ | "gb_bank_transfer"
+ | "jp_bank_transfer"
+ | "mx_bank_transfer";
+ };
+ /** CustomerBalanceResourceCashBalanceTransactionResourceFundedTransactionResourceBankTransferResourceEuBankTransfer */
+ customer_balance_resource_cash_balance_transaction_resource_funded_transaction_resource_bank_transfer_resource_eu_bank_transfer: {
+ /** @description The BIC of the bank of the sender of the funding. */
+ bic?: string | null;
+ /** @description The last 4 digits of the IBAN of the sender of the funding. */
+ iban_last4?: string | null;
+ /** @description The full name of the sender, as supplied by the sending bank. */
+ sender_name?: string | null;
+ };
+ /** CustomerBalanceResourceCashBalanceTransactionResourceRefundedFromPaymentTransaction */
+ customer_balance_resource_cash_balance_transaction_resource_refunded_from_payment_transaction: {
+ /** @description The [Refund](https://stripe.com/docs/api/refunds/object) that moved these funds into the customer's cash balance. */
+ refund: string | components["schemas"]["refund"];
+ };
+ /** CustomerBalanceResourceCashBalanceTransactionResourceUnappliedFromPaymentTransaction */
+ customer_balance_resource_cash_balance_transaction_resource_unapplied_from_payment_transaction: {
+ /** @description The [Payment Intent](https://stripe.com/docs/api/payment_intents/object) that funds were unapplied from. */
+ payment_intent: string | components["schemas"]["payment_intent"];
+ };
/**
* CustomerBalanceTransaction
* @description Each customer has a [`balance`](https://stripe.com/docs/api/customers/object#customer_object-balance) value,
@@ -3873,13 +4798,11 @@ export interface components {
*/
created: number;
/** @description The ID of the credit note (if any) related to the transaction. */
- credit_note?:
- | (Partial & Partial)
- | null;
+ credit_note?: (string | components["schemas"]["credit_note"]) | null;
/** @description 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). */
currency: string;
/** @description The ID of the customer the transaction belongs to. */
- customer: Partial & Partial;
+ customer: string | components["schemas"]["customer"];
/** @description An arbitrary string attached to the object. Often useful for displaying to users. */
description?: string | null;
/** @description The customer's `balance` after the transaction was applied. A negative value decreases the amount due on the customer's next invoice. A positive value increases the amount due on the customer's next invoice. */
@@ -3887,9 +4810,7 @@ export interface components {
/** @description Unique identifier for the object. */
id: string;
/** @description The ID of the invoice (if any) related to the transaction. */
- invoice?:
- | (Partial & Partial)
- | null;
+ invoice?: (string | components["schemas"]["invoice"]) | null;
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
livemode: boolean;
/** @description 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. */
@@ -3914,6 +4835,52 @@ export interface components {
| "unapplied_from_invoice"
| "unspent_receiver_credit";
};
+ /**
+ * CustomerCashBalanceTransaction
+ * @description Customers with certain payments enabled have a cash balance, representing funds that were paid
+ * by the customer to a merchant, but have not yet been allocated to a payment. Cash Balance Transactions
+ * represent when funds are moved into or out of this balance. This includes funding by the customer, allocation
+ * to payments, and refunds to the customer.
+ */
+ customer_cash_balance_transaction: {
+ applied_to_payment?: components["schemas"]["customer_balance_resource_cash_balance_transaction_resource_applied_to_payment_transaction"];
+ /**
+ * Format: unix-time
+ * @description Time at which the object was created. Measured in seconds since the Unix epoch.
+ */
+ created: number;
+ /** @description 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). */
+ currency: string;
+ /** @description The customer whose available cash balance changed as a result of this transaction. */
+ customer: string | components["schemas"]["customer"];
+ /** @description The total available cash balance for the specified currency after this transaction was applied. Represented in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). */
+ ending_balance: number;
+ funded?: components["schemas"]["customer_balance_resource_cash_balance_transaction_resource_funded_transaction"];
+ /** @description Unique identifier for the object. */
+ id: string;
+ /** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
+ livemode: boolean;
+ /** @description The amount by which the cash balance changed, represented in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). A positive value represents funds being added to the cash balance, a negative value represents funds being removed from the cash balance. */
+ net_amount: number;
+ /**
+ * @description String representing the object's type. Objects of the same type share the same value.
+ * @enum {string}
+ */
+ object: "customer_cash_balance_transaction";
+ refunded_from_payment?: components["schemas"]["customer_balance_resource_cash_balance_transaction_resource_refunded_from_payment_transaction"];
+ /**
+ * @description The type of the cash balance transaction. One of `applied_to_payment`, `unapplied_from_payment`, `refunded_from_payment`, `funded`, `return_initiated`, or `return_canceled`. New types may be added in future. See [Customer Balance](https://stripe.com/docs/payments/customer-balance#types) to learn more about these types.
+ * @enum {string}
+ */
+ type:
+ | "applied_to_payment"
+ | "funded"
+ | "refunded_from_payment"
+ | "return_canceled"
+ | "return_initiated"
+ | "unapplied_from_payment";
+ unapplied_from_payment?: components["schemas"]["customer_balance_resource_cash_balance_transaction_resource_unapplied_from_payment_transaction"];
+ };
/** CustomerTax */
customer_tax: {
/**
@@ -3928,7 +4895,7 @@ export interface components {
/** @description A recent IP address of the customer used for tax reporting and tax location inference. */
ip_address?: string | null;
/** @description The customer's location as identified by Stripe Tax. */
- location?: Partial | null;
+ location?: components["schemas"]["customer_tax_location"] | null;
};
/** CustomerTaxLocation */
customer_tax_location: {
@@ -3961,8 +4928,8 @@ export interface components {
*/
object: "account";
};
- /** AlipayDeletedAccount */
- deleted_alipay_account: {
+ /** DeletedApplePayDomain */
+ deleted_apple_pay_domain: {
/**
* @description Always true for a deleted object
* @enum {boolean}
@@ -3974,10 +4941,10 @@ export interface components {
* @description String representing the object's type. Objects of the same type share the same value.
* @enum {string}
*/
- object: "alipay_account";
+ object: "apple_pay_domain";
};
- /** DeletedApplePayDomain */
- deleted_apple_pay_domain: {
+ /** DeletedApplication */
+ deleted_application: {
/**
* @description Always true for a deleted object
* @enum {boolean}
@@ -3985,11 +4952,13 @@ export interface components {
deleted: true;
/** @description Unique identifier for the object. */
id: string;
+ /** @description The name of the application. */
+ name?: string | null;
/**
* @description String representing the object's type. Objects of the same type share the same value.
* @enum {string}
*/
- object: "apple_pay_domain";
+ object: "application";
};
/** DeletedBankAccount */
deleted_bank_account: {
@@ -4008,21 +4977,6 @@ export interface components {
*/
object: "bank_account";
};
- /** BitcoinDeletedReceiver */
- deleted_bitcoin_receiver: {
- /**
- * @description Always true for a deleted object
- * @enum {boolean}
- */
- deleted: true;
- /** @description Unique identifier for the object. */
- id: string;
- /**
- * @description String representing the object's type. Objects of the same type share the same value.
- * @enum {string}
- */
- object: "bitcoin_receiver";
- };
/** DeletedCard */
deleted_card: {
/** @description Three-letter [ISO code for the currency](https://stripe.com/docs/payouts) paid out to the bank account. */
@@ -4077,9 +5031,11 @@ export interface components {
coupon: components["schemas"]["coupon"];
/** @description The ID of the customer associated with this discount. */
customer?:
- | (Partial &
- Partial &
- Partial)
+ | (
+ | string
+ | components["schemas"]["customer"]
+ | components["schemas"]["deleted_customer"]
+ )
| null;
/**
* @description Always true for a deleted object
@@ -4099,7 +5055,7 @@ export interface components {
object: "discount";
/** @description The promotion code applied to create this discount. */
promotion_code?:
- | (Partial & Partial)
+ | (string | components["schemas"]["promotion_code"])
| null;
/**
* Format: unix-time
@@ -4110,10 +5066,9 @@ export interface components {
subscription?: string | null;
};
/** Polymorphic */
- deleted_external_account: Partial<
- components["schemas"]["deleted_bank_account"]
- > &
- Partial;
+ deleted_external_account:
+ | components["schemas"]["deleted_bank_account"]
+ | components["schemas"]["deleted_card"];
/** DeletedInvoice */
deleted_invoice: {
/**
@@ -4145,12 +5100,9 @@ export interface components {
object: "invoiceitem";
};
/** Polymorphic */
- deleted_payment_source: Partial<
- components["schemas"]["deleted_alipay_account"]
- > &
- Partial &
- Partial &
- Partial;
+ deleted_payment_source:
+ | components["schemas"]["deleted_bank_account"]
+ | components["schemas"]["deleted_card"];
/** DeletedPerson */
deleted_person: {
/**
@@ -4241,8 +5193,8 @@ export interface components {
*/
object: "radar.value_list_item";
};
- /** DeletedTransferRecipient */
- deleted_recipient: {
+ /** DeletedSku */
+ deleted_sku: {
/**
* @description Always true for a deleted object
* @enum {boolean}
@@ -4254,10 +5206,10 @@ export interface components {
* @description String representing the object's type. Objects of the same type share the same value.
* @enum {string}
*/
- object: "recipient";
+ object: "sku";
};
- /** DeletedSku */
- deleted_sku: {
+ /** DeletedSubscriptionItem */
+ deleted_subscription_item: {
/**
* @description Always true for a deleted object
* @enum {boolean}
@@ -4269,10 +5221,10 @@ export interface components {
* @description String representing the object's type. Objects of the same type share the same value.
* @enum {string}
*/
- object: "sku";
+ object: "subscription_item";
};
- /** DeletedSubscriptionItem */
- deleted_subscription_item: {
+ /** deleted_tax_id */
+ deleted_tax_id: {
/**
* @description Always true for a deleted object
* @enum {boolean}
@@ -4284,10 +5236,10 @@ export interface components {
* @description String representing the object's type. Objects of the same type share the same value.
* @enum {string}
*/
- object: "subscription_item";
+ object: "tax_id";
};
- /** deleted_tax_id */
- deleted_tax_id: {
+ /** TerminalConfigurationDeletedConfiguration */
+ "deleted_terminal.configuration": {
/**
* @description Always true for a deleted object
* @enum {boolean}
@@ -4299,7 +5251,7 @@ export interface components {
* @description String representing the object's type. Objects of the same type share the same value.
* @enum {string}
*/
- object: "tax_id";
+ object: "terminal.configuration";
};
/** TerminalLocationDeletedLocation */
"deleted_terminal.location": {
@@ -4331,6 +5283,21 @@ export interface components {
*/
object: "terminal.reader";
};
+ /** DeletedTestClock */
+ "deleted_test_helpers.test_clock": {
+ /**
+ * @description Always true for a deleted object
+ * @enum {boolean}
+ */
+ deleted: true;
+ /** @description Unique identifier for the object. */
+ id: string;
+ /**
+ * @description String representing the object's type. Objects of the same type share the same value.
+ * @enum {string}
+ */
+ object: "test_helpers.test_clock";
+ };
/** NotificationWebhookEndpointDeleted */
deleted_webhook_endpoint: {
/**
@@ -4346,22 +5313,10 @@ export interface components {
*/
object: "webhook_endpoint";
};
- /** DeliveryEstimate */
- delivery_estimate: {
- /** @description If `type` is `"exact"`, `date` will be the expected delivery date in the format YYYY-MM-DD. */
- date?: string;
- /** @description If `type` is `"range"`, `earliest` will be be the earliest delivery date in the format YYYY-MM-DD. */
- earliest?: string;
- /** @description If `type` is `"range"`, `latest` will be the latest delivery date in the format YYYY-MM-DD. */
- latest?: string;
- /** @description The type of estimate. Must be either `"range"` or `"exact"`. */
- type: string;
- };
/**
* Discount
- * @description A discount represents the actual application of a coupon to a particular
- * customer. It contains information about when the discount began and when it
- * will end.
+ * @description A discount represents the actual application of a [coupon](https://stripe.com/docs/api#coupons) or [promotion code](https://stripe.com/docs/api#promotion_codes).
+ * It contains information about when the discount began, when it will end, and what it is applied to.
*
* Related guide: [Applying Discounts to Subscriptions](https://stripe.com/docs/billing/subscriptions/discounts).
*/
@@ -4371,9 +5326,11 @@ export interface components {
coupon: components["schemas"]["coupon"];
/** @description The ID of the customer associated with this discount. */
customer?:
- | (Partial &
- Partial &
- Partial)
+ | (
+ | string
+ | components["schemas"]["customer"]
+ | components["schemas"]["deleted_customer"]
+ )
| null;
/**
* Format: unix-time
@@ -4393,7 +5350,7 @@ export interface components {
object: "discount";
/** @description The promotion code applied to create this discount. */
promotion_code?:
- | (Partial & Partial)
+ | (string | components["schemas"]["promotion_code"])
| null;
/**
* Format: unix-time
@@ -4408,9 +5365,10 @@ export interface components {
/** @description The amount, in %s, of the discount. */
amount: number;
/** @description The discount that was applied to get this discount amount. */
- discount: Partial &
- Partial &
- Partial;
+ discount:
+ | string
+ | components["schemas"]["discount"]
+ | components["schemas"]["deleted_discount"];
};
/**
* Dispute
@@ -4428,7 +5386,7 @@ export interface components {
/** @description List of zero, one, or two balance transactions that show funds withdrawn and reinstated to your Stripe account as a result of this dispute. */
balance_transactions: components["schemas"]["balance_transaction"][];
/** @description ID of the charge that was disputed. */
- charge: Partial & Partial;
+ charge: string | components["schemas"]["charge"];
/**
* Format: unix-time
* @description Time at which the object was created. Measured in seconds since the Unix epoch.
@@ -4453,7 +5411,7 @@ export interface components {
object: "dispute";
/** @description ID of the PaymentIntent that was disputed. */
payment_intent?:
- | (Partial & Partial)
+ | (string | components["schemas"]["payment_intent"])
| null;
/** @description Reason given by cardholder for dispute. Possible values are `bank_cannot_process`, `check_returned`, `credit_not_processed`, `customer_initiated`, `debit_not_authorized`, `duplicate`, `fraudulent`, `general`, `incorrect_account_details`, `insufficient_funds`, `product_not_received`, `product_unacceptable`, `subscription_canceled`, or `unrecognized`. Read more about [dispute reasons](https://stripe.com/docs/disputes/categories). */
reason: string;
@@ -4478,17 +5436,13 @@ export interface components {
/** @description The billing address provided by the customer. */
billing_address?: string | null;
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) Your subscription cancellation policy, as shown to the customer. */
- cancellation_policy?:
- | (Partial & Partial)
- | null;
+ cancellation_policy?: (string | components["schemas"]["file"]) | null;
/** @description An explanation of how and when the customer was shown your refund policy prior to purchase. */
cancellation_policy_disclosure?: string | null;
/** @description A justification for why the customer's subscription was not canceled. */
cancellation_rebuttal?: string | null;
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) Any communication with the customer that you feel is relevant to your case. Examples include emails proving that the customer received the product or service, or demonstrating their use of or satisfaction with the product or service. */
- customer_communication?:
- | (Partial & Partial)
- | null;
+ customer_communication?: (string | components["schemas"]["file"]) | null;
/** @description The email address of the customer. */
customer_email_address?: string | null;
/** @description The name of the customer. */
@@ -4496,12 +5450,10 @@ export interface components {
/** @description The IP address that the customer used when making the purchase. */
customer_purchase_ip?: string | null;
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) A relevant document or contract showing the customer's signature. */
- customer_signature?:
- | (Partial & Partial)
- | null;
+ customer_signature?: (string | components["schemas"]["file"]) | null;
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) Documentation for the prior charge that can uniquely identify the charge, such as a receipt, shipping label, work order, etc. This document should be paired with a similar document from the disputed payment that proves the two payments are separate. */
duplicate_charge_documentation?:
- | (Partial & Partial)
+ | (string | components["schemas"]["file"])
| null;
/** @description An explanation of the difference between the disputed charge versus the prior charge that appears to be a duplicate. */
duplicate_charge_explanation?: string | null;
@@ -4510,13 +5462,9 @@ export interface components {
/** @description A description of the product or service that was sold. */
product_description?: string | null;
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) Any receipt or message sent to the customer notifying them of the charge. */
- receipt?:
- | (Partial & Partial)
- | null;
+ receipt?: (string | components["schemas"]["file"]) | null;
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) Your refund policy, as shown to the customer. */
- refund_policy?:
- | (Partial & Partial)
- | null;
+ refund_policy?: (string | components["schemas"]["file"]) | null;
/** @description Documentation demonstrating that the customer was shown your refund policy prior to purchase. */
refund_policy_disclosure?: string | null;
/** @description A justification for why the customer is not entitled to a refund. */
@@ -4524,9 +5472,7 @@ export interface components {
/** @description The date on which the customer received or began receiving the purchased service, in a clear human-readable format. */
service_date?: string | null;
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) Documentation showing proof that a service was provided to the customer. This could include a copy of a signed contract, work order, or other form of written agreement. */
- service_documentation?:
- | (Partial & Partial)
- | null;
+ service_documentation?: (string | components["schemas"]["file"]) | null;
/** @description The address to which a physical product was shipped. You should try to include as complete address information as possible. */
shipping_address?: string | null;
/** @description The delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc. If multiple carriers were used for this purchase, please separate them with commas. */
@@ -4534,15 +5480,11 @@ export interface components {
/** @description The date on which a physical product began its route to the shipping address, in a clear human-readable format. */
shipping_date?: string | null;
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) Documentation showing proof that a product was shipped to the customer at the same address the customer provided to you. This could include a copy of the shipment receipt, shipping label, etc. It should show the customer's full shipping address, if possible. */
- shipping_documentation?:
- | (Partial & Partial)
- | null;
+ shipping_documentation?: (string | components["schemas"]["file"]) | null;
/** @description The tracking number for a physical product, obtained from the delivery service. If multiple tracking numbers were generated for this purchase, please separate them with commas. */
shipping_tracking_number?: string | null;
/** @description (ID of a [file upload](https://stripe.com/docs/guides/file-upload)) Any additional evidence or statements. */
- uncategorized_file?:
- | (Partial & Partial)
- | null;
+ uncategorized_file?: (string | components["schemas"]["file"]) | null;
/** @description Any additional evidence or statements. */
uncategorized_text?: string | null;
};
@@ -4560,6 +5502,16 @@ export interface components {
/** @description The number of times evidence has been submitted. Typically, you may only submit evidence once. */
submission_count: number;
};
+ /** EmailSent */
+ email_sent: {
+ /**
+ * Format: unix-time
+ * @description The timestamp when the email was sent.
+ */
+ email_sent_at: number;
+ /** @description The recipient's email address. */
+ email_sent_to: string;
+ };
/** EphemeralKey */
ephemeral_key: {
/**
@@ -4643,9 +5595,7 @@ export interface components {
/** @description Number of webhooks that have yet to be successfully delivered (i.e., to return a 20x response) to the URLs you've specified. */
pending_webhooks: number;
/** @description Information on the API request that instigated the event. */
- request?: Partial<
- components["schemas"]["notification_event_request"]
- > | null;
+ request?: components["schemas"]["notification_event_request"] | null;
/** @description Description of the event (e.g., `invoice.created` or `charge.refunded`). */
type: string;
};
@@ -4675,8 +5625,9 @@ export interface components {
rates: { [key: string]: number };
};
/** Polymorphic */
- external_account: Partial &
- Partial;
+ external_account:
+ | components["schemas"]["bank_account"]
+ | components["schemas"]["card"];
/** Fee */
fee: {
/** @description Amount of the fee, in cents. */
@@ -4703,8 +5654,7 @@ export interface components {
amount: number;
/** @description Balance transaction that describes the impact on your account balance. */
balance_transaction?:
- | (Partial &
- Partial)
+ | (string | components["schemas"]["balance_transaction"])
| null;
/**
* Format: unix-time
@@ -4714,7 +5664,7 @@ export interface components {
/** @description 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). */
currency: string;
/** @description ID of the application fee that was refunded. */
- fee: Partial & Partial;
+ fee: string | components["schemas"]["application_fee"];
/** @description Unique identifier for the object. */
id: string;
/** @description 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. */
@@ -4790,7 +5740,8 @@ export interface components {
| "pci_document"
| "selfie"
| "sigma_scheduled_query"
- | "tax_document_user_upload";
+ | "tax_document_user_upload"
+ | "terminal_reader_splashscreen";
/** @description The size in bytes of the file object. */
size: number;
/** @description A user friendly title for the document. */
@@ -4820,7 +5771,7 @@ export interface components {
*/
expires_at?: number | null;
/** @description The file object this link points to. */
- file: Partial & Partial;
+ file: string | components["schemas"]["file"];
/** @description Unique identifier for the object. */
id: string;
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
@@ -4835,6 +5786,203 @@ export interface components {
/** @description The publicly accessible URL to download the file. */
url?: string | null;
};
+ /**
+ * BankConnectionsResourceLinkedAccount
+ * @description A Financial Connections Account represents an account that exists outside of Stripe, to which you have been granted some degree of access.
+ */
+ "financial_connections.account": {
+ /** @description The account holder that this account belongs to. */
+ account_holder?:
+ | components["schemas"]["bank_connections_resource_accountholder"]
+ | null;
+ /** @description The most recent information about the account's balance. */
+ balance?:
+ | components["schemas"]["bank_connections_resource_balance"]
+ | null;
+ /** @description The state of the most recent attempt to refresh the account balance. */
+ balance_refresh?:
+ | components["schemas"]["bank_connections_resource_balance_refresh"]
+ | null;
+ /**
+ * @description The type of the account. Account category is further divided in `subcategory`.
+ * @enum {string}
+ */
+ category: "cash" | "credit" | "investment" | "other";
+ /**
+ * Format: unix-time
+ * @description Time at which the object was created. Measured in seconds since the Unix epoch.
+ */
+ created: number;
+ /** @description A human-readable name that has been assigned to this account, either by the account holder or by the institution. */
+ display_name?: string | null;
+ /** @description Unique identifier for the object. */
+ id: string;
+ /** @description The name of the institution that holds this account. */
+ institution_name: string;
+ /** @description The last 4 digits of the account number. If present, this will be 4 numeric characters. */
+ last4?: string | null;
+ /** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
+ livemode: boolean;
+ /**
+ * @description String representing the object's type. Objects of the same type share the same value.
+ * @enum {string}
+ */
+ object: "financial_connections.account";
+ /** @description The most recent information about the account's owners. */
+ ownership?:
+ | (
+ | string
+ | components["schemas"]["financial_connections.account_ownership"]
+ )
+ | null;
+ /** @description The state of the most recent attempt to refresh the account owners. */
+ ownership_refresh?:
+ | components["schemas"]["bank_connections_resource_ownership_refresh"]
+ | null;
+ /** @description The list of permissions granted by this account. */
+ permissions?:
+ | ("balances" | "ownership" | "payment_method" | "transactions")[]
+ | null;
+ /**
+ * @description The status of the link to the account.
+ * @enum {string}
+ */
+ status: "active" | "disconnected" | "inactive";
+ /**
+ * @description If `category` is `cash`, one of:
+ *
+ * - `checking`
+ * - `savings`
+ * - `other`
+ *
+ * If `category` is `credit`, one of:
+ *
+ * - `mortgage`
+ * - `line_of_credit`
+ * - `credit_card`
+ * - `other`
+ *
+ * If `category` is `investment` or `other`, this will be `other`.
+ * @enum {string}
+ */
+ subcategory:
+ | "checking"
+ | "credit_card"
+ | "line_of_credit"
+ | "mortgage"
+ | "other"
+ | "savings";
+ /** @description The [PaymentMethod type](https://stripe.com/docs/api/payment_methods/object#payment_method_object-type)(s) that can be created from this account. */
+ supported_payment_method_types: ("link" | "us_bank_account")[];
+ };
+ /** BankConnectionsResourceOwner */
+ "financial_connections.account_owner": {
+ /** @description The email address of the owner. */
+ email?: string | null;
+ /** @description Unique identifier for the object. */
+ id: string;
+ /** @description The full name of the owner. */
+ name: string;
+ /**
+ * @description String representing the object's type. Objects of the same type share the same value.
+ * @enum {string}
+ */
+ object: "financial_connections.account_owner";
+ /** @description The ownership object that this owner belongs to. */
+ ownership: string;
+ /** @description The raw phone number of the owner. */
+ phone?: string | null;
+ /** @description The raw physical address of the owner. */
+ raw_address?: string | null;
+ /**
+ * Format: unix-time
+ * @description The timestamp of the refresh that updated this owner.
+ */
+ refreshed_at?: number | null;
+ };
+ /**
+ * BankConnectionsResourceOwnership
+ * @description Describes a snapshot of the owners of an account at a particular point in time.
+ */
+ "financial_connections.account_ownership": {
+ /**
+ * Format: unix-time
+ * @description Time at which the object was created. Measured in seconds since the Unix epoch.
+ */
+ created: number;
+ /** @description Unique identifier for the object. */
+ id: string;
+ /**
+ * @description String representing the object's type. Objects of the same type share the same value.
+ * @enum {string}
+ */
+ object: "financial_connections.account_ownership";
+ /**
+ * BankConnectionsResourceOwnerList
+ * @description A paginated list of owners for this account.
+ */
+ owners: {
+ /** @description Details about each object. */
+ data: components["schemas"]["financial_connections.account_owner"][];
+ /** @description True if this list has another page of items after this one that can be fetched. */
+ has_more: boolean;
+ /**
+ * @description String representing the object's type. Objects of the same type share the same value. Always has the value `list`.
+ * @enum {string}
+ */
+ object: "list";
+ /** @description The URL where this list can be accessed. */
+ url: string;
+ };
+ };
+ /**
+ * BankConnectionsResourceLinkAccountSession
+ * @description A Financial Connections Session is the secure way to programmatically launch the client-side Stripe.js modal that lets your users link their accounts.
+ */
+ "financial_connections.session": {
+ /** @description The account holder for whom accounts are collected in this session. */
+ account_holder?:
+ | components["schemas"]["bank_connections_resource_accountholder"]
+ | null;
+ /**
+ * BankConnectionsResourceLinkedAccountList
+ * @description The accounts that were collected as part of this Session.
+ */
+ accounts: {
+ /** @description Details about each object. */
+ data: components["schemas"]["financial_connections.account"][];
+ /** @description True if this list has another page of items after this one that can be fetched. */
+ has_more: boolean;
+ /**
+ * @description String representing the object's type. Objects of the same type share the same value. Always has the value `list`.
+ * @enum {string}
+ */
+ object: "list";
+ /** @description The URL where this list can be accessed. */
+ url: string;
+ };
+ /** @description A value that will be passed to the client to launch the authentication flow. */
+ client_secret: string;
+ filters?: components["schemas"]["bank_connections_resource_link_account_session_filters"];
+ /** @description Unique identifier for the object. */
+ id: string;
+ /** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
+ livemode: boolean;
+ /**
+ * @description String representing the object's type. Objects of the same type share the same value.
+ * @enum {string}
+ */
+ object: "financial_connections.session";
+ /** @description Permissions requested for accounts collected during this session. */
+ permissions: (
+ | "balances"
+ | "ownership"
+ | "payment_method"
+ | "transactions"
+ )[];
+ /** @description For webview integrations only. Upon completing OAuth login in the native browser, the user will be redirected to this URL to return to your app. */
+ return_url?: string;
+ };
/** FinancialReportingFinanceReportRunRunParameters */
financial_reporting_finance_report_run_run_parameters: {
/** @description The set of output columns requested for inclusion in the report run. */
@@ -4860,6 +6008,118 @@ export interface components {
/** @description Defaults to `Etc/UTC`. The output timezone for all timestamps in the report. A list of possible time zone values is maintained at the [IANA Time Zone Database](http://www.iana.org/time-zones). Has no effect on `interval_start` or `interval_end`. */
timezone?: string;
};
+ /**
+ * CustomerBalanceFundingInstructionsCustomerBalanceFundingInstructions
+ * @description Each customer has a [`balance`](https://stripe.com/docs/api/customers/object#customer_object-balance) that is
+ * automatically applied to future invoices and payments using the `customer_balance` payment method.
+ * Customers can fund this balance by initiating a bank transfer to any account in the
+ * `financial_addresses` field.
+ * Related guide: [Customer Balance - Funding Instructions](https://stripe.com/docs/payments/customer-balance/funding-instructions) to learn more
+ */
+ funding_instructions: {
+ bank_transfer: components["schemas"]["funding_instructions_bank_transfer"];
+ /** @description 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). */
+ currency: string;
+ /**
+ * @description The `funding_type` of the returned instructions
+ * @enum {string}
+ */
+ funding_type: "bank_transfer";
+ /** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
+ livemode: boolean;
+ /**
+ * @description String representing the object's type. Objects of the same type share the same value.
+ * @enum {string}
+ */
+ object: "funding_instructions";
+ };
+ /** FundingInstructionsBankTransfer */
+ funding_instructions_bank_transfer: {
+ /** @description The country of the bank account to fund */
+ country: string;
+ /** @description A list of financial addresses that can be used to fund a particular balance */
+ financial_addresses: components["schemas"]["funding_instructions_bank_transfer_financial_address"][];
+ /**
+ * @description The bank_transfer type
+ * @enum {string}
+ */
+ type: "eu_bank_transfer" | "jp_bank_transfer";
+ };
+ /**
+ * FundingInstructionsBankTransferFinancialAddress
+ * @description FinancialAddresses contain identifying information that resolves to a FinancialAccount.
+ */
+ funding_instructions_bank_transfer_financial_address: {
+ iban?: components["schemas"]["funding_instructions_bank_transfer_iban_record"];
+ sort_code?: components["schemas"]["funding_instructions_bank_transfer_sort_code_record"];
+ spei?: components["schemas"]["funding_instructions_bank_transfer_spei_record"];
+ /** @description The payment networks supported by this FinancialAddress */
+ supported_networks?: ("bacs" | "fps" | "sepa" | "spei" | "zengin")[];
+ /**
+ * @description The type of financial address
+ * @enum {string}
+ */
+ type: "iban" | "sort_code" | "spei" | "zengin";
+ zengin?: components["schemas"]["funding_instructions_bank_transfer_zengin_record"];
+ };
+ /**
+ * FundingInstructionsBankTransferIbanRecord
+ * @description Iban Records contain E.U. bank account details per the SEPA format.
+ */
+ funding_instructions_bank_transfer_iban_record: {
+ /** @description The name of the person or business that owns the bank account */
+ account_holder_name: string;
+ /** @description The BIC/SWIFT code of the account. */
+ bic: string;
+ /** @description Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)). */
+ country: string;
+ /** @description The IBAN of the account. */
+ iban: string;
+ };
+ /**
+ * FundingInstructionsBankTransferSortCodeRecord
+ * @description Sort Code Records contain U.K. bank account details per the sort code format.
+ */
+ funding_instructions_bank_transfer_sort_code_record: {
+ /** @description The name of the person or business that owns the bank account */
+ account_holder_name: string;
+ /** @description The account number */
+ account_number: string;
+ /** @description The six-digit sort code */
+ sort_code: string;
+ };
+ /**
+ * FundingInstructionsBankTransferSpeiRecord
+ * @description SPEI Records contain Mexico bank account details per the SPEI format.
+ */
+ funding_instructions_bank_transfer_spei_record: {
+ /** @description The three-digit bank code */
+ bank_code: string;
+ /** @description The short banking institution name */
+ bank_name: string;
+ /** @description The CLABE number */
+ clabe: string;
+ };
+ /**
+ * FundingInstructionsBankTransferZenginRecord
+ * @description Zengin Records contain Japan bank account details per the Zengin format.
+ */
+ funding_instructions_bank_transfer_zengin_record: {
+ /** @description The account holder name */
+ account_holder_name?: string | null;
+ /** @description The account number */
+ account_number?: string | null;
+ /** @description The bank account type. In Japan, this can only be `futsu` or `toza`. */
+ account_type?: string | null;
+ /** @description The bank code of the account */
+ bank_code?: string | null;
+ /** @description The bank name of the account */
+ bank_name?: string | null;
+ /** @description The branch code of the account */
+ branch_code?: string | null;
+ /** @description The branch name of the account */
+ branch_name?: string | null;
+ };
/**
* GelatoDataDocumentReportDateOfBirth
* @description Point in Time
@@ -4926,27 +6186,25 @@ export interface components {
*/
gelato_document_report: {
/** @description Address as it appears in the document. */
- address?: Partial | null;
+ address?: components["schemas"]["address"] | null;
/** @description Date of birth as it appears in the document. */
- dob?: Partial<
- components["schemas"]["gelato_data_document_report_date_of_birth"]
- > | null;
+ dob?:
+ | components["schemas"]["gelato_data_document_report_date_of_birth"]
+ | null;
/** @description Details on the verification error. Present when status is `unverified`. */
- error?: Partial<
- components["schemas"]["gelato_document_report_error"]
- > | null;
+ error?: components["schemas"]["gelato_document_report_error"] | null;
/** @description Expiration date of the document. */
- expiration_date?: Partial<
- components["schemas"]["gelato_data_document_report_expiration_date"]
- > | null;
+ expiration_date?:
+ | components["schemas"]["gelato_data_document_report_expiration_date"]
+ | null;
/** @description Array of [File](https://stripe.com/docs/api/files) ids containing images for this document. */
files?: string[] | null;
/** @description First name as it appears in the document. */
first_name?: string | null;
/** @description Issued date of the document. */
- issued_date?: Partial<
- components["schemas"]["gelato_data_document_report_issued_date"]
- > | null;
+ issued_date?:
+ | components["schemas"]["gelato_data_document_report_issued_date"]
+ | null;
/** @description Issuing country of the document. */
issuing_country?: string | null;
/** @description Last name as it appears in the document. */
@@ -4986,13 +6244,9 @@ export interface components {
*/
gelato_id_number_report: {
/** @description Date of birth. */
- dob?: Partial<
- components["schemas"]["gelato_data_id_number_report_date"]
- > | null;
+ dob?: components["schemas"]["gelato_data_id_number_report_date"] | null;
/** @description Details on the verification error. Present when status is `unverified`. */
- error?: Partial<
- components["schemas"]["gelato_id_number_report_error"]
- > | null;
+ error?: components["schemas"]["gelato_id_number_report_error"] | null;
/** @description First name. */
first_name?: string | null;
/** @description ID number. */
@@ -5047,9 +6301,7 @@ export interface components {
/** @description ID of the [File](https://stripe.com/docs/api/files) holding the image of the identity document used in this check. */
document?: string | null;
/** @description Details on the verification error. Present when status is `unverified`. */
- error?: Partial<
- components["schemas"]["gelato_selfie_report_error"]
- > | null;
+ error?: components["schemas"]["gelato_selfie_report_error"] | null;
/** @description ID of the [File](https://stripe.com/docs/api/files) holding the image of the selfie used in this check. */
selfie?: string | null;
/**
@@ -5132,11 +6384,9 @@ export interface components {
/** GelatoVerifiedOutputs */
gelato_verified_outputs: {
/** @description The user's verified address. */
- address?: Partial | null;
+ address?: components["schemas"]["address"] | null;
/** @description The user’s verified date of birth. */
- dob?: Partial<
- components["schemas"]["gelato_data_verified_outputs_date"]
- > | null;
+ dob?: components["schemas"]["gelato_data_verified_outputs_date"] | null;
/** @description The user's verified first name. */
first_name?: string | null;
/** @description The user's verified id number. */
@@ -5199,7 +6449,7 @@ export interface components {
*
* A VerificationSession transitions through [multiple
* statuses](/docs/identity/how-sessions-work) throughout its lifetime as it progresses through
- * the verification flow. The VerificationSession contains the user’s verified data after
+ * the verification flow. The VerificationSession contains the user's verified data after
* verification checks are complete.
*
* Related guide: [The Verification Sessions API](https://stripe.com/docs/identity/verification-sessions)
@@ -5215,13 +6465,10 @@ export interface components {
/** @description Unique identifier for the object. */
id: string;
/** @description If present, this property tells you the last error encountered when processing the verification. */
- last_error?: Partial<
- components["schemas"]["gelato_session_last_error"]
- > | null;
+ last_error?: components["schemas"]["gelato_session_last_error"] | null;
/** @description ID of the most recent VerificationReport. [Learn more about accessing detailed verification results.](https://stripe.com/docs/identity/verification-sessions#results) */
last_verification_report?:
- | (Partial &
- Partial)
+ | (string | components["schemas"]["identity.verification_report"])
| null;
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
livemode: boolean;
@@ -5234,9 +6481,9 @@ export interface components {
object: "identity.verification_session";
options: components["schemas"]["gelato_verification_session_options"];
/** @description Redaction status of this VerificationSession. If the VerificationSession is not redacted, this field will be null. */
- redaction?: Partial<
- components["schemas"]["verification_session_redaction"]
- > | null;
+ redaction?:
+ | components["schemas"]["verification_session_redaction"]
+ | null;
/**
* @description Status of this VerificationSession. [Learn more about the lifecycle of sessions](https://stripe.com/docs/identity/how-sessions-work).
* @enum {string}
@@ -5250,9 +6497,45 @@ export interface components {
/** @description The short-lived URL that you use to redirect a user to Stripe to submit their identity information. This URL expires after 48 hours and can only be used once. Don’t store it, log it, send it in emails or expose it to anyone other than the user. Refer to our docs on [verifying identity documents](https://stripe.com/docs/identity/verify-identity-documents?platform=web&type=redirect) to learn how to redirect users to Stripe. */
url?: string | null;
/** @description The user’s verified data. */
- verified_outputs?: Partial<
- components["schemas"]["gelato_verified_outputs"]
- > | null;
+ verified_outputs?:
+ | components["schemas"]["gelato_verified_outputs"]
+ | null;
+ };
+ /** InboundTransfers */
+ inbound_transfers: {
+ billing_details: components["schemas"]["treasury_shared_resource_billing_details"];
+ /**
+ * @description The type of the payment method used in the InboundTransfer.
+ * @enum {string}
+ */
+ type: "us_bank_account";
+ us_bank_account?: components["schemas"]["inbound_transfers_payment_method_details_us_bank_account"];
+ };
+ /** inbound_transfers_payment_method_details_us_bank_account */
+ inbound_transfers_payment_method_details_us_bank_account: {
+ /**
+ * @description Account holder type: individual or company.
+ * @enum {string|null}
+ */
+ account_holder_type?: ("company" | "individual") | null;
+ /**
+ * @description Account type: checkings or savings. Defaults to checking if omitted.
+ * @enum {string|null}
+ */
+ account_type?: ("checking" | "savings") | null;
+ /** @description Name of the bank associated with the bank account. */
+ bank_name?: string | null;
+ /** @description Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same. */
+ fingerprint?: string | null;
+ /** @description Last four digits of the bank account number. */
+ last4?: string | null;
+ /**
+ * @description The US bank account network used to debit funds.
+ * @enum {string}
+ */
+ network: "ach";
+ /** @description Routing number of the bank account. */
+ routing_number?: string | null;
};
/**
* Invoice
@@ -5296,16 +6579,26 @@ export interface components {
account_name?: string | null;
/** @description The account tax IDs associated with the invoice. Only editable when the invoice is a draft. */
account_tax_ids?:
- | (Partial &
- Partial &
- Partial)[]
+ | (
+ | string
+ | components["schemas"]["tax_id"]
+ | components["schemas"]["deleted_tax_id"]
+ )[]
| null;
/** @description Final amount due at this time for this invoice. If the invoice's total is smaller than the minimum charge amount, for example, or if there is account credit that can be applied to the invoice, the `amount_due` may be 0. If there is a positive `starting_balance` for the invoice (the customer owes money), the `amount_due` will also take that into account. The charge that gets generated for the invoice will be for the amount specified in `amount_due`. */
amount_due: number;
/** @description The amount, in %s, that was paid. */
amount_paid: number;
- /** @description The amount remaining, in %s, that is due. */
+ /** @description The difference between amount_due and amount_paid, in %s. */
amount_remaining: number;
+ /** @description ID of the Connect Application that created the invoice. */
+ application?:
+ | (
+ | string
+ | components["schemas"]["application"]
+ | components["schemas"]["deleted_application"]
+ )
+ | null;
/** @description The fee in %s that will be applied to the invoice and transferred to the application owner's Stripe account when the invoice is paid. */
application_fee_amount?: number | null;
/** @description Number of payment attempts made for this invoice, from the perspective of the payment retry schedule. Any payment attempt counts as the first attempt, and subsequently only automatic retries increment the attempt count. In other words, manual payment attempts after the first attempt do not affect the retry schedule. */
@@ -5333,9 +6626,7 @@ export interface components {
)
| null;
/** @description ID of the latest charge generated for this invoice, if any. */
- charge?:
- | (Partial & Partial)
- | null;
+ charge?: (string | components["schemas"]["charge"]) | null;
/**
* @description Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay this invoice using the default source attached to the customer. When sending an invoice, Stripe will email this invoice to the customer with payment instructions.
* @enum {string}
@@ -5354,12 +6645,14 @@ export interface components {
| null;
/** @description The ID of the customer who will be billed. */
customer?:
- | (Partial &
- Partial &
- Partial)
+ | (
+ | string
+ | components["schemas"]["customer"]
+ | components["schemas"]["deleted_customer"]
+ )
| null;
/** @description The customer's address. Until the invoice is finalized, this field will equal `customer.address`. Once the invoice is finalized, this field will no longer be updated. */
- customer_address?: Partial | null;
+ customer_address?: components["schemas"]["address"] | null;
/** @description The customer's email. Until the invoice is finalized, this field will equal `customer.email`. Once the invoice is finalized, this field will no longer be updated. */
customer_email?: string | null;
/** @description The customer's name. Until the invoice is finalized, this field will equal `customer.name`. Once the invoice is finalized, this field will no longer be updated. */
@@ -5367,7 +6660,7 @@ export interface components {
/** @description The customer's phone number. Until the invoice is finalized, this field will equal `customer.phone`. Once the invoice is finalized, this field will no longer be updated. */
customer_phone?: string | null;
/** @description The customer's shipping information. Until the invoice is finalized, this field will equal `customer.shipping`. Once the invoice is finalized, this field will no longer be updated. */
- customer_shipping?: Partial | null;
+ customer_shipping?: components["schemas"]["shipping"] | null;
/**
* @description The customer's tax exempt status. Until the invoice is finalized, this field will equal `customer.tax_exempt`. Once the invoice is finalized, this field will no longer be updated.
* @enum {string|null}
@@ -5379,28 +6672,30 @@ export interface components {
| null;
/** @description 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. */
default_payment_method?:
- | (Partial & Partial)
+ | (string | components["schemas"]["payment_method"])
| null;
/** @description ID of the default payment source for the invoice. It must belong to the customer associated with the invoice and be in a chargeable state. If not set, defaults to the subscription's default source, if any, or to the customer's default source. */
default_source?:
- | (Partial &
- Partial &
- Partial &
- Partial &
- Partial &
- Partial)
+ | (
+ | string
+ | components["schemas"]["bank_account"]
+ | components["schemas"]["card"]
+ | components["schemas"]["source"]
+ )
| null;
/** @description The tax rates applied to this invoice, if any. */
default_tax_rates: components["schemas"]["tax_rate"][];
/** @description An arbitrary string attached to the object. Often useful for displaying to users. Referenced as 'memo' in the Dashboard. */
description?: string | null;
/** @description Describes the current discount applied to this invoice, if there is one. Not populated if there are multiple discounts. */
- discount?: Partial | null;
+ discount?: components["schemas"]["discount"] | null;
/** @description The discounts applied to the invoice. Line item discounts are applied before invoice discounts. Use `expand[]=discounts` to expand each discount. */
discounts?:
- | (Partial &
- Partial &
- Partial)[]
+ | (
+ | string
+ | components["schemas"]["discount"]
+ | components["schemas"]["deleted_discount"]
+ )[]
| null;
/**
* Format: unix-time
@@ -5411,6 +6706,8 @@ export interface components {
ending_balance?: number | null;
/** @description Footer displayed on the invoice. */
footer?: string | null;
+ /** @description Details of the invoice that was cloned. See the [revision documentation](https://stripe.com/docs/invoicing/invoice-revisions) for more details. */
+ from_invoice?: components["schemas"]["invoices_from_invoice"] | null;
/** @description The URL for the hosted invoice page, which allows customers to view and pay an invoice. If the invoice has not been finalized yet, this will be null. */
hosted_invoice_url?: string | null;
/** @description Unique identifier for the object. */
@@ -5418,9 +6715,9 @@ export interface components {
/** @description The link to download the PDF for the invoice. If the invoice has not been finalized yet, this will be null. */
invoice_pdf?: string | null;
/** @description The error encountered during the previous attempt to finalize the invoice. This field is cleared when the invoice is successfully finalized. */
- last_finalization_error?: Partial<
- components["schemas"]["api_errors"]
- > | null;
+ last_finalization_error?: components["schemas"]["api_errors"] | null;
+ /** @description The ID of the most recent non-draft revision of this invoice */
+ latest_revision?: (string | components["schemas"]["invoice"]) | null;
/**
* InvoiceLinesList
* @description The individual line items that make up the invoice. `lines` is sorted as follows: invoice items in reverse chronological order, followed by the subscription, if any.
@@ -5455,16 +6752,14 @@ export interface components {
*/
object: "invoice";
/** @description The account (if any) for which the funds of the invoice payment are intended. If set, the invoice will be presented with the branding and support information of the specified account. See the [Invoices with Connect](https://stripe.com/docs/billing/invoices/connect) documentation for details. */
- on_behalf_of?:
- | (Partial & Partial)
- | null;
+ on_behalf_of?: (string | components["schemas"]["account"]) | null;
/** @description Whether payment was successfully collected for this invoice. An invoice can be paid (most commonly) with a charge or with credit from the customer's account balance. */
paid: boolean;
/** @description Returns true if the invoice was manually marked paid, returns false if the invoice hasn't been paid yet or was paid on Stripe. */
paid_out_of_band: boolean;
/** @description The PaymentIntent associated with this invoice. The PaymentIntent is generated when the invoice is finalized, and can then be used to pay the invoice. Note that voiding an invoice will cancel the PaymentIntent. */
payment_intent?:
- | (Partial & Partial)
+ | (string | components["schemas"]["payment_intent"])
| null;
payment_settings: components["schemas"]["invoices_payment_settings"];
/**
@@ -5482,11 +6777,13 @@ export interface components {
/** @description Total amount of all pre-payment credit notes issued for this invoice. */
pre_payment_credit_notes_amount: number;
/** @description The quote this invoice was generated from. */
- quote?:
- | (Partial & Partial)
- | null;
+ quote?: (string | components["schemas"]["quote"]) | null;
/** @description This is the transaction number that appears on email receipts sent for this invoice. */
receipt_number?: string | null;
+ /** @description Options for invoice PDF rendering. */
+ rendering_options?:
+ | components["schemas"]["invoice_setting_rendering_options"]
+ | null;
/** @description Starting customer balance before the invoice is finalized. If the invoice has not been finalized yet, this will be the current customer balance. */
starting_balance: number;
/** @description Extra information about an invoice for the customer's credit card statement. */
@@ -5500,15 +6797,19 @@ export interface components {
| null;
status_transitions: components["schemas"]["invoices_status_transitions"];
/** @description The subscription that this invoice was prepared for, if any. */
- subscription?:
- | (Partial & Partial)
- | null;
+ subscription?: (string | components["schemas"]["subscription"]) | null;
/** @description Only set for upcoming invoices that preview prorations. The time used to calculate prorations. */
subscription_proration_date?: number;
- /** @description Total of all subscriptions, invoice items, and prorations on the invoice before any invoice level discount or tax is applied. Item discounts are already incorporated */
+ /** @description Total of all subscriptions, invoice items, and prorations on the invoice before any invoice level discount or exclusive tax is applied. Item discounts are already incorporated */
subtotal: number;
+ /** @description The integer amount in %s representing the subtotal of the invoice before any invoice level discount or tax is applied. Item discounts are already incorporated */
+ subtotal_excluding_tax?: number | null;
/** @description The amount of tax on this invoice. This is the sum of all the tax amounts on this invoice. */
tax?: number | null;
+ /** @description ID of the test clock this invoice belongs to. */
+ test_clock?:
+ | (string | components["schemas"]["test_helpers.test_clock"])
+ | null;
threshold_reason?: components["schemas"]["invoice_threshold_reason"];
/** @description Total after discounts and taxes. */
total: number;
@@ -5516,18 +6817,23 @@ export interface components {
total_discount_amounts?:
| components["schemas"]["discounts_resource_discount_amount"][]
| null;
+ /** @description The integer amount in %s representing the total amount of the invoice including all discounts but excluding all tax. */
+ total_excluding_tax?: number | null;
/** @description The aggregate amounts calculated per tax rate for all line items. */
total_tax_amounts: components["schemas"]["invoice_tax_amount"][];
/** @description The account (if any) the payment will be attributed to for tax reporting, and where funds from the payment will be transferred to for the invoice. */
- transfer_data?: Partial<
- components["schemas"]["invoice_transfer_data"]
- > | null;
+ transfer_data?: components["schemas"]["invoice_transfer_data"] | null;
/**
* Format: unix-time
* @description Invoices are automatically paid or sent 1 hour after webhooks are delivered, or until all webhook delivery attempts have [been exhausted](https://stripe.com/docs/billing/webhooks#understand). This field tracks the time when webhooks for this invoice were successfully delivered. If the invoice had no webhooks to deliver, this will be set while the invoice is being created.
*/
webhooks_delivered_at?: number | null;
};
+ /** invoice_installments_card */
+ invoice_installments_card: {
+ /** @description Whether Installments are enabled for this Invoice. */
+ enabled?: boolean | null;
+ };
/** InvoiceItemThresholdReason */
invoice_item_threshold_reason: {
/** @description The IDs of the line items that triggered the threshold invoice. */
@@ -5539,12 +6845,12 @@ export interface components {
invoice_line_item_period: {
/**
* Format: unix-time
- * @description End of the line item's billing period
+ * @description The end of the period, which must be greater than or equal to the start.
*/
end: number;
/**
* Format: unix-time
- * @description Start of the line item's billing period
+ * @description The start of the period.
*/
start: number;
};
@@ -5587,12 +6893,52 @@ export interface components {
};
/** invoice_payment_method_options_card */
invoice_payment_method_options_card: {
+ installments?: components["schemas"]["invoice_installments_card"];
/**
* @description We strongly recommend that you rely on our SCA Engine to automatically prompt your customers for authentication based on risk level and [other requirements](https://stripe.com/docs/strong-customer-authentication). However, if you wish to request 3D Secure based on logic from your own fraud engine, provide this option. Read our guide on [manually requesting 3D Secure](https://stripe.com/docs/payments/3d-secure#manual-three-ds) for more information on how this configuration interacts with Radar and our SCA Engine.
* @enum {string|null}
*/
request_three_d_secure?: ("any" | "automatic") | null;
};
+ /** invoice_payment_method_options_customer_balance */
+ invoice_payment_method_options_customer_balance: {
+ bank_transfer?: components["schemas"]["invoice_payment_method_options_customer_balance_bank_transfer"];
+ /**
+ * @description The funding method type to be used when there are not enough funds in the customer balance. Permitted values include: `bank_transfer`.
+ * @enum {string|null}
+ */
+ funding_type?: "bank_transfer" | null;
+ };
+ /** invoice_payment_method_options_customer_balance_bank_transfer */
+ invoice_payment_method_options_customer_balance_bank_transfer: {
+ eu_bank_transfer?: components["schemas"]["invoice_payment_method_options_customer_balance_bank_transfer_eu_bank_transfer"];
+ /** @description The bank transfer type that can be used for funding. Permitted values include: `eu_bank_transfer`, `gb_bank_transfer`, `jp_bank_transfer`, or `mx_bank_transfer`. */
+ type?: string | null;
+ };
+ /** invoice_payment_method_options_customer_balance_bank_transfer_eu_bank_transfer */
+ invoice_payment_method_options_customer_balance_bank_transfer_eu_bank_transfer: {
+ /**
+ * @description The desired country code of the bank account information. Permitted values include: `DE`, `ES`, `FR`, `IE`, or `NL`.
+ * @enum {string}
+ */
+ country: "DE" | "ES" | "FR" | "IE" | "NL";
+ };
+ /** invoice_payment_method_options_konbini */
+ invoice_payment_method_options_konbini: { [key: string]: unknown };
+ /** invoice_payment_method_options_us_bank_account */
+ invoice_payment_method_options_us_bank_account: {
+ financial_connections?: components["schemas"]["invoice_payment_method_options_us_bank_account_linked_account_options"];
+ /**
+ * @description Bank account verification method.
+ * @enum {string}
+ */
+ verification_method?: "automatic" | "instant" | "microdeposits";
+ };
+ /** invoice_payment_method_options_us_bank_account_linked_account_options */
+ invoice_payment_method_options_us_bank_account_linked_account_options: {
+ /** @description The list of permissions to request. The `payment_method` permission must be included. */
+ permissions?: ("balances" | "payment_method" | "transactions")[];
+ };
/** InvoiceSettingCustomField */
invoice_setting_custom_field: {
/** @description The name of the custom field. */
@@ -5608,16 +6954,25 @@ export interface components {
| null;
/** @description ID of a payment method that's attached to the customer, to be used as the customer's default payment method for subscriptions and invoices. */
default_payment_method?:
- | (Partial & Partial)
+ | (string | components["schemas"]["payment_method"])
| null;
/** @description Default footer to be displayed on invoices for this customer. */
footer?: string | null;
+ /** @description Default options for invoice PDF rendering for this customer. */
+ rendering_options?:
+ | components["schemas"]["invoice_setting_rendering_options"]
+ | null;
};
/** InvoiceSettingQuoteSetting */
invoice_setting_quote_setting: {
/** @description Number of days within which a customer must pay invoices generated by this quote. This value will be `null` for quotes where `collection_method=charge_automatically`. */
days_until_due?: number | null;
};
+ /** InvoiceSettingRenderingOptions */
+ invoice_setting_rendering_options: {
+ /** @description How line-item prices and amounts will be displayed with respect to tax on invoice PDFs. */
+ amount_tax_display?: string | null;
+ };
/** InvoiceSettingSubscriptionScheduleSetting */
invoice_setting_subscription_schedule_setting: {
/** @description Number of days within which a customer must pay invoices generated by this subscription schedule. This value will be `null` for subscription schedules where `billing=charge_automatically`. */
@@ -5630,7 +6985,7 @@ export interface components {
/** @description Whether this tax amount is inclusive or exclusive. */
inclusive: boolean;
/** @description The tax rate that was applied to get this tax amount. */
- tax_rate: Partial & Partial;
+ tax_rate: string | components["schemas"]["tax_rate"];
};
/** InvoiceThresholdReason */
invoice_threshold_reason: {
@@ -5644,7 +6999,7 @@ export interface components {
/** @description The amount in %s that will be transferred to the destination account when the invoice is paid. By default, the entire amount is transferred to the destination. */
amount?: number | null;
/** @description The account where funds from the payment will be transferred to upon payment success. */
- destination: Partial & Partial;
+ destination: string | components["schemas"]["account"];
};
/**
* InvoiceItem
@@ -5662,9 +7017,10 @@ export interface components {
/** @description 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). */
currency: string;
/** @description The ID of the customer who will be billed when this invoice item is billed. */
- customer: Partial &
- Partial &
- Partial;
+ customer:
+ | string
+ | components["schemas"]["customer"]
+ | components["schemas"]["deleted_customer"];
/**
* Format: unix-time
* @description Time at which the object was created. Measured in seconds since the Unix epoch.
@@ -5675,15 +7031,11 @@ export interface components {
/** @description If true, discounts will apply to this invoice item. Always false for prorations. */
discountable: boolean;
/** @description The discounts which apply to the invoice item. Item discounts are applied before invoice discounts. Use `expand[]=discounts` to expand each discount. */
- discounts?:
- | (Partial & Partial)[]
- | null;
+ discounts?: (string | components["schemas"]["discount"])[] | null;
/** @description Unique identifier for the object. */
id: string;
/** @description The ID of the invoice this invoice item belongs to. */
- invoice?:
- | (Partial & Partial)
- | null;
+ invoice?: (string | components["schemas"]["invoice"]) | null;
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
livemode: boolean;
/** @description 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. */
@@ -5695,19 +7047,21 @@ export interface components {
object: "invoiceitem";
period: components["schemas"]["invoice_line_item_period"];
/** @description The price of the invoice item. */
- price?: Partial | null;
+ price?: components["schemas"]["price"] | null;
/** @description Whether the invoice item was created automatically as a proration adjustment when the customer switched plans. */
proration: boolean;
/** @description Quantity of units for the invoice item. If the invoice item is a proration, the quantity of the subscription that the proration was computed for. */
quantity: number;
/** @description The subscription that this invoice item has been created for, if any. */
- subscription?:
- | (Partial & Partial)
- | null;
+ subscription?: (string | components["schemas"]["subscription"]) | null;
/** @description The subscription item that this invoice item has been created for, if any. */
subscription_item?: string;
/** @description The tax rates which apply to the invoice item. When set, the `default_tax_rates` on the invoice do not apply to this invoice item. */
tax_rates?: components["schemas"]["tax_rate"][] | null;
+ /** @description ID of the test clock this invoice item belongs to. */
+ test_clock?:
+ | (string | components["schemas"]["test_helpers.test_clock"])
+ | null;
/** @description Unit amount (in the `currency` specified) of the invoice item. */
unit_amount?: number | null;
/**
@@ -5716,27 +7070,62 @@ export interface components {
*/
unit_amount_decimal?: string | null;
};
+ /** InvoicesFromInvoice */
+ invoices_from_invoice: {
+ /** @description The relation between this invoice and the cloned invoice */
+ action: string;
+ /** @description The invoice that was cloned. */
+ invoice: string | components["schemas"]["invoice"];
+ };
+ /** InvoicesLineItemsCreditedItems */
+ invoices_line_items_credited_items: {
+ /** @description Invoice containing the credited invoice line items */
+ invoice: string;
+ /** @description Credited invoice line items */
+ invoice_line_items: string[];
+ };
+ /** InvoicesLineItemsProrationDetails */
+ invoices_line_items_proration_details: {
+ /** @description For a credit proration `line_item`, the original debit line_items to which the credit proration applies. */
+ credited_items?:
+ | components["schemas"]["invoices_line_items_credited_items"]
+ | null;
+ };
/** InvoicesPaymentMethodOptions */
invoices_payment_method_options: {
/** @description If paying by `acss_debit`, this sub-hash contains details about the Canadian pre-authorized debit payment method options to pass to the invoice’s PaymentIntent. */
- acss_debit?: Partial<
- components["schemas"]["invoice_payment_method_options_acss_debit"]
- > | null;
+ acss_debit?:
+ | components["schemas"]["invoice_payment_method_options_acss_debit"]
+ | null;
/** @description If paying by `bancontact`, this sub-hash contains details about the Bancontact payment method options to pass to the invoice’s PaymentIntent. */
- bancontact?: Partial<
- components["schemas"]["invoice_payment_method_options_bancontact"]
- > | null;
+ bancontact?:
+ | components["schemas"]["invoice_payment_method_options_bancontact"]
+ | null;
/** @description If paying by `card`, this sub-hash contains details about the Card payment method options to pass to the invoice’s PaymentIntent. */
- card?: Partial<
- components["schemas"]["invoice_payment_method_options_card"]
- > | null;
+ card?:
+ | components["schemas"]["invoice_payment_method_options_card"]
+ | null;
+ /** @description If paying by `customer_balance`, this sub-hash contains details about the Bank transfer payment method options to pass to the invoice’s PaymentIntent. */
+ customer_balance?:
+ | components["schemas"]["invoice_payment_method_options_customer_balance"]
+ | null;
+ /** @description If paying by `konbini`, this sub-hash contains details about the Konbini payment method options to pass to the invoice’s PaymentIntent. */
+ konbini?:
+ | components["schemas"]["invoice_payment_method_options_konbini"]
+ | null;
+ /** @description If paying by `us_bank_account`, this sub-hash contains details about the ACH direct debit payment method options to pass to the invoice’s PaymentIntent. */
+ us_bank_account?:
+ | components["schemas"]["invoice_payment_method_options_us_bank_account"]
+ | null;
};
/** InvoicesPaymentSettings */
invoices_payment_settings: {
+ /** @description ID of the mandate to be used for this invoice. It must correspond to the payment method used to pay the invoice, including the invoice's default_payment_method or default_source, if set. */
+ default_mandate?: string | null;
/** @description Payment-method-specific configuration to provide to the invoice’s PaymentIntent. */
- payment_method_options?: Partial<
- components["schemas"]["invoices_payment_method_options"]
- > | null;
+ payment_method_options?:
+ | components["schemas"]["invoices_payment_method_options"]
+ | null;
/** @description The list of payment method types (e.g. card) to provide to the invoice’s PaymentIntent. If not set, Stripe attempts to automatically determine the types to use by looking at the invoice’s default payment method, the subscription’s default payment method, the customer’s default payment method, and your [invoice template settings](https://dashboard.stripe.com/settings/billing/invoice). */
payment_method_types?:
| (
@@ -5748,12 +7137,18 @@ export interface components {
| "bancontact"
| "boleto"
| "card"
+ | "customer_balance"
| "fpx"
| "giropay"
| "grabpay"
| "ideal"
+ | "konbini"
+ | "link"
+ | "paynow"
+ | "promptpay"
| "sepa_debit"
| "sofort"
+ | "us_bank_account"
| "wechat_pay"
)[]
| null;
@@ -5761,13 +7156,14 @@ export interface components {
/** InvoicesResourceInvoiceTaxID */
invoices_resource_invoice_tax_id: {
/**
- * @description The type of the tax ID, one of `eu_vat`, `br_cnpj`, `br_cpf`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `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`, `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`, or `unknown`
+ * @description The type of the tax ID, one of `eu_vat`, `br_cnpj`, `br_cpf`, `eu_oss_vat`, `gb_vat`, `nz_gst`, `au_abn`, `au_arn`, `in_gst`, `no_vat`, `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`, `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`, or `unknown`
* @enum {string}
*/
type:
| "ae_trn"
| "au_abn"
| "au_arn"
+ | "bg_uic"
| "br_cnpj"
| "br_cpf"
| "ca_bn"
@@ -5779,10 +7175,12 @@ export interface components {
| "ch_vat"
| "cl_tin"
| "es_cif"
+ | "eu_oss_vat"
| "eu_vat"
| "gb_vat"
| "ge_vat"
| "hk_br"
+ | "hu_tin"
| "id_npwp"
| "il_vat"
| "in_gst"
@@ -5802,6 +7200,7 @@ export interface components {
| "sa_vat"
| "sg_gst"
| "sg_uen"
+ | "si_tin"
| "th_vat"
| "tw_vat"
| "ua_vat"
@@ -5834,38 +7233,6 @@ export interface components {
*/
voided_at?: number | null;
};
- /**
- * IssuerFraudRecord
- * @description This resource has been renamed to [Early Fraud
- * Warning](#early_fraud_warning_object) and will be removed in a future API
- * version.
- */
- issuer_fraud_record: {
- /** @description An IFR is actionable if it has not received a dispute and has not been fully refunded. You may wish to proactively refund a charge that receives an IFR, in order to avoid receiving a dispute later. */
- actionable: boolean;
- /** @description ID of the charge this issuer fraud record is for, optionally expanded. */
- charge: Partial & Partial;
- /**
- * Format: unix-time
- * @description Time at which the object was created. Measured in seconds since the Unix epoch.
- */
- created: number;
- /** @description The type of fraud labelled by the issuer. One of `card_never_received`, `fraudulent_card_application`, `made_with_counterfeit_card`, `made_with_lost_card`, `made_with_stolen_card`, `misc`, `unauthorized_use_of_card`. */
- fraud_type: string;
- /** @description If true, the associated charge is subject to [liability shift](https://stripe.com/docs/payments/3d-secure#disputed-payments). */
- has_liability_shift: boolean;
- /** @description Unique identifier for the object. */
- id: string;
- /** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
- livemode: boolean;
- /**
- * @description String representing the object's type. Objects of the same type share the same value.
- * @enum {string}
- */
- object: "issuer_fraud_record";
- /** @description The timestamp at which the card issuer posted the issuer fraud record. */
- post_date: number;
- };
/**
* IssuingAuthorization
* @description When an [issued card](https://stripe.com/docs/issuing) is used to make a purchase, an Issuing `Authorization`
@@ -5878,9 +7245,9 @@ export interface components {
/** @description The total amount that was authorized or rejected. This amount is in the card's currency and in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). */
amount: number;
/** @description Detailed breakdown of amount components. These amounts are denominated in `currency` and in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). */
- amount_details?: Partial<
- components["schemas"]["issuing_authorization_amount_details"]
- > | null;
+ amount_details?:
+ | components["schemas"]["issuing_authorization_amount_details"]
+ | null;
/** @description Whether the authorization has been approved. */
approved: boolean;
/**
@@ -5898,8 +7265,7 @@ export interface components {
card: components["schemas"]["issuing.card"];
/** @description The cardholder to whom this authorization belongs. */
cardholder?:
- | (Partial &
- Partial)
+ | (string | components["schemas"]["issuing.cardholder"])
| null;
/**
* Format: unix-time
@@ -5925,9 +7291,9 @@ export interface components {
*/
object: "issuing.authorization";
/** @description The pending authorization request. This field will only be non-null during an `issuing_authorization.request` webhook. */
- pending_request?: Partial<
- components["schemas"]["issuing_authorization_pending_request"]
- > | null;
+ pending_request?:
+ | components["schemas"]["issuing_authorization_pending_request"]
+ | null;
/** @description History of every time `pending_request` was approved/denied, either by you directly or by Stripe (e.g. based on your `spending_controls`). If the merchant changes the authorization by performing an [incremental authorization](https://stripe.com/docs/issuing/purchases/authorizations), you can look at this field to see the previous requests for the authorization. */
request_history: components["schemas"]["issuing_authorization_request"][];
/**
@@ -5937,6 +7303,8 @@ export interface components {
status: "closed" | "pending" | "reversed";
/** @description List of [transactions](https://stripe.com/docs/api/issuing/transactions) associated with this authorization. */
transactions: components["schemas"]["issuing.transaction"][];
+ /** @description [Treasury](https://stripe.com/docs/api/treasury) details related to this authorization if it was created on a [FinancialAccount](https://stripe.com/docs/api/treasury/financial_accounts). */
+ treasury?: components["schemas"]["issuing_authorization_treasury"] | null;
verification_data: components["schemas"]["issuing_authorization_verification_data"];
/** @description The digital wallet used for this authorization. One of `apple_pay`, `google_pay`, or `samsung_pay`. */
wallet?: string | null;
@@ -5952,14 +7320,14 @@ export interface components {
* @description The reason why the card was canceled.
* @enum {string|null}
*/
- cancellation_reason?: ("lost" | "stolen") | null;
+ cancellation_reason?: ("design_rejected" | "lost" | "stolen") | null;
cardholder: components["schemas"]["issuing.cardholder"];
/**
* Format: unix-time
* @description Time at which the object was created. Measured in seconds since the Unix epoch.
*/
created: number;
- /** @description 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). */
+ /** @description Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Supported currencies are `usd` in the US, `eur` in the EU, and `gbp` in the UK. */
currency: string;
/** @description The card's CVC. For security reasons, this is only available for virtual cards, and will be omitted unless you explicitly request it with [the `expand` parameter](https://stripe.com/docs/api/expanding_objects). Additionally, it's only available via the ["Retrieve a card" endpoint](https://stripe.com/docs/api/issuing/cards/retrieve), not via "List all cards" or any other endpoint. */
cvc?: string;
@@ -5967,6 +7335,8 @@ export interface components {
exp_month: number;
/** @description The expiration year of the card. */
exp_year: number;
+ /** @description The financial account this card is attached to. */
+ financial_account?: string | null;
/** @description Unique identifier for the object. */
id: string;
/** @description The last 4 digits of the card number. */
@@ -5983,20 +7353,16 @@ export interface components {
*/
object: "issuing.card";
/** @description The latest card that replaces this card, if any. */
- replaced_by?:
- | (Partial & Partial)
- | null;
+ replaced_by?: (string | components["schemas"]["issuing.card"]) | null;
/** @description The card this card replaces, if any. */
- replacement_for?:
- | (Partial & Partial)
- | null;
+ replacement_for?: (string | components["schemas"]["issuing.card"]) | null;
/**
* @description The reason why the previous card needed to be replaced.
* @enum {string|null}
*/
replacement_reason?: ("damaged" | "expired" | "lost" | "stolen") | null;
/** @description Where and how the card will be shipped. */
- shipping?: Partial | null;
+ shipping?: components["schemas"]["issuing_card_shipping"] | null;
spending_controls: components["schemas"]["issuing_card_authorization_controls"];
/**
* @description Whether authorizations can be approved on this card.
@@ -6009,7 +7375,7 @@ export interface components {
*/
type: "physical" | "virtual";
/** @description Information relating to digital wallets (like Apple Pay and Google Pay). */
- wallets?: Partial | null;
+ wallets?: components["schemas"]["issuing_card_wallets"] | null;
};
/**
* IssuingCardholder
@@ -6020,9 +7386,7 @@ export interface components {
"issuing.cardholder": {
billing: components["schemas"]["issuing_cardholder_address"];
/** @description Additional information about a `company` cardholder. */
- company?: Partial<
- components["schemas"]["issuing_cardholder_company"]
- > | null;
+ company?: components["schemas"]["issuing_cardholder_company"] | null;
/**
* Format: unix-time
* @description Time at which the object was created. Measured in seconds since the Unix epoch.
@@ -6033,9 +7397,9 @@ export interface components {
/** @description Unique identifier for the object. */
id: string;
/** @description Additional information about an `individual` cardholder. */
- individual?: Partial<
- components["schemas"]["issuing_cardholder_individual"]
- > | null;
+ individual?:
+ | components["schemas"]["issuing_cardholder_individual"]
+ | null;
/** @description Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode. */
livemode: boolean;
/** @description 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. */
@@ -6051,9 +7415,9 @@ export interface components {
phone_number?: string | null;
requirements: components["schemas"]["issuing_cardholder_requirements"];
/** @description Rules that control spending across this cardholder's cards. Refer to our [documentation](https://stripe.com/docs/issuing/controls/spending-controls) for more details. */
- spending_controls?: Partial<
- components["schemas"]["issuing_cardholder_authorization_controls"]
- > | null;
+ spending_controls?:
+ | components["schemas"]["issuing_cardholder_authorization_controls"]
+ | null;
/**
* @description Specifies whether to permit authorizations on this cardholder's cards.
* @enum {string}
@@ -6072,7 +7436,7 @@ export interface components {
* Related guide: [Disputing Transactions](https://stripe.com/docs/issuing/purchases/disputes)
*/
"issuing.dispute": {
- /** @description Disputed amount. Usually the amount of the `transaction`, but can differ (usually because of currency fluctuation). */
+ /** @description Disputed amount in the card's currency and in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). Usually the amount of the `transaction`, but can differ (usually because of currency fluctuation). */
amount: number;
/** @description List of balance transactions associated with the dispute. */
balance_transactions?:
@@ -6103,8 +7467,9 @@ export interface components {
*/
status: "expired" | "lost" | "submitted" | "unsubmitted" | "won";
/** @description The transaction being disputed. */
- transaction: Partial &
- Partial;
+ transaction: string | components["schemas"]["issuing.transaction"];
+ /** @description [Treasury](https://stripe.com/docs/api/treasury) details related to this dispute if it was created on a [FinancialAccount](/docs/api/treasury/financial_accounts */
+ treasury?: components["schemas"]["issuing_dispute_treasury"] | null;
};
/**
* IssuingSettlement
@@ -6165,25 +7530,22 @@ export interface components {
/** @description The transaction amount, which will be reflected in your balance. This amount is in your currency and in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). */
amount: number;
/** @description Detailed breakdown of amount components. These amounts are denominated in `currency` and in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal). */
- amount_details?: Partial<
- components["schemas"]["issuing_transaction_amount_details"]
- > | null;
+ amount_details?:
+ | components["schemas"]["issuing_transaction_amount_details"]
+ | null;
/** @description The `Authorization` object that led to this transaction. */
authorization?:
- | (Partial &
- Partial)
+ | (string | components["schemas"]["issuing.authorization"])
| null;
/** @description ID of the [balance transaction](https://stripe.com/docs/api/balance_transactions) associated with this transaction. */
balance_transaction?:
- | (Partial &
- Partial)
+ | (string | components["schemas"]["balance_transaction"])
| null;
/** @description The card used to make this transaction. */
- card: Partial & Partial;
+ card: string | components["schemas"]["issuing.card"];
/** @description The cardholder to whom this transaction belongs. */
cardholder?:
- | (Partial &
- Partial)
+ | (string | components["schemas"]["issuing.cardholder"])
| null;
/**
* Format: unix-time
@@ -6193,9 +7555,7 @@ export interface components {
/** @description 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). */
currency: string;
/** @description If you've disputed the transaction, the ID of the dispute. */
- dispute?:
- | (Partial & Partial