--- consumes: - application/x-www-form-urlencoded definitions: account: properties: active_payment_methods: description: '' type: - array business_name: description: The publicly visible name of the business. type: - string business_url: description: The publicly visible website of the business. type: - string charges_enabled: description: Whether or not the account can create live charges. type: - boolean country: description: The country of the account. type: - string debit_negative_balances: description: Whether or not Stripe will attempt to reclaim negative account balances from this account's bank account. type: - boolean decline_charge_on: "$ref": "#/definitions/account_decline_charge_on" default_currency: description: The currency this account has chosen to use as the default. type: - string details_submitted: description: Whether or not account details have been submitted yet. Standalone accounts cannot receive transfers before this is true. type: - boolean display_name: description: The display name for this account. This is used on the Stripe dashboard to help you differentiate between accounts. type: - string email: description: The primary user's email address. type: - string external_accounts: properties: data: items: type: - object type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: ExternalAccountList type: - object id: description: Unique identifier for the object. type: - string legal_entity: "$ref": "#/definitions/legal_entity" managed: description: Whether or not the account is [managed](/docs/connect/managed-accounts) by your platform. Returns null if the account was not created by a platform. type: - boolean mcc: description: '' type: - string metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string orders: "$ref": "#/definitions/settings" payout_schedule: "$ref": "#/definitions/transfer_schedule" payout_statement_descriptor: description: The text that will appear on the account's bank account statement for payouts. If not set, this will default to your platform's bank descriptor set on the Dashboard. type: - string payouts_enabled: description: Whether or not Stripe will send automatic transfers for this account. This is only false when Stripe is waiting for additional information from the account holder. type: - boolean product_description: description: An internal-only description of the product or service provided. This is used by Stripe in the event the account gets flagged for potential fraud. type: - string statement_descriptor: description: The text that will appear on credit card statements. type: - string support_email: description: A publicly shareable email address that can be reached for support for this account. type: - string support_phone: description: The publicly visible support phone number for the business. type: - string timezone: description: The time zone used in the Stripe dashboard for this account. A list of possible time zone values is maintained at the [IANA Time Zone Database](http://www.iana.org/time-zones). type: - string tos_acceptance: "$ref": "#/definitions/account_tos_acceptance" verification: "$ref": "#/definitions/account_verification" required: - active_payment_methods - charges_enabled - country - debit_negative_balances - decline_charge_on - default_currency - details_submitted - external_accounts - id - legal_entity - managed - object - payout_schedule - payouts_enabled - tos_acceptance - verification title: Account type: - object x-resourceId: account account_decline_charge_on: properties: avs_failure: description: Whether or not Stripe should automatically decline charges with an incorrect zip/postal code. This setting only applies if a card includes a zip code and the bank specifically marks it as failed. type: - boolean cvc_failure: description: Whether or not Stripe should automatically decline charges with an incorrect CVC. This setting only applies if a card includes a CVC and the bank specifically marks it as failed. type: - boolean required: - avs_failure - cvc_failure title: AccountDeclineChargeOn type: - object x-resourceId: account_decline_charge_on account_tos_acceptance: properties: date: description: The timestamp when the account owner accepted Stripe's terms. type: - integer ip: description: The IP address from which the account owner accepted Stripe's terms. type: - string user_agent: description: The user agent of the browser from which the user accepted Stripe's terms. type: - string title: AccountTOSAcceptance type: - object x-resourceId: account_tos_acceptance account_verification: properties: disabled_reason: description: A string describing the reason for this account being unable to charge and/or transfer, if that is the case. Possible values are `rejected.fraud`, `rejected.terms_of_service`, `rejected.listed`, `rejected.other`, `fields_needed`, `listed`, or `other`. type: - string due_by: description: At what time the `fields_needed` must be provided. If this date is in the past, the account is already in bad standing, and providing `fields_needed` is necessary to re-enable transfers and prevent other consequences. If this date is in the future, `fields_needed` must be provided to ensure the account remains in good standing. type: - integer fields_needed: description: Field names that need to be provided for the account to remain in good standing. Nested fields are separated by "." (for example, "legal_entity.first_name"). type: - array required: - fields_needed title: AccountVerification type: - object x-resourceId: account_verification account_with_keys: properties: active_payment_methods: description: '' type: - array business_name: description: The publicly visible name of the business. type: - string business_url: description: The publicly visible website of the business. type: - string charges_enabled: description: Whether or not the account can create live charges. type: - boolean country: description: The country of the account. type: - string debit_negative_balances: description: Whether or not Stripe will attempt to reclaim negative account balances from this account's bank account. type: - boolean decline_charge_on: "$ref": "#/definitions/account_decline_charge_on" default_currency: description: The currency this account has chosen to use as the default. type: - string details_submitted: description: Whether or not account details have been submitted yet. Standalone accounts cannot receive transfers before this is true. type: - boolean display_name: description: The display name for this account. This is used on the Stripe dashboard to help you differentiate between accounts. type: - string email: description: The primary user's email address. type: - string external_accounts: properties: data: items: type: - object type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: ExternalAccountList type: - object id: description: Unique identifier for the object. type: - string keys: description: '' type: - object legal_entity: "$ref": "#/definitions/legal_entity" managed: description: Whether or not the account is [managed](/docs/connect/managed-accounts) by your platform. Returns null if the account was not created by a platform. type: - boolean mcc: description: '' type: - string metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string orders: "$ref": "#/definitions/settings" payout_schedule: "$ref": "#/definitions/transfer_schedule" payout_statement_descriptor: description: The text that will appear on the account's bank account statement for payouts. If not set, this will default to your platform's bank descriptor set on the Dashboard. type: - string payouts_enabled: description: Whether or not Stripe will send automatic transfers for this account. This is only false when Stripe is waiting for additional information from the account holder. type: - boolean product_description: description: An internal-only description of the product or service provided. This is used by Stripe in the event the account gets flagged for potential fraud. type: - string statement_descriptor: description: The text that will appear on credit card statements. type: - string support_email: description: A publicly shareable email address that can be reached for support for this account. type: - string support_phone: description: The publicly visible support phone number for the business. type: - string timezone: description: The time zone used in the Stripe dashboard for this account. A list of possible time zone values is maintained at the [IANA Time Zone Database](http://www.iana.org/time-zones). type: - string tos_acceptance: "$ref": "#/definitions/account_tos_acceptance" verification: "$ref": "#/definitions/account_verification" required: - active_payment_methods - charges_enabled - country - debit_negative_balances - decline_charge_on - default_currency - details_submitted - external_accounts - id - keys - legal_entity - managed - object - payout_schedule - payouts_enabled - tos_acceptance - verification title: AccountWithKeys type: - object x-resourceId: account_with_keys address: properties: city: description: City/District/Suburb/Town/Village. type: - string country: description: 2-letter country code. type: - string line1: description: Address line 1 (Street address/PO Box/Company name). type: - string line2: description: Address line 2 (Apartment/Suite/Unit/Building). type: - string postal_code: description: Zip/Postal Code. type: - string state: description: State/County/Province/Region. type: - string title: Address type: - object x-resourceId: address alipay_account: properties: created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer customer: description: '' type: - string fingerprint: description: Uniquely identifies the account and will be the same across all Alipay account objects that are linked to the same Alipay account. type: - string id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string payment_amount: description: If the Alipay account object is not reusable, the exact amount that you can create a charge for. type: - integer payment_currency: description: If the Alipay account object is not reusable, the exact currency that you can create a charge for. type: - string reusable: 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. type: - boolean used: description: Whether this Alipay account object has ever been used for a payment. type: - boolean username: description: The username for the Alipay account. type: - string required: - created - fingerprint - id - livemode - metadata - object - reusable - used - username title: AlipayAccount type: - object x-resourceId: alipay_account apple_pay_domain: properties: created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer domain_name: description: '' type: - string id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. type: - string required: - created - domain_name - id - livemode - object title: ApplePayDomain type: - object x-resourceId: apple_pay_domain authorization_settings: properties: issuer: description: '' type: - string provider: description: '' type: - string type: description: '' type: - string required: - type title: AuthorizationSettings type: - object x-resourceId: authorization_settings balance: properties: available: description: Funds that are available to be paid out automatically by Stripe or explicitly via the [transfers API](#transfers). The available balance for each currency and payment type can be found in the `source_types` property. type: - array connect_reserved: description: Funds held due to negative balances on connected Managed Accounts. The connect reserve balance for each currency and payment type can be found in the `source_types` property. type: - array livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. type: - string pending: description: Funds that are not available in the balance yet, due to the 7-day rolling pay cycle. The pending balance for each currency and payment type can be found in the `source_types` property. type: - array required: - available - livemode - object - pending title: Balance type: - object x-resourceId: balance balance_transaction: properties: amount: description: Gross amount of the transaction, in %s. type: - integer available_on: description: The date the transaction's net funds will become available in the Stripe balance. type: - integer created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string fee: description: Fees (in %s) paid for this transaction. type: - integer fee_details: "$ref": "#/definitions/fee" id: description: Unique identifier for the object. type: - string net: description: Net amount of the transaction, in %s. type: - integer object: description: String representing the object's type. Objects of the same type share the same value. type: - string source: description: The Stripe object this transaction is related to. type: - string status: description: If the transaction's net funds are available in the Stripe balance yet. Either `available` or `pending`. type: - string type: description: 'Transaction type: `adjustment`, `application_fee`, `application_fee_refund`, `charge`, `payment`, `payment_failure_refund`, `payment_refund`, `refund`, `transfer`, `transfer_cancel`, `transfer_failure`, `transfer_refund`, or `validation`.' type: - string required: - amount - available_on - created - currency - fee - fee_details - id - net - object - status - type title: BalanceTransaction type: - object x-resourceId: balance_transaction bank_account: properties: account: description: '' type: - string account_holder_name: description: The name of the person or business that owns the bank account. type: - string account_holder_type: description: The type of entity that holds the account. This can be either `individual` or `company`. type: - string address_city: description: '' type: - string address_line1: description: '' type: - string address_line2: description: '' type: - string address_state: description: '' type: - string address_zip: description: '' type: - string allows_debits: description: '' type: - boolean bank_name: description: Name of the bank associated with the routing number, e.g. `WELLS FARGO`. type: - string country: description: Two-letter ISO code representing the country the bank account is located in. type: - string currency: description: Three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) paid out to the bank account. type: - string customer: description: '' type: - string customer_reference: description: '' type: - string default_for_currency: description: Whether this external account is the default account for its currency. type: - boolean fingerprint: description: Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same. type: - string id: description: Unique identifier for the object. type: - string last4: description: '' type: - string metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string reusable: description: '' type: - boolean routing_number: description: The routing transit number for the bank account. type: - string status: description: Possible values are `new`, `validated`, `verified`, `verification_failed`, or `errored`. A bank account that hasn't had any activity or validation performed is `new`. If Stripe can determine that the bank account exists, its status will be `validated`. Note that there often isn’t enough information to know (e.g. for smaller credit unions), and the validation is not always run. If customer bank account verification has succeeded, the bank account status will be `verified`. If the verification failed for any reason, such as microdeposit failure, the status will be `verification_failed`. If a transfer sent to this bank account fails, we'll set the status to `errored` and will not continue to send transfers until the bank details are updated. type: - string used: description: '' type: - boolean required: - country - currency - id - last4 - object - status title: BankAccount type: - object x-resourceId: bank_account bitcoin_receiver: properties: active: description: True when this bitcoin receiver has received a non-zero amount of bitcoin. type: - boolean amount: description: The amount of `currency` that you are collecting as payment. type: - integer amount_received: description: The amount of `currency` to which `bitcoin_amount_received` has been converted. type: - integer bitcoin_amount: 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.' type: - integer bitcoin_amount_received: description: The amount of bitcoin that has been sent by the customer to this receiver. type: - integer bitcoin_uri: 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). type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) to which the bitcoin will be converted. type: - string customer: description: '' type: - string description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string email: description: The customer's email address, set by the API call that creates the receiver. type: - string filled: description: This flag is initially false and updates to true when the customer sends the `bitcoin_amount` to this receiver. type: - boolean id: description: Unique identifier for the object. type: - string inbound_address: description: A bitcoin address that is specific to this receiver. The customer can send bitcoin to this address to fill the receiver. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string payment: description: The ID of the payment created from the receiver, if any. Hidden when viewing the receiver with a publishable key. type: - string refund_address: description: '' type: - string transactions: properties: data: items: "$ref": "#/definitions/bitcoin_transaction" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: BitcoinTransactionList type: - object uncaptured_funds: description: This receiver contains uncaptured funds that can be used for a payment or refunded. type: - boolean used_for_payment: description: '' type: - boolean required: - active - amount - amount_received - bitcoin_amount - bitcoin_amount_received - bitcoin_uri - created - currency - filled - id - inbound_address - livemode - metadata - object - transactions - uncaptured_funds title: BitcoinReceiver type: - object x-resourceId: bitcoin_receiver bitcoin_transaction: properties: amount: description: The amount of `currency` that the transaction was converted to in real-time. type: - integer bitcoin_amount: description: The amount of bitcoin contained in the transaction. type: - integer created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) to which this transaction was converted. type: - string id: description: Unique identifier for the object. type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string receiver: description: The receiver to which this transaction was sent. type: - string required: - amount - bitcoin_amount - created - currency - id - object - receiver title: BitcoinTransaction type: - object x-resourceId: bitcoin_transaction card: properties: account: 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. type: - string address_city: description: City/District/Suburb/Town/Village. type: - string address_country: description: Billing address country, if provided when creating card. type: - string address_line1: description: Address line 1 (Street address/PO Box/Company name). type: - string address_line1_check: description: 'If `address_line1` was provided, results of the check: `pass`, `fail`, `unavailable`, or `unchecked`.' type: - string address_line2: description: Address line 2 (Apartment/Suite/Unit/Building). type: - string address_state: description: State/County/Province/Region. type: - string address_zip: description: Zip/Postal Code. type: - string address_zip_check: description: 'If `address_zip` was provided, results of the check: `pass`, `fail`, `unavailable`, or `unchecked`.' type: - string available_payout_methods: description: A set of available payout methods for this card. Will be either `["standard"]` or `["standard", "instant"]`. Only values from this set should be passed as the `method` when creating a transfer. type: - array brand: description: Card brand. Can be `Visa`, `American Express`, `MasterCard`, `Discover`, `JCB`, `Diners Club`, or `Unknown`. type: - string country: description: Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected. type: - string currency: description: Three-letter [ISO code for currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). Only applicable on accounts (not customers or recipients). The card can be used as a transfer destination for funds in this currency. type: - string customer: 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. type: - string cvc_check: description: 'If a CVC was provided, results of the check: `pass`, `fail`, `unavailable`, or `unchecked`.' type: - string default_for_currency: description: Only applicable on accounts (not customers or recipients). This indicates whether or not this card is the default external account for its currency. type: - boolean dynamic_last4: description: "(For tokenized numbers only.) The last four digits of the device account number." type: - string estimated_availability: description: '' type: - string exp_month: description: Two digit number representing the card's expiration month. type: - integer exp_year: description: Four digit number representing the card's expiration year. type: - integer fingerprint: description: Uniquely identifies this particular card number. You can use this attribute to check whether two customers who've signed up with you are using the same card number, for example. type: - string funding: description: Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`. type: - string google_reference: description: '' type: - string id: description: Unique identifier for the object. type: - string last4: description: The last 4 digits of the card. type: - string metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object name: description: Cardholder name. type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string recipient: 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. type: - string three_d_secure: description: '' type: - object tokenization_method: description: If the card number is tokenized, this is the method that was used. Can be `apple_pay` or `android_pay`. type: - string required: - brand - exp_month - exp_year - funding - id - last4 - metadata - object title: Card type: - object x-resourceId: card channel_settings: properties: twitter: "$ref": "#/definitions/twitter_buy_now_settings" title: ChannelSettings type: - object x-resourceId: channel_settings charge: properties: amount: description: A positive integer in the [smallest currency unit](https://support.stripe.com/questions/which-zero-decimal-currencies-does-stripe-support) (e.g., 100 cents to charge $1.00 or 100 to charge ¥100, a 0-decimal currency) representing how much to charge. The minimum amount is $0.50 US or [equivalent in charge currency](https://support.stripe.com/questions/what-is-the-minimum-amount-i-can-charge-with-stripe). type: - integer amount_authorized: description: '' type: - integer amount_captured: description: '' type: - integer amount_refunded: description: Amount in %s refunded (can be less than the amount attribute on the charge if a partial refund was issued). type: - integer application: description: ID of the Connect application that created the charge. type: - string application_fee: description: The application fee (if any) for the charge. [See the Connect documentation](/docs/connect/direct-charges#collecting-fees) for details. type: - string balance_transaction: description: ID of the balance transaction that describes the impact of this charge on your account balance (not including refunds or disputes). type: - string captured: description: If the charge was created without capturing, this boolean represents whether or not it is still uncaptured or has since been captured. type: - boolean card: "$ref": "#/definitions/card" created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string customer: description: ID of the customer this charge is for if one exists. type: - string description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string destination: description: The account (if any) the charge was made on behalf of, with an automatic transfer. [See the Connect documentation](/docs/connect/destination-charges) for details. type: - string dispute: description: Details about the dispute if the charge has been disputed. type: - string failure_code: description: Error code explaining reason for charge failure if available (see [the errors section](/docs/api#errors) for a list of codes). type: - string failure_message: description: Message to user further explaining reason for charge failure if available. type: - string fraud_details: description: Hash with information on fraud assessments for the charge. Assessments reported by you have the key `user_report` and, if set, possible values of `safe` and `fraudulent`. Assessments from Stripe have the key `stripe_report` and, if set, the value `fraudulent`. type: - object id: description: Unique identifier for the object. type: - string invoice: description: ID of the invoice this charge is for if one exists. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string on_behalf_of: description: The account (if any) the charge was made on behalf of without triggering an automatic transfer. See the [Connect documentation](/docs/connect/charges-transfers) for details. type: - string order: description: ID of the order this charge is for if one exists. type: - string outcome: "$ref": "#/definitions/charge_outcome" paid: description: "`true` if the charge succeeded, or was successfully authorized for later capture." type: - boolean receipt_email: description: This is the email address that the receipt for this charge was sent to. type: - string receipt_number: description: This is the transaction number that appears on email receipts sent for this charge. type: - string refunded: description: Whether or not the charge has been fully refunded. If the charge is only partially refunded, this attribute will still be false. type: - boolean refunds: properties: data: items: "$ref": "#/definitions/refund" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: RefundList type: - object review: description: ID of the review associated with this charge if one exists. type: - string shipping: "$ref": "#/definitions/shipping" source_transfer: description: The transfer ID which created this charge. Only present if the charge came from another Stripe account. [See the Connect documentation](/docs/connect/destination-charges) for details. type: - string statement_descriptor: description: Extra information about a charge. This will appear on your customer's credit card statement. type: - string status: description: The status of the payment is either `succeeded`, `pending`, or `failed`. type: - string transfer: description: ID of the transfer to the `destination` account (only applicable if the charge was created using the `destination` parameter). type: - string transfer_group: description: A string that identifies this transaction as part of a group. See the [Connect documentation](/docs/connect/charges-transfers#grouping-transactions) for details. type: - string required: - amount - amount_captured - amount_refunded - captured - created - currency - id - livemode - metadata - object - paid - refunded - refunds - status title: Charge type: - object x-resourceId: charge charge_outcome: properties: network_status: description: Possible values are `approved_by_network`, `declined_by_network`, `not_sent_to_network`, and `reversed_after_approval`. The value `reversed_after_approval` indicates the payment was [blocked by Stripe](/docs/declines#blocked-payments) after bank authorization, and may temporarily appear as "pending" on a cardholder's statement. type: - string reason: description: An enumerated value indicating a more detailed explanation of the outcome's `type`. See [understanding declines](/docs/declines) for details. type: - string risk_level: description: Stripe's evaluation of the riskiness of the payment. Possible values for evaluated payments are `normal`, `elevated`, `highest`. For non-card payments, and card-based payments predating the public assignment of risk levels, this field will have the value `not_assessed`. In the event of an error in the evaluation, this field will have the value `unknown`. type: - string rule: description: The ID of the Radar rule that matched the payment. type: - string seller_message: description: A human-readable description of the outcome type and reason, designed for you (the recipient of the payment), not your customer. type: - string type: description: Possible values are `authorized`, `manual_review`, `issuer_declined`, `blocked`, and `invalid`. See [understanding declines](/docs/declines) and [Radar reviews](radar/review) for details. type: - string required: - type title: ChargeOutcome type: - object x-resourceId: charge_outcome country_spec: properties: default_currency: description: The default currency for this country. This applies to both payment methods and bank accounts. type: - string id: description: Unique identifier for the object. Represented as the ISO country code for this country. type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string supported_bank_account_currencies: description: Currencies that can be accepted in the specific country (for transfers). type: - object supported_payment_currencies: description: Currencies that can be accepted in the specified country (for payments). type: - array supported_payment_methods: description: Payment methods available in the specified country. You will need to [enable bitcoin](https://dashboard.stripe.com/account/bitcoin/enable) and [ACH](https://stripe.com/docs/guides/ach) payments on your account for those methods to appear in this list. The `stripe` payment method refers to [charging through your platform](https://stripe.com/docs/connect/destination-charges). type: - array verification_fields: description: Lists the types of verification data needed to keep an account open. Includes 'minimum' fields, which every account must eventually provide, as well as a 'additional' fields, which are only required for some merchants. type: - object required: - default_currency - id - object - supported_bank_account_currencies - supported_payment_currencies - supported_payment_methods - verification_fields title: CountrySpec type: - object x-resourceId: country_spec coupon: properties: amount_off: description: Amount (in the `currency` specified) that will be taken off the subtotal of any invoices for this customer. type: - integer created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: If `amount_off` has been set, the three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) of the amount to take off. type: - string duration: description: One of `forever`, `once`, and `repeating`. Describes how long a customer who applies this coupon will get the discount. type: - string duration_in_months: description: If `duration` is `repeating`, the number of months the coupon applies. Null if coupon `duration` is `forever` or `once`. type: - integer id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean max_redemptions: description: Maximum number of times this coupon can be redeemed, in total, before it is no longer valid. type: - integer metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string percent_off: description: Percent that will be taken off the subtotal of any invoices for this customer for the duration of the coupon. For example, a coupon with percent_off of 50 will make a %s100 invoice %s50 instead. type: - integer redeem_by: description: Date after which the coupon can no longer be redeemed. type: - integer times_redeemed: description: Number of times this coupon has been applied to a customer. type: - integer valid: description: Taking account of the above properties, whether this coupon can still be applied to a customer. type: - boolean required: - created - duration - id - livemode - metadata - object - times_redeemed - valid title: Coupon type: - object x-resourceId: coupon customer: properties: account_balance: description: Current balance, if any, being stored on the customer's account. If negative, the customer has credit to apply to the next invoice. If positive, the customer has an amount owed that will be added to the 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 for recurring billing purposes (i.e., subscriptions, invoices, invoice items). type: - integer alipay_accounts: properties: data: items: "$ref": "#/definitions/alipay_account" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: AlipayAccountList type: - object bank_accounts: properties: data: items: "$ref": "#/definitions/bank_account" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: BankAccountList type: - object business_vat_id: description: The customer's VAT identification number. type: - string cards: properties: data: items: "$ref": "#/definitions/card" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: CardList type: - object created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) the customer can be charged in for recurring billing purposes. type: - string default_bank_account: description: '' type: - string default_card: description: '' type: - string default_source: description: ID of the default source attached to this customer. type: - string delinquent: description: Whether or not the latest charge for the customer's latest invoice has failed. type: - boolean description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string discount: "$ref": "#/definitions/discount" email: description: The customer's email address. type: - string id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string shipping: "$ref": "#/definitions/customer_shipping" sources: properties: data: items: type: - object type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: SourceList type: - object subscriptions: properties: data: items: "$ref": "#/definitions/subscription" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: SubscriptionList type: - object required: - account_balance - cards - created - id - livemode - metadata - object - sources - subscriptions title: Customer type: - object x-resourceId: customer customer_shipping: properties: address: "$ref": "#/definitions/address" name: description: Customer name. type: - string phone: description: Customer phone (including extension). type: - string required: - address - name title: CustomerShipping type: - object x-resourceId: customer_shipping customer_source: properties: customer: description: '' type: - string id: description: Unique identifier for the object. type: - string metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string required: - id - object title: Polymorphic type: - object x-resourceId: customer_source delivery_estimate: properties: date: description: If `type` is `"exact"`, `date` will be the expected delivery date in the format YYYY-MM-DD. type: - string earliest: description: If `type` is `"range"`, `earliest` will be be the earliest delivery date in the format YYYY-MM-DD. type: - string latest: description: If `type` is `"range"`, `latest` will be the latest delivery date in the format YYYY-MM-DD. type: - string type: description: The type of estimate. Must be either `"range"` or `"exact"`. type: - string required: - type title: DeliveryEstimate type: - object x-resourceId: delivery_estimate discount: properties: coupon: "$ref": "#/definitions/coupon" customer: description: '' type: - string end: description: If the coupon has a duration of `once` or `repeating`, the date that this discount will end. If the coupon used has a `forever` duration, this attribute will be null. type: - integer object: description: String representing the object's type. Objects of the same type share the same value. type: - string start: description: Date that the coupon was applied. type: - integer subscription: description: The subscription that this coupon is applied to, if it is applied to a particular subscription. type: - string required: - coupon - object - start title: Discount type: - object x-resourceId: discount dispute: properties: amount: description: Disputed amount. Usually the amount of the charge, but can differ (usually because of currency fluctuation or because only part of the order is disputed). type: - integer balance_transactions: "$ref": "#/definitions/balance_transaction" charge: description: ID of the charge that was disputed. type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string evidence: description: Evidence provided to respond to a dispute. Updating any field in the hash will submit all fields in the hash for review. type: - object evidence_details: description: Information about the evidence submission. type: - object id: description: Unique identifier for the object. type: - string is_charge_refundable: description: If true, it is still possible to refund the disputed payment. Once the payment has been fully refunded, no further funds will be withdrawn from your Stripe account as a result of this dispute. type: - boolean livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string reason: description: Reason given by cardholder for dispute. Possible values are `duplicate`, `fraudulent`, `subscription_canceled`, `product_unacceptable`, `product_not_received`, `unrecognized`, `credit_not_processed`, `general`, `incorrect_account_details`, `insufficient_funds`, `bank_cannot_process`, `debit_not_authorized`, or `customer_initiated`. Read more about [dispute reasons](https://stripe.com/help/disputes#reasons). type: - string status: description: Current status of dispute. Possible values are `warning_needs_response`, `warning_under_review`, `warning_closed`, `needs_response`, `under_review`, `charge_refunded`, `won`, or `lost`. type: - string required: - amount - balance_transactions - charge - created - currency - evidence - evidence_details - id - is_charge_refundable - livemode - metadata - object - reason - status title: Dispute type: - object x-resourceId: dispute error: description: An error response from the Stripe API. properties: charge: description: The ID of the failed charge. type: - string code: description: 'For card errors, a short string from amongst those listed on the right describing the kind of card error that occurred. ' type: - string decline_code: description: For card errors resulting from a bank decline, a short string indicating the bank's reason for the decline if they provide one. See https://stripe.com/docs/declines#bank-declines type: - string message: description: A human-readable message providing more details about the error. For card errors, these messages can be shown to your users. type: - string param: description: The parameter the error relates to if the error is parameter-specific. You can use this to display a message near the correct form field, for example. type: - string type: description: The type of error returned. enum: - api_connection_error - api_error - authentication_error - card_error - invalid_request_error - rate_limit_error type: - string required: - type type: - object event: properties: api_version: description: 'The Stripe API version used to render `data`. *Note: this property is populated for events on or after October 31, 2014.*.' type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer data: "$ref": "#/definitions/event_data" id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. type: - string pending_webhooks: description: Number of webhooks yet to be delivered successfully (return a 20x response) to the URLs you've specified. type: - integer request: description: 'ID of the API request that caused the event. If null, the event was automatic (e.g. Stripe''s automatic subscription handling). Request logs are available in the [dashboard](https://dashboard.stripe.com/logs) but currently not in the API. *Note: this property is populated for events on or after April 23, 2013.*.' type: - string type: description: 'Description of the event: e.g. `invoice.created`, `charge.refunded`, etc.' type: - string required: - created - data - id - livemode - object - pending_webhooks - type title: Event type: - object x-resourceId: event event_data: properties: object: description: Static string describing the type of the object described by this change. For example, an `invoice.created` event will have a full invoice object as the value of the object key. type: - object previous_attributes: description: Hash containing the names of the attributes that have changed and their previous values (only sent along with *.updated events) type: - object required: - object title: EventData type: - object x-resourceId: event_data external_account_source: properties: account: description: '' type: - string address_city: description: '' type: - string address_line1: description: '' type: - string address_line2: description: '' type: - string address_state: description: '' type: - string address_zip: description: '' type: - string country: description: Two-letter ISO code representing the country the bank account is located in. type: - string currency: description: Three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) paid out to the bank account. type: - string customer: description: '' type: - string default_for_currency: description: Whether this external account is the default account for its currency. type: - boolean fingerprint: description: Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same. type: - string id: description: Unique identifier for the object. type: - string last4: description: '' type: - string metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string required: - country - currency - id - last4 - object title: Polymorphic type: - object x-resourceId: external_account_source fee: properties: amount: description: Amount of the fee, in cents. type: - integer application: description: '' type: - string currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string type: description: 'Type of the fee, one of: `application_fee`, `stripe_fee` or `tax`.' type: - string required: - amount - currency - type title: Fee type: - object x-resourceId: fee fee_refund: properties: amount: description: Amount, in %s. type: - integer balance_transaction: description: Balance transaction that describes the impact on your account balance. type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string fee: description: ID of the application fee that was refunded. type: - string id: description: Unique identifier for the object. type: - string metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string required: - amount - created - currency - fee - id - metadata - object title: FeeRefund type: - object x-resourceId: fee_refund inventory: properties: quantity: description: The count of inventory available. Will be present if and only if `type` is `finite`. type: - integer type: description: Inventory type. Possible values are `finite`, `bucket` (not quantified), and `infinite`. type: - string value: description: An indicator of the inventory available. Possible values are `in_stock`, `limited`, and `out_of_stock`. Will be present if and only if `type` is `bucket`. type: - string required: - type title: Inventory type: - object x-resourceId: inventory invoice: properties: amount_due: 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`. type: - integer application_fee: 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. type: - integer attempt_count: 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. type: - integer attempted: description: Whether or not an attempt has been made to pay the invoice. An invoice is not attempted until 1 hour after the `invoice.created` webhook, for example, so you might not want to display that invoice as unpaid to your users. type: - boolean billing: 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. type: - string charge: description: ID of the latest charge generated for this invoice, if any. type: - string closed: description: Whether or not the invoice is still trying to collect payment. An invoice is closed if it's either paid or it has been marked closed. A closed invoice will no longer attempt to collect payment. type: - boolean currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string customer: description: '' type: - string date: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string discount: "$ref": "#/definitions/discount" due_date: description: The date on which payment for this invoice is due. type: - integer ending_balance: description: Ending customer balance after attempting to pay invoice. If the invoice has not been attempted yet, this will be null. type: - integer forgiven: description: Whether or not the invoice has been forgiven. Forgiving an invoice instructs us to update the subscription status as if the invoice were successfully paid. Once an invoice has been forgiven, it cannot be unforgiven or reopened. type: - boolean id: description: Unique identifier for the object. type: - string lines: properties: data: items: "$ref": "#/definitions/invoice_line_item" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: InvoiceLinesList type: - object livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object next_payment_attempt: description: The time at which payment will next be attempted. type: - integer number: description: A unique, identifying string that appears on emails sent to the customer for this invoice. type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string paid: description: Whether or not 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. type: - boolean period_end: description: End of the usage period during which invoice items were added to this invoice. type: - integer period_start: description: Start of the usage period during which invoice items were added to this invoice. type: - integer receipt_number: description: This is the transaction number that appears on email receipts sent for this invoice. type: - string starting_balance: description: Starting customer balance before attempting to pay invoice. If the invoice has not been attempted yet, this will be the current customer balance. type: - integer statement_descriptor: description: Extra information about an invoice for the customer's credit card statement. type: - string subscription: description: The subscription that this invoice was prepared for, if any. type: - string subscription_proration_date: description: Only set for upcoming invoices that preview prorations. The time used to calculate prorations. type: - integer subtotal: description: Total of all subscriptions, invoice items, and prorations on the invoice before any discount is applied. type: - integer tax: description: The amount of tax included in the total, calculated from `tax_percent` and the subtotal. If no `tax_percent` is defined, this value will be null. type: - integer tax_percent: description: This percentage of the subtotal has been added to the total amount of the invoice, including invoice line items and discounts. This field is inherited from the subscription's `tax_percent` field, but can be changed before the invoice is paid. This field defaults to null. type: - number total: description: Total after discount. type: - integer webhooks_delivered_at: description: The time at which webhooks for this invoice were successfully delivered (if the invoice had no webhooks to deliver, this will match `date`). Invoice payment is delayed until webhooks are delivered, or until all webhook delivery attempts have been exhausted. type: - integer required: - amount_due - attempt_count - attempted - closed - currency - customer - date - forgiven - id - lines - livemode - object - paid - period_end - period_start - starting_balance - subtotal - total title: Invoice type: - object x-resourceId: invoice invoice_item: properties: amount: description: Amount (in the `currency` specified) of the invoice item. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string customer: description: The ID of the customer who will be billed when this invoice item is billed. type: - string date: description: '' type: - integer description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string discountable: description: If true, discounts will apply to this invoice item. Always false for prorations. type: - boolean id: description: Unique identifier for the object. type: - string invoice: description: The ID of the invoice this invoice item belongs to. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string period: description: '' type: - object plan: "$ref": "#/definitions/plan" proration: description: Whether or not the invoice item was created automatically as a proration adjustment when the customer switched plans. type: - boolean quantity: description: If the invoice item is a proration, the quantity of the subscription that the proration was computed for. type: - integer subscription: description: The subscription that this invoice item has been created for, if any. type: - string subscription_item: description: '' type: - string required: - amount - currency - customer - date - discountable - id - livemode - metadata - object - proration title: InvoiceItem type: - object x-resourceId: invoice_item invoice_line_item: properties: amount: description: The amount, in %s. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string discountable: description: If true, discounts will apply to this line item. Always false for prorations. type: - boolean id: description: Unique identifier for the object. type: - string livemode: description: Whether or not this is a test line item. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string period: description: The period this line_item covers. For subscription line items, this is the subscription period. For prorations, this starts when the proration was calculated, and ends at the period end of the subscription. For invoice items, this is the time at which the invoice item was created, so the period start and end are the same time. type: - object plan: "$ref": "#/definitions/plan" proration: description: Whether or not this is a proration. type: - boolean quantity: description: The quantity of the subscription, if the line item is a subscription or a proration. type: - integer subscription: description: When type is `invoiceitem`, the subscription that the invoice item pertains to, if any. Left blank when `type` is already subscription, as it'd be redundant with `id`. type: - string subscription_item: description: '' type: - string type: description: A string identifying the type of the source of this line item, either an `invoiceitem` or a `subscription`. type: - string required: - amount - currency - discountable - id - livemode - metadata - object - period - proration - type title: InvoiceLineItem type: - object x-resourceId: invoice_line_item legacy_transfer: properties: amount: description: Amount (in %s) to be transferred to your bank account. type: - integer amount_reversed: description: Amount in %s reversed (can be less than the amount attribute on the transfer if a partial reversal was issued). type: - integer application_fee: description: '' type: - string balance_transaction: description: Balance transaction that describes the impact of this transfer on your account balance. type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string date: description: Date the transfer is scheduled to arrive in the bank. This factors in delays like weekends or bank holidays. type: - integer description: description: Internal-only description of the transfer. type: - string destination: description: ID of the bank account, card, or Stripe account the transfer was sent to. type: - string destination_payment: description: If the destination is a Stripe account, this will be the ID of the payment that the destination account received for the transfer. type: - string failure_code: description: Error code explaining reason for transfer failure if available. See [Types of transfer failures](/docs/api#transfer_failures) for a list of failure codes. type: - string failure_message: description: Message to user further explaining reason for transfer failure if available. type: - string id: description: Unique identifier for the object. type: - string legacy_date: description: '' type: - integer livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object method: description: The method used to send this transfer, which can be `standard` or `instant`. `instant` is only supported for transfers to debit cards. (See [Instant payouts for marketplaces](/blog/instant-payouts-for-marketplaces) for more information.) type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string reversals: properties: data: items: "$ref": "#/definitions/transfer_reversal" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: TransferReversalList type: - object reversed: description: Whether or not the transfer has been fully reversed. If the transfer is only partially reversed, this attribute will still be false. type: - boolean source_transaction: description: ID of the charge (or other transaction) that was used to fund the transfer. If null, the transfer was funded from the available balance. type: - string source_type: description: The source balance this transfer came from. One of `card`, `bank_account`, `bitcoin_receiver`, or `alipay_account`. type: - string statement_descriptor: description: Extra information about a transfer to be displayed on the user's bank statement. type: - string status: description: Current status of the transfer (`paid`, `pending`, `in_transit`, `canceled` or `failed`). A transfer will be `pending` until it is submitted to the bank, at which point it becomes `in_transit`. It will then change to `paid` if the transaction goes through. If it does not go through successfully, its status will change to `failed` or `canceled`. type: - string transfer_group: description: A string that identifies this transaction as part of a group. See the [Connect documentation](/docs/connect/charges-transfers#grouping-transactions) for details. type: - string type: description: Can be `card`, `bank_account`, or `stripe_account`. type: - string required: - amount - amount_reversed - created - currency - date - id - livemode - metadata - object - reversals - reversed - status - type title: LegacyTransfer type: - object x-resourceId: legacy_transfer legal_entity: properties: additional_owners: "$ref": "#/definitions/legal_entity_additional_owner" address: "$ref": "#/definitions/legal_entity_address" address_kana: "$ref": "#/definitions/legal_entity_japan_address" address_kanji: "$ref": "#/definitions/legal_entity_japan_address" business_name: description: The legal name of the company. type: - string business_name_kana: description: The Kana variation of the legal name of the company (Japan only). type: - string business_name_kanji: description: The Kanji variation of the legal name of the company (Japan only). type: - string business_tax_id_provided: description: Whether the business ID number of the legal entity has been provided. type: - boolean business_vat_id_provided: description: Whether the business VAT number of the legal entity has been provided. type: - boolean dob: "$ref": "#/definitions/legal_entity_dob" first_name: description: The first name of the individual responsible for the account. type: - string first_name_kana: description: The Kana variation of the first name of the individual responsible for the account (Japan only). type: - string first_name_kanji: description: The Kanji variation of the first name of the individual responsible for the account (Japan only). type: - string gender: description: The gender of the individual responsible for the account (International regulations require either "male" or "female"). type: - string last_name: description: The last name of the individual responsible for the account. type: - string last_name_kana: description: The Kana varation of the last name of the individual responsible for the account (Japan only). type: - string last_name_kanji: description: The Kanji varation of the last name of the individual responsible for the account (Japan only). type: - string maiden_name: description: The maiden name of the individual responsible for the account. type: - string personal_address: "$ref": "#/definitions/legal_entity_address" personal_address_kana: "$ref": "#/definitions/legal_entity_japan_address" personal_address_kanji: "$ref": "#/definitions/legal_entity_japan_address" personal_id_number_provided: description: Whether the personal id number of the individual responsible for the account has been provided. type: - boolean phone_number: description: The phone number of the company, used for verification. type: - string ssn_last_4_provided: description: Whether the last 4 ssn digits of the individual responsible for the account have been provided. type: - boolean type: description: Either "individual" or "company", for what kind of legal entity the account owner is for. type: - string verification: "$ref": "#/definitions/legal_entity_verification" required: - address - business_tax_id_provided - business_vat_id_provided - dob - personal_address - personal_id_number_provided - ssn_last_4_provided - verification title: LegalEntity type: - object x-resourceId: legal_entity legal_entity_additional_owner: properties: address: "$ref": "#/definitions/legal_entity_address" dob: "$ref": "#/definitions/legal_entity_dob" first_name: description: The first name of this additional owner. type: - string last_name: description: The last name of this additional owner. type: - string verification: "$ref": "#/definitions/legal_entity_verification" required: - address - dob - verification title: LegalEntityAdditionalOwner type: - object x-resourceId: legal_entity_additional_owner legal_entity_address: properties: city: description: City/District/Suburb/Town/Village. type: - string country: description: 2-letter country code. type: - string line1: description: Address line 1 (Street address/PO Box/Company name). type: - string line2: description: Address line 2 (Apartment/Suite/Unit/Building). type: - string postal_code: description: Zip/Postal Code. type: - string state: description: State/County/Province/Region. type: - string title: LegalEntityAddress type: - object x-resourceId: legal_entity_address legal_entity_dob: properties: day: description: The day of birth, between 1 and 31. type: - integer month: description: The month of birth, between 1 and 12. type: - integer year: description: The 4-digit year of birth. type: - integer title: LegalEntityDOB type: - object x-resourceId: legal_entity_dob legal_entity_japan_address: properties: city: description: City/Ward. type: - string country: description: 2-letter country code. type: - string line1: description: Block/Building number. type: - string line2: description: Building details. type: - string postal_code: description: Zip/Postal Code. type: - string state: description: Prefecture. type: - string town: description: Town/cho-me. type: - string title: LegalEntityJapanAddress type: - object x-resourceId: legal_entity_japan_address legal_entity_verification: properties: details: description: A user-displayable string describing the verification state for this legal entity. For example, if a document is uploaded and the picture is too fuzzy, this may say "Identity document is too unclear to read". type: - string details_code: description: One of `scan_corrupt`, `scan_not_readable`, `scan_failed_greyscale`, `scan_not_uploaded`, `scan_id_type_not_supported`, `scan_id_country_not_supported`, `scan_name_mismatch`, `scan_failed_other`, `failed_keyed_identity`, or `failed_other`. A machine-readable code specifying the verification state for this legal entity. type: - string document: description: "(ID of a [file upload](https://stripe.com/docs/guides/file-upload)) A photo (jpg or png) of an identifying document, either a passport or local ID card." type: - string status: description: The state of verification for this legal entity. Possible values are unverified, pending, or verified. type: - string required: - status title: LegalEntityVerification type: - object x-resourceId: legal_entity_verification order: properties: amount: description: A positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a 0-decimal currency) representing the total amount for the order. type: - integer amount_returned: description: '' type: - integer application: description: ID of the Connect Application that created the order. type: - string application_fee: description: '' type: - integer charge: description: The ID of the payment used to pay for the order. Present if the order status is `paid`, `fulfilled`, or `refunded`. type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string customer: description: The customer used for the order. type: - string email: description: The email address of the customer placing the order. type: - string external_coupon_code: description: '' type: - string id: description: Unique identifier for the object. type: - string items: "$ref": "#/definitions/order_item" livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string returns: properties: data: items: "$ref": "#/definitions/order_return" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: OrderReturnList type: - object selected_shipping_method: description: The shipping method that is currently selected for this order, if any. If present, it is equal to one of the `id`s of shipping methods in the `shipping_methods` array. At order creation time, if there are multiple shipping methods, Stripe will automatically selected the first method. type: - string shipping: "$ref": "#/definitions/shipping" shipping_methods: "$ref": "#/definitions/shipping_method" status: description: Current order status. One of `created`, `paid`, `canceled`, `fulfilled`, or `returned`. More detail in the [Relay API Overview](/docs/orders/guide#understanding-order-statuses). type: - string status_transitions: "$ref": "#/definitions/status_transitions" updated: description: '' type: - integer upstream_id: description: The merchant's order ID if it is different from the Stripe order ID. type: - string required: - amount - created - currency - id - items - livemode - metadata - object - status title: Order type: - object x-resourceId: order order_item: properties: amount: description: A positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a 0-decimal currency) representing the total amount for the line item. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string description: description: Description of the line item, meant to be displayable to the user (e.g., `"Express shipping"`). type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string parent: description: The ID of the associated object for this line item. Expandable if not null (e.g., expandable to a SKU). type: - string quantity: description: A positive integer representing the number of instances of `parent` that are included in this order item. Applicable/present only if `type` is `sku`. type: - integer type: description: The type of line item. One of `sku`, `tax`, `shipping`, or `discount`. type: - string required: - amount - currency - description - object - type title: OrderItem type: - object x-resourceId: order_item order_management_settings: properties: provider: description: '' type: - string type: description: '' type: - string required: - type title: OrderManagementSettings type: - object x-resourceId: order_management_settings order_return: properties: amount: description: A positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a 0-decimal currency) representing the total amount for the returned line item. type: - integer created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string id: description: Unique identifier for the object. type: - string items: "$ref": "#/definitions/order_item" livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. type: - string order: description: The order that this return includes items from. type: - string refund: description: The ID of the refund issued for this return. type: - string required: - amount - created - currency - id - items - livemode - object title: OrderReturn type: - object x-resourceId: order_return package_dimensions: properties: height: description: Height, in inches. type: - number length: description: Length, in inches. type: - number weight: description: Weight, in ounces. type: - number width: description: Width, in inches. type: - number required: - height - length - weight - width title: PackageDimensions type: - object x-resourceId: package_dimensions payout: properties: amount: description: Amount (in %s) to be transferred to your bank account or debit card. type: - integer arrival_date: description: Date the payout is expected to arrive in the bank. This factors in delays like weekends or bank holidays. type: - integer balance_transaction: description: ID of the balance transaction that describes the impact of this payout on your account balance. type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string destination: description: ID of the bank account or card the payout was sent to. type: - string failure_balance_transaction: description: If the payout failed or was canceled, this will be the ID of the balance transaction that reversed the initial balance transaction, and puts the funds from the failed payout back in your balance. type: - string failure_code: description: Error code explaining reason for payout failure if available. See [Types of payout failures](/docs/api#payout_failures) for a list of failure codes. type: - string failure_message: description: Message to user further explaining reason for payout failure if available. type: - string id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object method: description: The method used to send this payout, which can be `standard` or `instant`. `instant` is only supported for payouts to debit cards. (See [Instant payouts for marketplaces](/blog/instant-payouts-for-marketplaces) for more information.) type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string source_type: description: The source balance this payout came from. One of `card`, `bank_account`, `bitcoin_receiver`, or `alipay_account`. type: - string statement_descriptor: description: Extra information about a payout to be displayed on the user's bank statement. type: - string status: description: Current status of the payout (`paid`, `pending`, `in_transit`, `canceled` or `failed`). A payout will be `pending` until it is submitted to the bank, at which point it becomes `in_transit`. It will then change to `paid` if the transaction goes through. If it does not go through successfully, its status will change to `failed` or `canceled`. type: - string type: description: Can be `bank_account` or `card`. type: - string required: - amount - arrival_date - created - currency - destination - id - livemode - metadata - method - object - source_type - status - type title: Payout type: - object x-resourceId: payout plan: properties: amount: description: The amount in %s to be charged on the interval specified. type: - integer created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string id: description: Unique identifier for the object. type: - string interval: description: One of `day`, `week`, `month` or `year`. The frequency with which a subscription should be billed. type: - string interval_count: description: The number of intervals (specified in the `interval` property) between each subscription billing. For example, `interval=month` and `interval_count=3` bills every 3 months. type: - integer livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object name: description: Display name of the plan. type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string statement_descriptor: description: Extra information about a charge for the customer's credit card statement. type: - string trial_period_days: description: Number of trial period days granted when subscribing a customer to this plan. Null if the plan has no trial period. type: - integer required: - amount - created - currency - id - interval - interval_count - livemode - metadata - name - object title: Plan type: - object x-resourceId: plan platform_earning: properties: account: description: ID of the Stripe account this fee was taken from. type: - string amount: description: Amount earned, in %s. type: - integer amount_refunded: description: Amount in %s refunded (can be less than the amount attribute on the fee if a partial refund was issued) type: - integer application: description: ID of the Connect application that earned the fee. type: - string balance_transaction: description: Balance transaction that describes the impact of this collected application fee on your account balance (not including refunds). type: - string charge: description: ID of the charge that the application fee was taken from. type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. type: - string originating_transaction: description: ID of the corresponding charge on the platform account, if this fee was the result of a charge using the `destination` parameter. type: - string refunded: description: Whether or not the fee has been fully refunded. If the fee is only partially refunded, this attribute will still be false. type: - boolean refunds: properties: data: items: "$ref": "#/definitions/fee_refund" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: FeeRefundList type: - object required: - account - amount - amount_refunded - application - balance_transaction - charge - created - currency - id - livemode - object - refunded - refunds title: PlatformEarning type: - object x-resourceId: platform_earning product: properties: active: description: Whether or not the product is currently available for purchase. type: - boolean attributes: description: A list of up to 5 attributes that each SKU can provide values for (e.g. `["color", "size"]`). type: - array caption: description: A short one-line description of the product, meant to be displayable to the customer. type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer deactivate_on: description: An array of connect application identifiers that cannot purchase this product. type: - array description: description: The product's description, meant to be displayable to the customer. type: - string id: description: Unique identifier for the object. type: - string images: description: A list of up to 8 URLs of images for this product, meant to be displayable to the customer. type: - array livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object name: description: The product's name, meant to be displayable to the customer. type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string package_dimensions: "$ref": "#/definitions/package_dimensions" shippable: description: Whether this product is a shipped good. type: - boolean skus: properties: data: items: "$ref": "#/definitions/sku" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: SKUList type: - object updated: description: '' type: - integer url: description: A URL of a publicly-accessible webpage for this product. type: - string required: - active - created - id - images - livemode - metadata - name - object - shippable - skus - updated title: Product type: - object x-resourceId: product refund: properties: amount: description: Amount, in %s. type: - integer balance_transaction: description: Balance transaction that describes the impact on your account balance. type: - string charge: description: ID of the charge that was refunded. type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string id: description: Unique identifier for the object. type: - string metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string reason: description: Reason for the refund. If set, possible values are `duplicate`, `fraudulent`, and `requested_by_customer`. type: - string receipt_number: description: This is the transaction number that appears on email receipts sent for this refund. type: - string status: description: Status of the refund. For credit card refunds, this will always be `succeeded`. For other types of refunds, it can be `pending`, `succeeded`, `failed`, or `cancelled`. type: - string required: - amount - created - currency - id - metadata - object title: Refund type: - object x-resourceId: refund settings: properties: authorization: "$ref": "#/definitions/authorization_settings" channels: "$ref": "#/definitions/channel_settings" create_order_hook_url: description: URL that Stripe will call to prepare an order at creation time. Present when shipping type, taxes, or order_management type is `dynamic`. type: - string order_management: "$ref": "#/definitions/order_management_settings" pay_order_hook_url: description: URL that Stripe will call to place an order at payment time. Present when order_management type is `dynamic`, or authorization type is `combined`. type: - string shipping: "$ref": "#/definitions/shipping_settings" taxes: "$ref": "#/definitions/tax_settings" required: - authorization - channels - order_management - shipping - taxes title: Settings type: - object x-resourceId: settings shipping: properties: address: "$ref": "#/definitions/address" carrier: description: The delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc. type: - string name: description: Recipient name. type: - string phone: description: Recipient phone (including extension). type: - string tracking_number: 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. type: - string required: - address - name title: Shipping type: - object x-resourceId: shipping shipping_method: properties: amount: description: A positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a 0-decimal currency) representing the total amount for the line item. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string delivery_estimate: "$ref": "#/definitions/delivery_estimate" description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string id: description: Unique identifier for the object. type: - string required: - amount - currency - description - id title: ShippingMethod type: - object x-resourceId: shipping_method shipping_settings: properties: amount: description: '' type: - integer currency: description: Three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) in which shipping cost will be assessed. Present when `type` is `flat_rate`. type: - string description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string free_above: description: The order amount (before taxes are calculated) above which shipping is free. type: - integer from_address: "$ref": "#/definitions/address" from_name: description: Sender name to use when shipping through a provider. Present when `type` is `provider`. type: - string provider: description: Shipping provider to use (eg, "USPS"). Present when `type` is `provider`. type: - string provider_url: description: The provider's URL used to calculate shipping rates. If present, `type` must be `provider`. type: - string rates: "$ref": "#/definitions/shipping_settings_rate" type: description: Shipping plan type. One of `free`, `flat_rate`, `provider`, `dynamic`. type: - string required: - type title: ShippingSettings type: - object x-resourceId: shipping_settings shipping_settings_rate: properties: amount: description: A positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a 0-decimal currency) representing the total amount for the line item. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string required: - amount - currency - description title: ShippingSettingsRate type: - object x-resourceId: shipping_settings_rate sku: properties: active: description: Whether or not the SKU is available for purchase. type: - boolean attributes: description: 'A dictionary of attributes and values for the attributes defined by the product. If, for example, a product''s attributes are `["size", "gender"]`, a valid SKU has the following dictionary of attributes: `{"size": "Medium", "gender": "Unisex"}`.' type: - object created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string id: description: Unique identifier for the object. type: - string image: description: The URL of an image for this SKU, meant to be displayable to the customer. type: - string inventory: "$ref": "#/definitions/inventory" livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string package_dimensions: "$ref": "#/definitions/package_dimensions" price: description: The cost of the item as a positive integer in the smallest currency unit (that is, 100 cents to charge $1.00, or 100 to charge ¥100, Japanese Yen being a 0-decimal currency). type: - integer product: description: The ID of the product this SKU is associated with. The product must be currently active. type: - string updated: description: '' type: - integer required: - active - attributes - created - currency - id - inventory - livemode - metadata - object - price - product - updated title: SKU type: - object x-resourceId: sku source: properties: amount: description: Amount associated with the source. This is the amount for which the source will be chargeable once ready. Required for `single-use` sources. type: - integer client_secret: description: The client secret of the source. Used for client-side polling using a publishable key. type: - string code_verification: "$ref": "#/definitions/source_code_verification_flow" created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) associated with the source. This is the currency for which the source will be chargeable once ready. Required for `single-use` sources. type: - string flow: description: The authentication `flow` of the source. `flow` is one of `redirect`, `receiver`, `code_verification`, `none`. type: - string id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string owner: "$ref": "#/definitions/source_owner" receiver: "$ref": "#/definitions/source_receiver_flow" redirect: "$ref": "#/definitions/source_redirect_flow" status: description: The status of the charge, one of `canceled`, `chargeable`, `consumed`, `failed`, or `pending`. Only `chargeable` source objects can be used to create a charge. type: - string type: description: The `type` of the source. The `type` is a payment method, one of `card`, `three_d_secure`, `giropay`, `sepa_debit`, `ideal`, `sofort`, or `bancontact`. type: - string usage: description: One of `reusable`, `single-use`. Whether this source should be reusable or not. Some source types may or may not be reusable by construction, while other may leave the option at creation. If an incompatible value is passed, an error will be returned. type: - string required: - client_secret - created - flow - id - livemode - object - status - type title: Source type: - object x-resourceId: source source_code_verification_flow: properties: attempts_remaining: description: The number of attempts remaining to authenticate the source object with a verification code. type: - integer status: description: The status of the code verification, either `pending`, `succeeded` or `failed`. type: - string required: - attempts_remaining - status title: SourceCodeVerificationFlow type: - object x-resourceId: source_code_verification_flow source_owner: properties: address: "$ref": "#/definitions/address" email: description: Owner's email address. type: - string name: description: Owner's full name. type: - string phone: description: Owner's phone number (including extension). type: - string verified_address: "$ref": "#/definitions/address" verified_email: description: Verified owner's email address. type: - string verified_name: description: Verified owner's full name. type: - string verified_phone: description: Verified owner's phone number (including extension). type: - string title: SourceOwner type: - object x-resourceId: source_owner source_receiver_flow: properties: address: description: The address of the receiver source. This is the value that should be communicated to the customer to send their funds to. type: - string amount_charged: description: The total amount that was charged by you. The amount charged is expressed in the source's currency. type: - integer amount_received: description: The total amount received by the receiver source. `amount_received = amount_returned + amount_charged` is true at all time. The amount received is expressed in the source's currency. type: - integer amount_returned: description: The total amount that was returned to the customer. The amount returned is expressed in the source's currency. type: - integer required: - amount_charged - amount_received - amount_returned title: SourceReceiverFlow type: - object x-resourceId: source_receiver_flow source_redirect_flow: properties: return_url: description: The URL you provide to redirect the customer to after they authenticated their payment. type: - string status: description: The status of the redirect, either `pending`, `succeeded` or `failed`. type: - string url: description: The URL provided to you to redirect a customer to as part of a `redirect` authentication flow. type: - string required: - return_url - status - url title: SourceRedirectFlow type: - object x-resourceId: source_redirect_flow status_transitions: properties: canceled: description: '' type: - integer fulfiled: description: '' type: - integer paid: description: '' type: - integer returned: description: '' type: - integer title: StatusTransitions type: - object x-resourceId: status_transitions subscription: properties: account_balance: description: '' type: - integer application_fee_percent: description: A non-negative decimal (with at most two decimal places) between 0 and 100. This represents the percentage of the subscription invoice subtotal that will be transferred to the application owner's Stripe account. type: - number billing: description: Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay this subscription at the end of the cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions. type: - string cancel_at_period_end: description: If the subscription has been canceled with the `at_period_end` flag set to `true`, `cancel_at_period_end` on the subscription will be true. You can use this attribute to determine whether a subscription that has a status of active is scheduled to be canceled at the end of the current period. type: - boolean canceled_at: description: If the subscription has been canceled, the date of that cancellation. If the subscription was canceled with `cancel_at_period_end`, canceled_at will still reflect the date of the initial cancellation request, not the end of the subscription period when the subscription is automatically moved to a canceled state. type: - integer created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer current_period_end: description: End of the current period that the subscription has been invoiced for. At the end of this period, a new invoice will be created. type: - integer current_period_start: description: Start of the current period that the subscription has been invoiced for. type: - integer customer: description: ID of the customer who owns the subscription. type: - string days_until_due: description: Number of days a customer has to pay invoices generated by this subscription. type: - integer discount: "$ref": "#/definitions/discount" ended_at: description: If the subscription has ended (either because it was canceled or because the customer was switched to a subscription to a new plan), the date the subscription ended. type: - integer id: description: Unique identifier for the object. type: - string items: properties: data: items: "$ref": "#/definitions/subscription_item" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: SubscriptionItemList type: - object livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean max_occurrences: description: '' type: - integer metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string on_behalf_of: description: The account (if any) the charge was made on behalf of for charges associated with this subscription. See the Connect documentation for details. type: - string plan: "$ref": "#/definitions/plan" quantity: description: The quantity of the plan to which the customer should be subscribed. For example, if your plan is $10/user/month, and your customer has 5 users, you could pass 5 as the quantity to have the customer charged $50 (5 x $10) monthly. type: - integer retains_own_balance: description: '' type: - boolean start: description: Date the most recent update to this subscription started. type: - integer status: description: Possible values are `trialing`, `active`, `past_due`, `canceled`, or `unpaid`. A subscription still in its trial period is `trialing` and moves to `active` when the trial period is over. When payment to renew the subscription fails, the subscription becomes `past_due`. After Stripe has exhausted all payment retry attempts, the subscription ends up with a status of either `canceled` or `unpaid` depending on your retry settings. Note that when a subscription has a status of `unpaid`, no subsequent invoices will be attempted (invoices will be created, but then immediately automatically closed. Additionally, updating customer card details will not lead to Stripe retrying the latest invoice.). After receiving updated card details from a customer, you may choose to reopen and pay their closed invoices. type: - string tax_percent: description: If provided, each invoice created by this subscription will apply the tax rate, increasing the amount billed to the customer. type: - number trial_end: description: If the subscription has a trial, the end of that trial. type: - integer trial_start: description: If the subscription has a trial, the beginning of that trial. type: - integer required: - cancel_at_period_end - created - customer - id - livemode - metadata - object - start - status title: Subscription type: - object x-resourceId: subscription subscription_item: properties: created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer id: description: Unique identifier for the object. type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string plan: "$ref": "#/definitions/plan" quantity: description: The [quantity](/docs/subscriptions/quantities) of the plan to which the customer should be subscribed. type: - integer required: - created - id - object - plan - quantity title: SubscriptionItem type: - object x-resourceId: subscription_item tax_settings: properties: description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string provider: description: Tax provider to use. Present when `type` is `provider`. type: - string provider_url: description: The provider's URL used to calculate taxes. If present, `type` must be `provider`. type: - string rate: description: Tax rate, expressed as a percentage. Present when `type` is `percentage`. type: - number type: description: Tax plan type. One of `included`, `flat_rate`, `provider`, `dynamic`. type: - string required: - type title: TaxSettings type: - object x-resourceId: tax_settings three_d_secure: properties: amount: description: '' type: - integer authenticated: description: True if the cardholder went through the authentication flow and their bank indicated that authentication succeeded. type: - boolean card: "$ref": "#/definitions/card" created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. type: - string redirect_url: description: If present, this is the URL that you should send the cardholder to for authentication. If you are going to use Stripe.js to display the authentication page in an iframe, you should use the value "_callback". type: - string status: description: Possible values are `redirect_pending`, `succeeded`, or `failed`. When the cardholder can be authenticated, the object starts with status `redirect_pending`. When liability will be shifted to the cardholder's bank (either because the cardholder was successfully authenticated, or because the bank has not implemented 3D Secure, the object wlil be in status `succeeded`. `failed` indicates that authentication was attempted unsuccessfully. type: - string required: - amount - authenticated - card - created - currency - id - livemode - object - status title: ThreeDSecure type: - object x-resourceId: three_d_secure token: properties: bank_account: "$ref": "#/definitions/token_bank_account" card: "$ref": "#/definitions/token_card" client_ip: description: IP address of the client that generated the token. type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. type: - string type: description: 'Type of the token: `card` or `bank_account`.' type: - string usage: description: '' type: - string used: description: Whether or not this token has already been used (tokens can be used only once). type: - boolean required: - created - id - livemode - object - type - used title: Token type: - object x-resourceId: token token_bank_account: properties: account_holder_name: description: The name of the person or business that owns the bank account. type: - string account_holder_type: description: The type of entity that holds the account. This can be either `individual` or `company`. type: - string address_city: description: '' type: - string address_line1: description: '' type: - string address_line2: description: '' type: - string address_state: description: '' type: - string address_zip: description: '' type: - string allows_debits: description: '' type: - boolean bank_name: description: Name of the bank associated with the routing number, e.g. `WELLS FARGO`. type: - string country: description: Two-letter ISO code representing the country the bank account is located in. type: - string currency: description: Three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) paid out to the bank account. type: - string fingerprint: description: Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same. type: - string id: description: Unique identifier for the object. type: - string last4: description: '' type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string reusable: description: '' type: - boolean routing_number: description: The routing transit number for the bank account. type: - string status: description: Possible values are `new`, `validated`, `verified`, `verification_failed`, or `errored`. A bank account that hasn't had any activity or validation performed is `new`. If Stripe can determine that the bank account exists, its status will be `validated`. Note that there often isn’t enough information to know (e.g. for smaller credit unions), and the validation is not always run. If customer bank account verification has succeeded, the bank account status will be `verified`. If the verification failed for any reason, such as microdeposit failure, the status will be `verification_failed`. If a transfer sent to this bank account fails, we'll set the status to `errored` and will not continue to send transfers until the bank details are updated. type: - string used: description: '' type: - boolean required: - country - currency - id - last4 - object - status title: TokenBankAccount type: - object x-resourceId: token_bank_account token_card: properties: address_city: description: City/District/Suburb/Town/Village. type: - string address_country: description: Billing address country, if provided when creating card. type: - string address_line1: description: Address line 1 (Street address/PO Box/Company name). type: - string address_line1_check: description: 'If `address_line1` was provided, results of the check: `pass`, `fail`, `unavailable`, or `unchecked`.' type: - string address_line2: description: Address line 2 (Apartment/Suite/Unit/Building). type: - string address_state: description: State/County/Province/Region. type: - string address_zip: description: Zip/Postal Code. type: - string address_zip_check: description: 'If `address_zip` was provided, results of the check: `pass`, `fail`, `unavailable`, or `unchecked`.' type: - string brand: description: Card brand. Can be `Visa`, `American Express`, `MasterCard`, `Discover`, `JCB`, `Diners Club`, or `Unknown`. type: - string country: description: Two-letter ISO code representing the country of the card. You could use this attribute to get a sense of the international breakdown of cards you've collected. type: - string currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string cvc_check: description: 'If a CVC was provided, results of the check: `pass`, `fail`, `unavailable`, or `unchecked`.' type: - string dynamic_last4: description: "(For tokenized numbers only.) The last four digits of the device account number." type: - string exp_month: description: Two digit number representing the card's expiration month. type: - integer exp_year: description: Four digit number representing the card's expiration year. type: - integer fingerprint: description: Uniquely identifies this particular card number. You can use this attribute to check whether two customers who've signed up with you are using the same card number, for example. type: - string funding: description: Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`. type: - string google_reference: description: '' type: - string id: description: Unique identifier for the object. type: - string last4: description: The last 4 digits of the card. type: - string metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object name: description: Cardholder name. type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string three_d_secure: description: '' type: - object tokenization_method: description: If the card number is tokenized, this is the method that was used. Can be `apple_pay` or `android_pay`. type: - string required: - brand - exp_month - exp_year - funding - id - last4 - metadata - object title: TokenCard type: - object x-resourceId: token_card transfer: properties: amount: description: Amount in %s to be transferred. type: - integer amount_reversed: description: Amount in %s reversed (can be less than the amount attribute on the transfer if a partial reversal was issued). type: - integer balance_transaction: description: Balance transaction that describes the impact of this transfer on your account balance. type: - string created: description: Time that this record of the transfer was first created. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string destination: description: ID of the Stripe account the transfer was sent to. type: - string destination_payment: description: If the destination is a Stripe account, this will be the ID of the payment that the destination account received for the transfer. type: - string id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: A set of key/value pairs that you can attach to a transfer object. It can be useful for storing additional information about the transfer in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string reversals: properties: data: items: "$ref": "#/definitions/transfer_reversal" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: TransferReversalList type: - object reversed: description: Whether or not the transfer has been fully reversed. If the transfer is only partially reversed, this attribute will still be false. type: - boolean source_type: description: '' type: - string transfer_group: description: A string that identifies this transaction as part of a group. See the [Connect documentation](/docs/connect/charges-transfers#grouping-transactions) for details. type: - string required: - amount - amount_reversed - created - currency - id - livemode - metadata - object - reversals - reversed title: Transfer type: - object x-resourceId: transfer transfer_recipient: properties: active_account: "$ref": "#/definitions/bank_account" cards: properties: data: items: "$ref": "#/definitions/card" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: CardList type: - object created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer default_card: description: The default card to use for creating transfers to this recipient. type: - string description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string email: description: '' type: - string id: description: Unique identifier for the object. type: - string livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object migrated_to: description: 'The ID of the [managed account](/docs/connect/managed-accounts) this recipient was migrated to. If set, the recipient can no longer be updated, nor can transfers be made to it: use the managed account instead.' type: - string name: description: Full, legal name of the recipient. type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string tin: description: '' type: - string tin_verification_pending: description: '' type: - boolean type: description: Type of the recipient, one of `individual` or `corporation`. type: - string required: - created - id - livemode - metadata - object - tin_verification_pending - type title: TransferRecipient type: - object x-resourceId: transfer_recipient transfer_reversal: properties: amount: description: Amount, in %s. type: - integer balance_transaction: description: Balance transaction that describes the impact on your account balance. type: - string created: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string id: description: Unique identifier for the object. type: - string metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object object: description: String representing the object's type. Objects of the same type share the same value. type: - string transfer: description: ID of the transfer that was reversed. type: - string required: - amount - created - currency - id - metadata - object - transfer title: TransferReversal type: - object x-resourceId: transfer_reversal transfer_schedule: properties: delay_days: description: The number of days charges for the account will be held before being paid out. type: - integer interval: description: How frequently funds will be paid out. One of `manual` (transfers only created via API call), `daily`, `weekly`, or `monthly`. type: - string monthly_anchor: description: The day of the month funds will be paid out. Only shown if `interval` is monthly. type: - integer weekly_anchor: description: The day of the week funds will be paid out, of the style 'monday', 'tuesday', etc. Only shown if `interval` is weekly. type: - string required: - delay_days - interval title: TransferSchedule type: - object x-resourceId: transfer_schedule twitter_buy_now_settings: properties: enabled: description: '' type: - boolean marketplace_id: description: '' type: - string merchant_id: description: '' type: - string oauth_token_provided: description: '' type: - boolean oauth_token_secret_provided: description: '' type: - boolean privacy_url: description: '' type: - string sales_terms: description: '' type: - string shipping_policy: description: '' type: - string terms_url: description: '' type: - string username: description: '' type: - string required: - enabled - oauth_token_provided - oauth_token_secret_provided - username title: TwitterBuyNowSettings type: - object x-resourceId: twitter_buy_now_settings upcoming_invoice: properties: amount_due: 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`. type: - integer application_fee: 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. type: - integer attempt_count: 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. type: - integer attempted: description: Whether or not an attempt has been made to pay the invoice. An invoice is not attempted until 1 hour after the `invoice.created` webhook, for example, so you might not want to display that invoice as unpaid to your users. type: - boolean billing: 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. type: - string charge: description: ID of the latest charge generated for this invoice, if any. type: - string closed: description: Whether or not the invoice is still trying to collect payment. An invoice is closed if it's either paid or it has been marked closed. A closed invoice will no longer attempt to collect payment. type: - boolean currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). type: - string customer: description: '' type: - string date: description: Time at which the object was created. Measured in seconds since the Unix epoch. type: - integer description: description: An arbitrary string attached to the object. Often useful for displaying to users. type: - string discount: "$ref": "#/definitions/discount" due_date: description: The date on which payment for this invoice is due. type: - integer ending_balance: description: Ending customer balance after attempting to pay invoice. If the invoice has not been attempted yet, this will be null. type: - integer forgiven: description: Whether or not the invoice has been forgiven. Forgiving an invoice instructs us to update the subscription status as if the invoice were successfully paid. Once an invoice has been forgiven, it cannot be unforgiven or reopened. type: - boolean lines: properties: data: items: "$ref": "#/definitions/invoice_line_item" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: InvoiceLinesList type: - object livemode: description: Flag indicating whether the object exists in live mode or test mode. type: - boolean metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. type: - object next_payment_attempt: description: The time at which payment will next be attempted. type: - integer number: description: A unique, identifying string that appears on emails sent to the customer for this invoice. type: - string object: description: String representing the object's type. Objects of the same type share the same value. type: - string paid: description: Whether or not 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. type: - boolean period_end: description: End of the usage period during which invoice items were added to this invoice. type: - integer period_start: description: Start of the usage period during which invoice items were added to this invoice. type: - integer receipt_number: description: This is the transaction number that appears on email receipts sent for this invoice. type: - string starting_balance: description: Starting customer balance before attempting to pay invoice. If the invoice has not been attempted yet, this will be the current customer balance. type: - integer statement_descriptor: description: Extra information about an invoice for the customer's credit card statement. type: - string subscription: description: The subscription that this invoice was prepared for, if any. type: - string subscription_proration_date: description: Only set for upcoming invoices that preview prorations. The time used to calculate prorations. type: - integer subtotal: description: Total of all subscriptions, invoice items, and prorations on the invoice before any discount is applied. type: - integer tax: description: The amount of tax included in the total, calculated from `tax_percent` and the subtotal. If no `tax_percent` is defined, this value will be null. type: - integer tax_percent: description: This percentage of the subtotal has been added to the total amount of the invoice, including invoice line items and discounts. This field is inherited from the subscription's `tax_percent` field, but can be changed before the invoice is paid. This field defaults to null. type: - number total: description: Total after discount. type: - integer webhooks_delivered_at: description: The time at which webhooks for this invoice were successfully delivered (if the invoice had no webhooks to deliver, this will match `date`). Invoice payment is delayed until webhooks are delivered, or until all webhook delivery attempts have been exhausted. type: - integer required: - amount_due - attempt_count - attempted - closed - currency - customer - date - forgiven - lines - livemode - object - paid - period_end - period_start - starting_balance - subtotal - total title: UpcomingInvoice type: - object x-resourceId: upcoming_invoice host: api.stripe.com info: contact: email: dev-platform@stripe.com name: Stripe Dev Platform Team url: https://stripe.com description: The Stripe REST API. Please see https://stripe.com/docs/api for more details. termsOfService: https://stripe.com/us/terms/ title: Stripe API version: '2017-04-06' paths: "/v1/3d_secure": post: description: '' operationId: Create3DSecure parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: amount: description: Amount of the charge that you will create when authentication completes. title: amount type: - integer card: description: The ID of a card token, or the ID of a card belonging to the given customer. title: card type: - string currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). title: currency type: - string customer: description: '' title: customer type: - string return_url: description: The URL that the cardholder's browser will be returned to when authentication completes. title: return_url type: - string required: - amount - currency - return_url responses: '200': description: Successful response. schema: "$ref": "#/definitions/three_d_secure" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/3d_secure/{three_d_secure}": get: description: "

Retrieves a 3D Secure object.

" operationId: Retrieve3DSecure parameters: - description: The identifier of the 3D Secure object to be retrieved. in: path name: three_d_secure required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/three_d_secure" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/account": delete: description:

With Connect, you may delete Stripe accounts you manage.

Managed accounts created using test-mode keys can be deleted at any time. Managed accounts created using live-mode keys may only be deleted once all balances are zero.

If you are looking to close your own account, use the data tab in your account settings instead.

operationId: AccountDelete parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: account: description: The identifier of the account to be deleted. If none is provided, will default to the account of the API key. title: account type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/account" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the details of the account.

" operationId: AccountRetrieve parameters: - description: The identifier of the account to be retrieved. If none is provided, will default to the account of the API key. in: query name: account required: false type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/account" default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

Updates an account by setting the values of the parameters passed. Any parameters not provided will be left unchanged.

You may only update accounts that you manage. To update your own account, you can currently only do so via the dashboard. For more information on updating Managed Accounts, see our guide.

operationId: AccountUpdate parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: business_logo: description: '' title: business_logo type: - string business_name: description: The publicly sharable name for this account. title: business_name type: - string business_primary_color: description: A CSS hex color value representing the primary branding color for this account. title: business_primary_color type: - string business_url: description: The URL that best shows the service or product provided for this account. title: business_url type: - string debit_negative_balances: description: A boolean for whether or not Stripe should try to reclaim negative balances from the account holder's bank account. See our [managed account bank transfer guide](/docs/connect/account-balances) for more information. title: debit_negative_balances type: - boolean decline_charge_on: description: Account-level settings to automatically decline certain types of charges regardless of the bank's decision. title: decline_charge_on type: - object default_currency: 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://support.stripe.com/questions/which-currencies-does-stripe-support). title: default_currency type: - string email: description: 'Email address of the account holder. For standalone accounts, this is used to email them asking them to claim their Stripe account. For managed accounts, this is only to make the account easier to identify to you: Stripe will not email the account holder.' title: email type: - string external_account: description: A card or bank account to attach to the account. You can provide either a token, like the ones returned by [Stripe.js](/docs/stripe.js), or a dictionary as documented in the external_account parameter for either [card](/docs/api#account_create_card) or [bank account](/docs/api#account_create_bank_account) creation.

This will create a new external account object, make it the new default external account for its currency, and delete the old default if one exists. If you want to add additional external accounts instead of replacing the existing default for this currency, use the bank account or card creation API. title: external_account type: - object - string legal_entity: description: Information about the account holder; varies by [account country](#country_spec_object-verification_fields) and [account status](#account_object-verification-fields_needed). title: legal_entity type: - object mcc: description: '' title: mcc type: - integer metadata: description: A set of key/value pairs that you can attach to an account object. It can be useful for storing additional information about the account in a structured format. title: metadata type: - object orders: description: '' title: orders type: - object payout_schedule: description: Details on when this account will make funds from charges available, and when they will be paid out to the account holder's bank account. See our [managed account bank transfer guide](/docs/connect/bank-transfers#payout-information) for more information. title: payout_schedule type: - object payout_statement_descriptor: description: The text that will appear on the account's bank account statement for payouts. If not set, this will default to your platform's bank descriptor set on the Dashboard. title: payout_statement_descriptor type: - string product_description: description: Internal-only description of the product being sold or service being provided by this account. It's used by Stripe for risk and underwriting purposes. title: product_description type: - string statement_descriptor: description: The text that will appear on credit card statements by default if a charge is being made [directly on the account](/docs/connect/direct-charges). title: statement_descriptor type: - string support_email: description: A publicly shareable email address that can be reached for support for this account. title: support_email type: - string support_phone: description: A publicly shareable phone number that can be reached for support for this account. title: support_phone type: - string support_url: description: A publicly shareable URL that can be reached for support for this account. title: support_url type: - string tos_acceptance: description: Details on who accepted the Stripe terms of service, and when they accepted it. See our [updating managed accounts guide](/docs/connect/updating-accounts#tos-acceptance) for more information. title: tos_acceptance type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/account" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/account/bank_accounts": post: description: '' operationId: CreateAccountExternalAccount parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: default_for_currency: description: If you set this to true (or if this is the first external account being added in this currency) this account will become the default external account for its currency. title: default_for_currency type: - boolean external_account: description: This string to be replaced by DocSpecGenerator. title: external_account type: - object - string metadata: description: A set of key/value pairs that you can attach to an external account object. It can be useful for storing additional information about the external account in a structured format. title: metadata type: - object required: - external_account responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/account/bank_accounts/{id}": delete: description: '' operationId: DeleteAccountExternalAccount parameters: - description: The ID of the external account to be deleted. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

Updates the metadata of a bank account belonging to a managed accounts, and optionally sets it as the default for its currency. Other bank account details are not editable by design.

operationId: UpdateAccountBankAccount parameters: - description: The ID of the bank account to be updated. in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: default_for_currency: description: If set to `true`, this bank account will become the default external account for its currency. title: default_for_currency type: - boolean metadata: description: '' title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/account/external_accounts": get: description: '' operationId: AllAccountExternalAccounts parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string responses: '200': description: Successful response. schema: properties: data: items: type: - object type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: ExternalAccountList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateAccountExternalAccount parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: default_for_currency: description: If you set this to true (or if this is the first external account being added in this currency) this account will become the default external account for its currency. title: default_for_currency type: - boolean external_account: description: This string to be replaced by DocSpecGenerator. title: external_account type: - object - string metadata: description: A set of key/value pairs that you can attach to an external account object. It can be useful for storing additional information about the external account in a structured format. title: metadata type: - object required: - external_account responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/account/external_accounts/{id}": delete: description: '' operationId: DeleteAccountExternalAccount parameters: - description: The ID of the external account to be deleted. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

Updates the metadata of a bank account belonging to a managed accounts, and optionally sets it as the default for its currency. Other bank account details are not editable by design.

operationId: UpdateAccountBankAccount parameters: - description: The ID of the bank account to be updated. in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: default_for_currency: description: If set to `true`, this bank account will become the default external account for its currency. title: default_for_currency type: - boolean metadata: description: '' title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/accounts": get: description:

Returns a list of accounts connected to your platform via Connect. If you’re not a platform, the list will be empty.

operationId: AllAccount parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/account" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/accounts" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: AccountCreate parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: business_logo: description: '' title: business_logo type: - string business_name: description: The publicly sharable name for this account. title: business_name type: - string business_primary_color: description: A CSS hex color value representing the primary branding color for this account. title: business_primary_color type: - string business_url: description: The URL that best shows the service or product provided for this account. title: business_url type: - string country: description: '' title: country type: - string debit_negative_balances: description: A boolean for whether or not Stripe should try to reclaim negative balances from the account holder's bank account. See our [managed account bank transfer guide](/docs/connect/account-balances) for more information. title: debit_negative_balances type: - boolean decline_charge_on: description: Account-level settings to automatically decline certain types of charges regardless of the bank's decision. title: decline_charge_on type: - object default_currency: 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://support.stripe.com/questions/which-currencies-does-stripe-support). title: default_currency type: - string email: description: 'Email address of the account holder. For standalone accounts, this is used to email them asking them to claim their Stripe account. For managed accounts, this is only to make the account easier to identify to you: Stripe will not email the account holder.' title: email type: - string external_account: description: A card or bank account to attach to the account. You can provide either a token, like the ones returned by [Stripe.js](/docs/stripe.js), or a dictionary as documented in the external_account parameter for either [card](/docs/api#account_create_card) or [bank account](/docs/api#account_create_bank_account) creation.

This will create a new external account object, make it the new default external account for its currency, and delete the old default if one exists. If you want to add additional external accounts instead of replacing the existing default for this currency, use the bank account or card creation API. title: external_account type: - object - string legal_entity: description: Information about the account holder; varies by [account country](#country_spec_object-verification_fields) and [account status](#account_object-verification-fields_needed). title: legal_entity type: - object managed: description: '' title: managed type: - boolean mcc: description: '' title: mcc type: - integer metadata: description: A set of key/value pairs that you can attach to an account object. It can be useful for storing additional information about the account in a structured format. title: metadata type: - object orders: description: '' title: orders type: - object payout_schedule: description: Details on when this account will make funds from charges available, and when they will be paid out to the account holder's bank account. See our [managed account bank transfer guide](/docs/connect/bank-transfers#payout-information) for more information. title: payout_schedule type: - object payout_statement_descriptor: description: The text that will appear on the account's bank account statement for payouts. If not set, this will default to your platform's bank descriptor set on the Dashboard. title: payout_statement_descriptor type: - string platform_account: description: '' title: platform_account type: - boolean product_description: description: Internal-only description of the product being sold or service being provided by this account. It's used by Stripe for risk and underwriting purposes. title: product_description type: - string statement_descriptor: description: The text that will appear on credit card statements by default if a charge is being made [directly on the account](/docs/connect/direct-charges). title: statement_descriptor type: - string support_email: description: A publicly shareable email address that can be reached for support for this account. title: support_email type: - string support_phone: description: A publicly shareable phone number that can be reached for support for this account. title: support_phone type: - string support_url: description: A publicly shareable URL that can be reached for support for this account. title: support_url type: - string tos_acceptance: description: Details on who accepted the Stripe terms of service, and when they accepted it. See our [updating managed accounts guide](/docs/connect/updating-accounts#tos-acceptance) for more information. title: tos_acceptance type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/account_with_keys" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/accounts/{account}": delete: description:

With Connect, you may delete Stripe accounts you manage.

Managed accounts created using test-mode keys can be deleted at any time. Managed accounts created using live-mode keys may only be deleted once all balances are zero.

If you are looking to close your own account, use the data tab in your account settings instead.

operationId: AccountDelete parameters: - description: The identifier of the account to be deleted. If none is provided, will default to the account of the API key. in: path name: account required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/account" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the details of the account.

" operationId: AccountRetrieve parameters: - description: The identifier of the account to be retrieved. If none is provided, will default to the account of the API key. in: path name: account required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/account" default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

Updates an account by setting the values of the parameters passed. Any parameters not provided will be left unchanged.

You may only update accounts that you manage. To update your own account, you can currently only do so via the dashboard. For more information on updating Managed Accounts, see our guide.

operationId: AccountUpdate parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: business_logo: description: '' title: business_logo type: - string business_name: description: The publicly sharable name for this account. title: business_name type: - string business_primary_color: description: A CSS hex color value representing the primary branding color for this account. title: business_primary_color type: - string business_url: description: The URL that best shows the service or product provided for this account. title: business_url type: - string debit_negative_balances: description: A boolean for whether or not Stripe should try to reclaim negative balances from the account holder's bank account. See our [managed account bank transfer guide](/docs/connect/account-balances) for more information. title: debit_negative_balances type: - boolean decline_charge_on: description: Account-level settings to automatically decline certain types of charges regardless of the bank's decision. title: decline_charge_on type: - object default_currency: 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://support.stripe.com/questions/which-currencies-does-stripe-support). title: default_currency type: - string email: description: 'Email address of the account holder. For standalone accounts, this is used to email them asking them to claim their Stripe account. For managed accounts, this is only to make the account easier to identify to you: Stripe will not email the account holder.' title: email type: - string external_account: description: A card or bank account to attach to the account. You can provide either a token, like the ones returned by [Stripe.js](/docs/stripe.js), or a dictionary as documented in the external_account parameter for either [card](/docs/api#account_create_card) or [bank account](/docs/api#account_create_bank_account) creation.

This will create a new external account object, make it the new default external account for its currency, and delete the old default if one exists. If you want to add additional external accounts instead of replacing the existing default for this currency, use the bank account or card creation API. title: external_account type: - object - string legal_entity: description: Information about the account holder; varies by [account country](#country_spec_object-verification_fields) and [account status](#account_object-verification-fields_needed). title: legal_entity type: - object mcc: description: '' title: mcc type: - integer metadata: description: A set of key/value pairs that you can attach to an account object. It can be useful for storing additional information about the account in a structured format. title: metadata type: - object orders: description: '' title: orders type: - object payout_schedule: description: Details on when this account will make funds from charges available, and when they will be paid out to the account holder's bank account. See our [managed account bank transfer guide](/docs/connect/bank-transfers#payout-information) for more information. title: payout_schedule type: - object payout_statement_descriptor: description: The text that will appear on the account's bank account statement for payouts. If not set, this will default to your platform's bank descriptor set on the Dashboard. title: payout_statement_descriptor type: - string product_description: description: Internal-only description of the product being sold or service being provided by this account. It's used by Stripe for risk and underwriting purposes. title: product_description type: - string statement_descriptor: description: The text that will appear on credit card statements by default if a charge is being made [directly on the account](/docs/connect/direct-charges). title: statement_descriptor type: - string support_email: description: A publicly shareable email address that can be reached for support for this account. title: support_email type: - string support_phone: description: A publicly shareable phone number that can be reached for support for this account. title: support_phone type: - string support_url: description: A publicly shareable URL that can be reached for support for this account. title: support_url type: - string tos_acceptance: description: Details on who accepted the Stripe terms of service, and when they accepted it. See our [updating managed accounts guide](/docs/connect/updating-accounts#tos-acceptance) for more information. title: tos_acceptance type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/account" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/accounts/{account}/bank_accounts": post: description: '' operationId: CreateAccountExternalAccount parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: default_for_currency: description: If you set this to true (or if this is the first external account being added in this currency) this account will become the default external account for its currency. title: default_for_currency type: - boolean external_account: description: This string to be replaced by DocSpecGenerator. title: external_account type: - object - string metadata: description: A set of key/value pairs that you can attach to an external account object. It can be useful for storing additional information about the external account in a structured format. title: metadata type: - object required: - external_account responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/accounts/{account}/bank_accounts/{id}": delete: description: '' operationId: DeleteAccountExternalAccount parameters: - description: The ID of the external account to be deleted. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

Updates the metadata of a bank account belonging to a managed accounts, and optionally sets it as the default for its currency. Other bank account details are not editable by design.

operationId: UpdateAccountBankAccount parameters: - description: The ID of the bank account to be updated. in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: default_for_currency: description: If set to `true`, this bank account will become the default external account for its currency. title: default_for_currency type: - boolean metadata: description: '' title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/accounts/{account}/external_accounts": get: description: '' operationId: AllAccountExternalAccounts parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string responses: '200': description: Successful response. schema: properties: data: items: type: - object type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: ExternalAccountList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateAccountExternalAccount parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: default_for_currency: description: If you set this to true (or if this is the first external account being added in this currency) this account will become the default external account for its currency. title: default_for_currency type: - boolean external_account: description: This string to be replaced by DocSpecGenerator. title: external_account type: - object - string metadata: description: A set of key/value pairs that you can attach to an external account object. It can be useful for storing additional information about the external account in a structured format. title: metadata type: - object required: - external_account responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/accounts/{account}/external_accounts/{id}": delete: description: '' operationId: DeleteAccountExternalAccount parameters: - description: The ID of the external account to be deleted. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

Updates the metadata of a bank account belonging to a managed accounts, and optionally sets it as the default for its currency. Other bank account details are not editable by design.

operationId: UpdateAccountBankAccount parameters: - description: The ID of the bank account to be updated. in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: default_for_currency: description: If set to `true`, this bank account will become the default external account for its currency. title: default_for_currency type: - boolean metadata: description: '' title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/external_account_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/accounts/{account}/reject": post: description:

With Connect, you may flag managed accounts as suspicious.

Managed accounts created using test-mode keys can be rejected at any time. Managed accounts created using live-mode keys may only be rejected once all balances are zero.

operationId: AccountReject parameters: - description: The identifier of the account to be rejected. in: path name: account required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: reason: description: The reason for rejecting the account. May be one of `fraud`, `terms_of_service`, or `other`. title: reason type: - string required: - reason responses: '200': description: Successful response. schema: "$ref": "#/definitions/account" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/apple_pay/domains": get: description: '' operationId: AllApplePayDomains parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: '' in: query name: domain_name required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/apple_pay_domain" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/apple_pay/domains" type: - string required: - data - has_more - object - url title: ApplePayDomainList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateApplePayDomain parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: domain_name: description: '' title: domain_name type: - string required: - domain_name responses: '200': description: Successful response. schema: "$ref": "#/definitions/apple_pay_domain" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/apple_pay/domains/{domain}": delete: description: '' operationId: DeleteApplePayDomain parameters: - description: '' in: path name: domain required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/apple_pay_domain" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: '' operationId: RetrieveApplePayDomain parameters: - description: '' in: path name: domain required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/apple_pay_domain" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/application_fees": get: description: "

Returns a list of application fees you’ve previously collected. The application fees are returned in sorted order, with the most recent fees appearing first.

" operationId: AllPlatformEarnings parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: '' in: query name: created required: false type: integer - description: Only return application fees for the charge specified by this charge ID. in: query name: charge required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/platform_earning" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/application_fees" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/application_fees/{fee}/refunds/{id}": get: description: "

By default, you can see the 10 most recent refunds stored directly on the application fee object, but you can also retrieve details about a specific refund stored on the application fee.

" operationId: RetrievePlatformEarningRefund parameters: - description: ID of the application fee refunded. in: path name: fee required: true type: string - description: ID of refund to retrieve. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/fee_refund" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the specified application fee refund by setting the values of the parameters passed. Any parameters not provided will be left unchanged.

This request only accepts metadata as an argument.

" operationId: UpdatePlatformEarningRefund parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to an application fee refund object. It can be useful for storing additional information about the refund in a structured format. title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/fee_refund" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/application_fees/{id}": get: description: "

Retrieves the details of an application fee that your account has collected. The same information is returned when refunding the application fee.

" operationId: RetrievePlatformEarning parameters: - description: The identifier of the fee to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/platform_earning" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/application_fees/{id}/refund": post: description: '' operationId: RefundPlatformEarning parameters: - description: '' in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: amount: description: '' title: amount type: - integer directive: description: '' title: directive type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/platform_earning" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/application_fees/{id}/refunds": get: description: "

You can see a list of the refunds belonging to a specific application fee. Note that the 10 most recent refunds are always available by default on the application fee object. If you need more than those 10, you can use this API method and the limit and starting_after parameters to page through additional refunds.

" operationId: AllPlatformEarningsRefunds parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the application fee whose refunds will be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/fee_refund" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: FeeRefundList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreatePlatformEarningRefund parameters: - description: '' in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: amount: description: '' title: amount type: - integer directive: description: '' title: directive type: - string metadata: description: '' title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/fee_refund" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/balance": get: description: "

Retrieves the current account balance, based on the authentication that was used to make the request.

" operationId: BalanceRetrieve parameters: [] responses: '200': description: Successful response. schema: "$ref": "#/definitions/balance" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/balance/history": get: description: "

Returns a list of transactions that have contributed to the Stripe account balance (e.g., charges, transfers, and so forth). The transactions are returned in sorted order, with the most recent transactions appearing first.

" operationId: AllBalanceTransactions parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: For automatic Stripe payouts only, only returns transactions that were payed out on the specified payout ID. in: query name: payout required: false type: string - description: '' in: query name: available_on required: false type: string - description: '' in: query name: created required: false type: integer - description: 'Only returns transactions of the given type. One of: `charge`, `refund`, `adjustment`, `application_fee`, `application_fee_refund`, `transfer`, `payment`, `payout`, or `payout_failure`.' in: query name: type required: false type: string - description: Only returns the original transaction. in: query name: source required: false type: string - description: '' in: query name: currency required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/balance_transaction" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/balance/history" type: - string required: - data - has_more - object - url title: BalanceTransactionsList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/balance/history/{id}": get: description: "

Retrieves the balance transaction with the given ID.

" operationId: RetrieveBalanceTransaction parameters: - description: The ID of the desired balance transaction (as found on any API object that affects the balance, e.g. a charge or transfer). in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/balance_transaction" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/bitcoin/payments/{charge}/refund": post: description: '' operationId: CreatePaymentRefundWithPaymentResponse parameters: - description: '' in: path name: charge required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: amount: description: '' title: amount type: - integer description: description: '' title: description type: - string directive: description: '' title: directive type: - string metadata: description: '' title: metadata type: - object reason: description: '' title: reason type: - string refund_address: description: '' title: refund_address type: - string refund_application_fee: description: '' title: refund_application_fee type: - boolean reverse_transfer: description: '' title: reverse_transfer type: - boolean responses: '200': description: Successful response. schema: "$ref": "#/definitions/charge" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/bitcoin/receivers": get: description: "

Returns a list of your receivers. Receivers are returned sorted by creation date, with the most recently created receivers appearing first.

" operationId: AllReceivers parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: Filter for active receivers. in: query name: active required: false type: boolean - description: Filter for filled receivers. in: query name: filled required: false type: boolean - description: Filter for receivers with uncaptured funds. in: query name: uncaptured_funds required: false type: boolean responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/bitcoin_receiver" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/bitcoin/receivers" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Creates a Bitcoin receiver object that can be used to accept bitcoin payments from your customer. The receiver exposes a Bitcoin address and is created with a bitcoin to USD exchange rate that is valid for 10 minutes.

" operationId: CreateReceiver parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: amount: description: The amount of `currency` that you will be paid. title: amount type: - integer currency: description: Three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) to which the bitcoin will be converted. You will be paid out in this currency. Only USD is currently supported. title: currency type: - string description: description: '' title: description type: - string email: description: The email address of the customer. title: email type: - string metadata: description: A set of key/value pairs that you can attach to a customer object. It can be useful for storing additional information about the customer in a structured format. title: metadata type: - object refund_mispayments: description: A flag that indicates whether you would like Stripe to automatically handle refunds for any [mispayments](/docs/guides/bitcoin#mispayments) to the receiver. title: refund_mispayments type: - boolean required: - amount - currency responses: '200': description: Successful response. schema: "$ref": "#/definitions/bitcoin_receiver" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/bitcoin/receivers/{id}": delete: description: '' operationId: DeleteReceiver parameters: - description: '' in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/bitcoin_receiver" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the Bitcoin receiver with the given ID.

" operationId: RetrieveReceiver parameters: - description: '' in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/bitcoin_receiver" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: UpdateReceiver parameters: - description: '' in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: description: description: '' title: description type: - string email: description: '' title: email type: - string metadata: description: '' title: metadata type: - object refund_address: description: '' title: refund_address type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/bitcoin_receiver" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/bitcoin/receivers/{id}/refund": post: description: '' operationId: RefundReceiver parameters: - description: '' in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: refund_address: description: If the receiver does not already have a refund address, then you need to provide one to perform a refund. title: refund_address type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/bitcoin_receiver" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/bitcoin/receivers/{receiver}/transactions": get: description: '' operationId: AllTransactions parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: Only return transactions for the customer specified by this customer ID. in: query name: customer required: false type: string - description: Only return transactions for the receiver specified by this receiver ID. in: path name: receiver required: true type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/bitcoin_transaction" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: BitcoinTransactionList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/bitcoin/transactions": get: description: '' operationId: AllTransactions parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: Only return transactions for the customer specified by this customer ID. in: query name: customer required: false type: string - description: Only return transactions for the receiver specified by this receiver ID. in: query name: receiver required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/bitcoin_transaction" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: BitcoinTransactionList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/bitcoin/transactions/{id}": get: description: '' operationId: RetrieveTransaction parameters: - description: '' in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/bitcoin_transaction" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/charges": get: description: "

Returns a list of charges you’ve previously created. The charges are returned in sorted order, with the most recent charges appearing first.

" operationId: AllCharges parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: Only return charges for the customer specified by this customer ID. in: query name: customer required: false type: string - description: '' in: query name: created required: false type: integer - description: '' in: query name: source required: false type: string - description: Only return charges for this transfer group. in: query name: transfer_group required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/charge" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/charges" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateCharge parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: alternate_statement_descriptors: description: '' title: alternate_statement_descriptors type: - object amount: description: '' title: amount type: - integer application: description: '' title: application type: - string application_fee: description: '' title: application_fee type: - integer capture: description: '' title: capture type: - boolean currency: description: '' title: currency type: - string customer: description: '' title: customer type: - string description: description: '' title: description type: - string destination: description: '' title: destination type: - object - string external_id: description: '' title: external_id type: - string invoice: description: '' title: invoice type: - string invoice_source: description: '' title: invoice_source type: - string ip: description: '' title: ip type: - string level3: description: '' title: level3 type: - object metadata: description: '' title: metadata type: - object on_behalf_of: description: '' title: on_behalf_of type: - string payment_user_agent: description: '' title: payment_user_agent type: - string receipt_email: description: '' title: receipt_email type: - string recurring: description: '' title: recurring type: - boolean referrer: description: '' title: referrer type: - string shipping: description: '' title: shipping type: - object source: description: '' title: source type: - object - string statement_descriptor: description: '' title: statement_descriptor type: - string three_d_secure: description: '' title: three_d_secure type: - object transfer: description: '' title: transfer type: - object transfer_group: description: '' title: transfer_group type: - string trust: description: '' title: trust type: - object uncaptured: description: '' title: uncaptured type: - boolean user_agent: description: '' title: user_agent type: - string required: - amount - currency responses: '200': description: Successful response. schema: "$ref": "#/definitions/charge" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/charges/{charge}": get: description: "

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.

" operationId: RetrieveCharge parameters: - description: The identifier of the charge to be retrieved. in: path name: charge required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/charge" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the specified charge by setting the values of the parameters passed. Any parameters not provided will be left unchanged.

This request accepts only the description, metadata, receipt_email, fraud_details, and shipping as arguments.

" operationId: UpdateCharge parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: description: description: An arbitrary string which you can attach to a charge object. It is displayed when in the web interface alongside the charge. Note that if you use Stripe to send automatic email receipts to your customers, your receipt emails will include the `description` of the charge(s) that they are describing. title: description type: - string fraud_details: description: A set of key/value pairs you can attach to a charge giving information about its riskiness. If you believe a charge is fraudulent, include a `user_report` key with a value of `fraudulent`. If you believe a charge is safe, include a `user_report` key with a value of `safe`. Note that you must refund a charge before setting the `user_report` to `fraudulent`. Stripe will use the information you send to improve our fraud detection algorithms. title: fraud_details type: - object metadata: description: Set of key/value pairs that you can attach to an object. It can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to metadata. title: metadata type: - object receipt_email: description: This is the email address that the receipt for this charge will be sent to. If this field is updated, then a new email receipt will be sent to the updated address. title: receipt_email type: - string shipping: description: Shipping information for the charge. Helps prevent fraud on charges for physical goods. title: shipping type: - object transfer_group: description: A string that identifies this transaction as part of a group. `transfer_group` may only be provided if it has not been set. See the [Connect documentation](/docs/connect/charges-transfers#grouping-transactions) for details. title: transfer_group type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/charge" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/charges/{charge}/capture": post: description:

Capture the payment of an existing, uncaptured, charge. This is the second half of the two-step payment flow, where first you created a charge with the capture option set to false.

Uncaptured payments expire exactly seven days after they are created. If they are not captured by that point in time, they will be marked as refunded and will no longer be capturable.

operationId: ChargeCapture parameters: - description: '' in: path name: charge required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: amount: description: The amount to capture, which must be less than or equal to the original amount. Any additional amount will be automatically refunded. title: amount type: - integer application_fee: description: An application fee to add on to this charge. Can only be used with Stripe Connect. title: application_fee type: - integer receipt_email: description: The email address to send this charge's receipt to. This will override the previously-specified email address for this charge, if one was set. Receipts will not be sent in test mode. title: receipt_email type: - string statement_descriptor: description: An arbitrary string to be displayed on your customer's credit card statement. This may be up to *22 characters*. As an example, if your website is `RunClub` and the item you're charging for is a race ticket, you may want to specify a `statement_descriptor` of `RunClub 5K race ticket`. The statement description may not include `<>"'` characters, and will appear on your customer's statement in capital letters. Non-ASCII characters are automatically stripped. Updating this value will overwrite the previous statement descriptor of this charge. While most banks display this information consistently, some may display it incorrectly or not at all. title: statement_descriptor type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/charge" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/charges/{charge}/dispute": get: description: '' operationId: RetrieveChargeDispute parameters: - description: '' in: path name: charge required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/dispute" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: UpdateChargeDispute parameters: - description: '' in: path name: charge required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: evidence: description: Evidence to upload to respond to a dispute. Updating any field in the hash will submit all fields in the hash for review. title: evidence type: - object metadata: description: A set of key/value pairs that you can attach to a dispute object. It can be useful for storing additional information about the dispute in a structured format. title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/dispute" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/charges/{charge}/dispute/close": post: description: '' operationId: CloseChargeDispute parameters: - description: '' in: path name: charge required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/dispute" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/charges/{charge}/refund": post: description: '' operationId: CreatePaymentRefundWithPaymentResponse parameters: - description: '' in: path name: charge required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: amount: description: '' title: amount type: - integer description: description: '' title: description type: - string directive: description: '' title: directive type: - string metadata: description: '' title: metadata type: - object reason: description: '' title: reason type: - string refund_address: description: '' title: refund_address type: - string refund_application_fee: description: '' title: refund_application_fee type: - boolean reverse_transfer: description: '' title: reverse_transfer type: - boolean responses: '200': description: Successful response. schema: "$ref": "#/definitions/charge" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/charges/{charge}/refunds": get: description: "

You can see a list of the refunds belonging to a specific charge. Note that the 10 most recent refunds are always available by default on the charge object. If you need more than those 10, you can use this API method and the limit and starting_after parameters to page through additional refunds.

" operationId: AllChargeRefunds parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the charge whose refunds will be retrieved. in: path name: charge required: true type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/refund" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: RefundList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateChargeRefund parameters: - description: '' in: path name: charge required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: amount: description: '' title: amount type: - integer directive: description: '' title: directive type: - string metadata: description: '' title: metadata type: - object reason: description: '' title: reason type: - string refund_application_fee: description: '' title: refund_application_fee type: - boolean reverse_transfer: description: '' title: reverse_transfer type: - boolean responses: '200': description: Successful response. schema: "$ref": "#/definitions/refund" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/charges/{charge}/refunds/{refund}": get: description: '' operationId: RetrieveChargeRefund parameters: - description: ID of refund to retrieve. in: path name: refund required: true type: string - description: '' in: path name: charge required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/refund" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: UpdateChargeRefund parameters: - description: '' in: path name: charge required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to a refund object. It can be useful for storing additional information about the refund in a structured format. title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/refund" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/country_specs": get: description: "

Lists all Country Spec objects available in the API.

" operationId: AllCountrySpecs parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/country_spec" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/country_specs" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/country_specs/{country}": get: description: "

Returns a Country Spec for a given Country code.

" operationId: RetrieveCountrySpec parameters: - description: An ISO 3166-1 alpha-2 country code. Available country codes can be listed with the [List Country Specs](/docs/api#list_country_specs) endpoint. in: path name: country required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/country_spec" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/coupons": get: description: "

Returns a list of your coupons.

" operationId: AllCoupons parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: A filter on the list based on the object `created` field. The value can be a string with an integer Unix timestamp, or it can be a dictionary with a number of different query options. in: query name: created required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/coupon" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/coupons" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

You can create coupons easily via the coupon management page of the Stripe dashboard. Coupon creation is also accessible via the API if you need to create coupons on the fly.

A coupon has either a percent_off or an amount_off and currency. If you set an amount_off, that amount will be subtracted from any invoice’s subtotal. For example, an invoice with a subtotal of 100 will have a final total of 0 if a coupon with an amount_off of 200 is applied to it and an invoice with a subtotal of 300 will have a final total of 100 if a coupon with an amount_off of 200 is applied to it.

operationId: CreateCoupon parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: amount_off: description: A positive integer representing the amount to subtract from an invoice total (required if `percent_off` is not passed). title: amount_off type: - integer currency: description: Three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) of the `amount_off` parameter (required if `amount_off` is passed). title: currency type: - string duration: description: Specifies how long the discount will be in effect. Can be `forever`, `once`, or `repeating`. title: duration type: - string duration_in_months: description: Required only if `duration` is `repeating`, in which case it must be a positive integer that specifies the number of months the discount will be in effect. title: duration_in_months type: - integer id: description: Unique string of your choice that will be used to identify this coupon when applying it to a customer. This is often a specific code you'll give to your customer to use when signing up (e.g. *FALL25OFF*). If you don't want to specify a particular code, you can leave the ID blank and we'll generate a random code for you. title: id type: - string max_redemptions: description: A positive integer specifying the number of times the coupon can be redeemed before it's no longer valid. For example, you might have a 50% off coupon that the first 20 readers of your blog can use. title: max_redemptions type: - integer metadata: description: A set of key/value pairs that you can attach to a coupon object. It can be useful for storing additional information about the coupon in a structured format. title: metadata type: - object percent_off: description: A positive integer between 1 and 100 that represents the discount the coupon will apply (required if `amount_off` is not passed). title: percent_off type: - integer redeem_by: description: Unix timestamp specifying the last time at which the coupon can be redeemed. After the redeem_by date, the coupon can no longer be applied to new customers. title: redeem_by type: - integer required: - duration responses: '200': description: Successful response. schema: "$ref": "#/definitions/coupon" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/coupons/{coupon}": delete: description:

You can delete coupons via the coupon management page of the Stripe dashboard. However, deleting a coupon does not affect any customers who have already applied the coupon; it means that new customers can’t redeem the coupon. You can also delete coupons via the API.

operationId: DeleteCoupon parameters: - description: The identifier of the coupon to be deleted. in: path name: coupon required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/coupon" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the coupon with the given ID.

" operationId: RetrieveCoupon parameters: - description: The ID of the desired coupon. in: path name: coupon required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/coupon" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the metadata of a coupon. Other coupon details (currency, duration, amount_off) are, by design, not editable.

" operationId: UpdateCoupon parameters: - description: The identifier of the coupon to be updated. in: path name: coupon required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to a coupon object. It can be useful for storing additional information about the coupon in a structured format. title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/coupon" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers": get: description: "

Returns a list of your customers. The customers are returned sorted by creation date, with the most recent customers appearing first.

" operationId: AllCustomers parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: '' in: query name: created required: false type: integer - description: '' in: query name: deleted required: false type: boolean responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/customer" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/customers" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Creates a new customer object.

" operationId: CustomerCreateWithPlan parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: account_balance: description: An integer amount in %s that is the starting account balance for your customer. A negative amount represents a credit that will be used before attempting any charges to the customer's card; a positive amount will be added to the next invoice. title: account_balance type: - integer business_vat_id: description: The customer's VAT identification number. If you are using Relay, this field gets passed to tax provider you are using for your orders. title: business_vat_id type: - string coupon: description: If you provide a coupon code, the customer will have a discount applied on all recurring charges. Charges you create through the API will not have the discount. title: coupon type: - string description: description: An arbitrary string that you can attach to a customer object. It is displayed alongside the customer in the dashboard. title: description type: - string email: description: Customer's email address. It's displayed alongside the customer in your dashboard and can be useful for searching and tracking. title: email type: - string max_occurrences: description: '' title: max_occurrences type: - integer metadata: description: A set of key/value pairs that you can attach to a customer object. It can be useful for storing additional information about the customer in a structured format. title: metadata type: - object on_behalf_of: description: '' title: on_behalf_of type: - string pay_immediately: description: '' title: pay_immediately type: - boolean retains_own_balance: description: '' title: retains_own_balance type: - boolean shipping: description: '' title: shipping type: - object source: description: The source can either be a token, like the ones returned by [Elements](/docs/elements), or a dictionary containing a user's credit card details (with the options shown below). title: source type: - object - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}": delete: description: "

Permanently deletes a customer. It cannot be undone. Also immediately cancels any active subscriptions on the customer.

" operationId: DeleteCustomer parameters: - description: The identifier of the customer to be deleted. in: path name: customer required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the details of an existing customer. You need only supply the unique customer identifier that was returned upon customer creation.

" operationId: RetrieveCustomer parameters: - description: The identifier of the customer to be retrieved. in: path name: customer required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CustomerUpdateWithPlan parameters: - description: '' in: path name: customer required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: account_balance: description: An integer amount in %s that is the starting account balance for your customer. A negative amount represents a credit that will be used before attempting any charges to the customer's card; a positive amount will be added to the next invoice. title: account_balance type: - integer business_vat_id: description: The customer's VAT identification number. If you are using Relay, this field gets passed to tax provider you are using for your orders. title: business_vat_id type: - string coupon: description: If you provide a coupon code, the customer will have a discount applied on all recurring charges. Charges you create through the API will not have the discount. title: coupon type: - string description: description: An arbitrary string that you can attach to a customer object. It is displayed alongside the customer in the dashboard. title: description type: - string email: description: Customer's email address. It's displayed alongside the customer in your dashboard and can be useful for searching and tracking. title: email type: - string max_occurrences: description: '' title: max_occurrences type: - integer metadata: description: A set of key/value pairs that you can attach to a customer object. It can be useful for storing additional information about the customer in a structured format. title: metadata type: - object on_behalf_of: description: '' title: on_behalf_of type: - string pay_immediately: description: '' title: pay_immediately type: - boolean retains_own_balance: description: '' title: retains_own_balance type: - boolean shipping: description: '' title: shipping type: - object source: description: The source can either be a token, like the ones returned by [Elements](/docs/elements), or a dictionary containing a user's credit card details (with the options shown below). title: source type: - object - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/alipay_accounts": get: description: '' operationId: AllCustomerAlipayAccounts parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the customer whose Alipay accounts will be retrieved. in: path name: customer required: true type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/alipay_account" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: AlipayAccountList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateCustomerSource parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to a card object. It can be useful for storing additional information about the card in a structured format. title: metadata type: - object source: description: This string to be replaced by DocSpecGenerator. title: source type: - object - string required: - source responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/alipay_accounts/{id}": delete: description: '' operationId: DeleteCustomerSource parameters: - description: The ID of the source to be deleted. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer_source" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: '' operationId: RetrieveCustomerAlipayAccount parameters: - description: The ID of the Alipay account to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/alipay_account" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/bank_accounts": get: description: "

You can see a list of the bank accounts belonging to a Customer. Note that the 10 most recent sources are always available by default on the Customer. If you need more than those 10, you can use this API method and the limit and starting_after parameters to page through additional bank accounts.

" operationId: AllCustomerBankAccounts parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the customer whose bank accounts will be retrieved. in: path name: customer required: true type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/bank_account" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: BankAccountList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateCustomerSource parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to a card object. It can be useful for storing additional information about the card in a structured format. title: metadata type: - object source: description: This string to be replaced by DocSpecGenerator. title: source type: - object - string required: - source responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/bank_accounts/{id}": delete: description: '' operationId: DeleteCustomerSource parameters: - description: The ID of the source to be deleted. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer_source" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

By default, you can see the 10 most recent sources stored on a Customer directly on the object, but you can also retrieve details about a specific bank account stored on the Stripe account.

" operationId: RetrieveCustomerBankAccount parameters: - description: ID of bank account to retrieve. in: path name: id required: true type: string - description: '' in: path name: customer required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/bank_account" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: UpdateCustomerCard parameters: - description: The ID of the card to be updated. in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: address_city: description: '' title: address_city type: - string address_country: description: '' title: address_country type: - string address_line1: description: '' title: address_line1 type: - string address_line2: description: '' title: address_line2 type: - string address_state: description: '' title: address_state type: - string address_zip: description: '' title: address_zip type: - string cvc: description: '' title: cvc type: - string exp_month: description: '' title: exp_month type: - string exp_year: description: '' title: exp_year type: - string metadata: description: '' title: metadata type: - object name: description: '' title: name type: - string validate: description: '' title: validate type: - boolean responses: '200': description: Successful response. schema: "$ref": "#/definitions/card" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/bank_accounts/{id}/verify": post: description: '' operationId: VerifyCustomerSource parameters: - description: The ID of the source to be verified. in: path name: id required: true type: string - description: '' in: path name: customer required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: amounts: description: Two positive integers in **cents** equal to the values of the microdeposits sent to the bank account. title: amounts type: - array verification_method: description: '' title: verification_method type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/bank_account" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/cards": get: description: '' operationId: AllCustomerCards parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the customer whose cards will be retrieved. in: path name: customer required: true type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/card" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: CardList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateCustomerSource parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to a card object. It can be useful for storing additional information about the card in a structured format. title: metadata type: - object source: description: This string to be replaced by DocSpecGenerator. title: source type: - object - string required: - source responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/cards/{id}": delete: description: '' operationId: DeleteCustomerSource parameters: - description: The ID of the source to be deleted. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer_source" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: '' operationId: RetrieveCustomerCard parameters: - description: The ID of the card to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/card" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: UpdateCustomerCard parameters: - description: The ID of the card to be updated. in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: address_city: description: '' title: address_city type: - string address_country: description: '' title: address_country type: - string address_line1: description: '' title: address_line1 type: - string address_line2: description: '' title: address_line2 type: - string address_state: description: '' title: address_state type: - string address_zip: description: '' title: address_zip type: - string cvc: description: '' title: cvc type: - string exp_month: description: '' title: exp_month type: - string exp_year: description: '' title: exp_year type: - string metadata: description: '' title: metadata type: - object name: description: '' title: name type: - string validate: description: '' title: validate type: - boolean responses: '200': description: Successful response. schema: "$ref": "#/definitions/card" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/discount": delete: description: "

Removes the currently applied discount on a customer.

" operationId: DeleteCustomerDiscount parameters: [] responses: '200': description: Successful response. schema: "$ref": "#/definitions/discount" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: '' operationId: RetrieveCustomerDiscount parameters: - description: '' in: path name: customer required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/discount" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/sources": get: description: '' operationId: AllCustomerSources parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the customer whose sources will be retrieved. in: path name: customer required: true type: string responses: '200': description: Successful response. schema: properties: data: items: type: - object type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: SourceList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateCustomerSource parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to a card object. It can be useful for storing additional information about the card in a structured format. title: metadata type: - object source: description: This string to be replaced by DocSpecGenerator. title: source type: - object - string required: - source responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer_source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/sources/{id}": delete: description: '' operationId: DeleteCustomerSource parameters: - description: The ID of the source to be deleted. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer_source" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: '' operationId: RetrieveCustomerSource parameters: - description: The ID of the source to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/customer_source" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: UpdateCustomerCard parameters: - description: The ID of the card to be updated. in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: address_city: description: '' title: address_city type: - string address_country: description: '' title: address_country type: - string address_line1: description: '' title: address_line1 type: - string address_line2: description: '' title: address_line2 type: - string address_state: description: '' title: address_state type: - string address_zip: description: '' title: address_zip type: - string cvc: description: '' title: cvc type: - string exp_month: description: '' title: exp_month type: - string exp_year: description: '' title: exp_year type: - string metadata: description: '' title: metadata type: - object name: description: '' title: name type: - string validate: description: '' title: validate type: - boolean responses: '200': description: Successful response. schema: "$ref": "#/definitions/card" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/sources/{id}/verify": post: description: '' operationId: VerifyCustomerSource parameters: - description: The ID of the source to be verified. in: path name: id required: true type: string - description: '' in: path name: customer required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: amounts: description: Two positive integers in **cents** equal to the values of the microdeposits sent to the bank account. title: amounts type: - array verification_method: description: '' title: verification_method type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/bank_account" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/subscriptions": get: description: "

You can see a list of the customer’s active subscriptions. Note that the 10 most recent active subscriptions are always available by default on the customer object. If you need more than those 10, you can use the limit and starting_after parameters to page through additional subscriptions.

" operationId: AllCustomerSubscriptions parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the customer whose subscriptions will be retrieved. in: path name: customer required: true type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/subscription" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: SubscriptionList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Creates a new subscription on an existing customer.

" operationId: CreateCustomerSubscription parameters: - description: The identifier of the customer to subscribe. in: path name: customer required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: account_balance: description: '' title: account_balance type: - integer application_fee_percent: description: A non-negative decimal (with at most two decimal places) between 0 and 100. This represents the percentage of the subscription invoice subtotal that will be transferred to the application owner's Stripe account. The request must be made with an OAuth key in order to set an application fee percentage. For more information, see the application fees [documentation]('https://stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions). title: application_fee_percent type: - number billing: description: Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay this subscription at the end of the cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions. title: billing type: - string coupon: description: The code of the coupon to apply to this subscription. A coupon applied to a subscription will only affect invoices created for that particular subscription. title: coupon type: - string days_until_due: description: Number of days a customer has to pay invoices generated by this subscription. title: days_until_due type: - integer items: description: List of subscription items, each with an attached plan. title: items type: - array metadata: description: A set of key/value pairs that you can attach to a subscription object. It can be useful for storing additional information about the subscription in a structured format. title: metadata type: - object on_behalf_of: description: '' title: on_behalf_of type: - string plan: description: The identifier of the plan to subscribe the customer to. title: plan type: - string prorate: description: '' title: prorate type: - boolean quantity: description: The quantity you'd like to apply to the subscription you're creating. For example, if your plan is 10/user/month, and your customer has 5 users, you could pass 5 as the quantity to have the customer charged 50 (5 x 10) monthly. If you update a subscription but don't change the plan ID (e.g. changing only the trial_end), the subscription will inherit the old subscription's quantity attribute unless you pass a new quantity parameter. If you update a subscription and change the plan ID, the new subscription will not inherit the quantity attribute and will default to 1 unless you pass a quantity parameter. title: quantity type: - integer retains_own_balance: description: '' title: retains_own_balance type: - boolean source: description: The source can either be a token, like the ones returned by [Elements](https://stripe.com/docs/elements), or a dictionary containing a user's credit card details (with the options shown below). You must provide a source if the customer does not already have a valid source attached, and you are subscribing the customer for a plan that is not free. Passing `source` will create a new source object, make it the customer default source, and delete the old customer default if one exists. If you want to add an additional source to use with subscriptions, instead use the [card creation API](https://stripe.com/docs/api#create_card) to add the card and then the [customer update API](https://stripe.com/docs/api#update customer) to set it as the default. Whenever you attach a card to a customer, Stripe will automatically validate the card. title: source type: - object - string tax_percent: description: A non-negative decimal (with at most four decimal places) between 0 and 100. This represents the percentage of the subscription invoice subtotal that will be calculated and added as tax to the final amount each billing period. For example, a plan which charges $10/month with a `tax_percent` of 20.0 will charge $12 per invoice. title: tax_percent type: - number trial_end: description: Unix timestamp representing the end of the trial period the customer will get before being charged for the first time. If set, trial_end will override the default trial period of the plan the customer is being subscribed to. The special value `now` can be provided to end the customer's trial immediately. title: trial_end type: - integer - string trial_period_days: description: Integer representing the number of trial period days before the customer is charged for the first time. If set, `trial_period_days` overrides the default trial period days of the plan the customer is being subscribed to. title: trial_period_days type: - integer responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/subscriptions/{subscription_exposed_id}": delete: description:

Cancels a customer’s subscription. If you set the at_period_end parameter to true, the subscription will remain active until the end of the period, at which point it will be canceled and not renewed. By default, the subscription is terminated immediately. In either case, the customer will not be charged again for the subscription. Note, however, that any pending invoice items that you’ve created will still be charged for at the end of the period unless manually deleted. If you’ve set the subscription to cancel at period end, any pending prorations will also be left in place and collected at the end of the period, but if the subscription is set to cancel immediately, pending prorations will be removed.

By default, all unpaid invoices for the customer will be closed upon subscription cancellation. We do this in order to prevent unexpected payment retries once the customer has canceled a subscription. However, you can reopen the invoices manually after subscription cancellation to have us proceed with automatic retries, or you could even re-attempt payment yourself on all unpaid invoices before allowing the customer to cancel the subscription at all.

operationId: DeleteCustomerSubscription parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: at_period_end: description: A flag that if set to true will delay the cancellation of the subscription until the end of the current period. title: at_period_end type: - boolean responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the subscription with the given ID.

" operationId: RetrieveCustomerSubscription parameters: [] responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription" default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

Updates an existing subscription on a customer to match the specified parameters. When changing plans or quantities, we will optionally prorate the price we charge next month to make up for any price changes. To preview how the proration will be calculated, use the upcoming invoice endpoint.

operationId: UpdateCustomerSubscription parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: account_balance: description: '' title: account_balance type: - integer application_fee_percent: description: A non-negative decimal (with at most two decimal places) between 0 and 100. This represents the percentage of the subscription invoice subtotal that will be transferred to the application owner's Stripe account. The request must be made with an OAuth key in order to set an application fee percentage. For more information, see the application fees [documentation](https://stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions')}). title: application_fee_percent type: - number billing: description: Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay this subscription at the end of the cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions. title: billing type: - string coupon: description: The code of the coupon to apply to this subscription. A coupon applied to a subscription will only affect invoices created for that particular subscription. title: coupon type: - string days_until_due: description: Number of days a customer has to pay invoices generated by this subscription. title: days_until_due type: - integer items: description: List of subscription items, each with an attached plan. title: items type: - array max_occurrences: description: '' title: max_occurrences type: - integer metadata: description: A set of key/value pairs that you can attach to a subscription object. It can be useful for storing additional information about the subscription in a structured format. title: metadata type: - object pay_immediately: description: '' title: pay_immediately type: - boolean plan: description: The identifier of the plan to update the subscription to. If omitted, the subscription will not change plans. title: plan type: - string prorate: description: Flag telling us whether to prorate switching plans during a billing cycle. title: prorate type: - boolean proration_date: description: If set, the proration will be calculated as though the subscription was updated at the given time. This can be used to apply exactly the same proration that was previewed with [upcoming invoice](#retrieve_customer_invoice) endpoint. It can also be used to implement custom proration logic, such as prorating by day instead of by second, by providing the time that you wish to use for proration calculations. title: proration_date type: - integer quantity: description: The quantity you'd like to apply to the subscription you're updating. For example, if your plan is 10/user/month, and your customer has 5 users, you could pass 5 as the quantity to have the customer charged 50 (5 x 10) monthly. If you update a subscription but don't change the plan ID (e.g. changing only the trial_end), the subscription will inherit the old subscription's quantity attribute unless you pass a new quantity parameter. If you update a subscription and change the plan ID, the new subscription will not inherit the quantity attribute and will default to 1 unless you pass a quantity parameter. title: quantity type: - integer retains_own_balance: description: '' title: retains_own_balance type: - boolean source: description: The source can either be a token, like the ones returned by [Elements](https://stripe.com/docs/elements), or a dictionary containing a user's credit card details (with the options shown below). You must provide a source if the customer does not already have a valid source attached, and you are subscribing the customer for a plan that is not free. Passing `source` will create a new source object, make it the customer default source, and delete the old customer default if one exists. If you want to add an additional source to use with subscriptions, instead use the [card creation API](https://stripe.com/docs/api#create_card) to add the card and then the [customer update API](https://stripe.com/docs/api#update customer) to set it as the default. Whenever you attach a card to a customer, Stripe will automatically validate the card. title: source type: - object - string tax_percent: description: A non-negative decimal (with at most four decimal places) between 0 and 100. This represents the percentage of the subscription invoice subtotal that will be calculated and added as tax to the final amount each billing period. For example, a plan which charges $10/month with a `tax_percent` of 20.0 will charge $12 per invoice. title: tax_percent type: - number trial_end: description: Unix timestamp representing the end of the trial period the customer will get before being charged for the first time. If set, trial_end will override the default trial period of the plan the customer is being subscribed to. The special value `now` can be provided to end the customer's trial immediately. title: trial_end type: - integer - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/customers/{customer}/subscriptions/{subscription_exposed_id}/discount": delete: description: "

Removes the currently applied discount on a customer.

" operationId: DeleteCustomerDiscount parameters: [] responses: '200': description: Successful response. schema: "$ref": "#/definitions/discount" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: '' operationId: RetrieveCustomerDiscount parameters: - description: '' in: path name: customer required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/discount" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/disputes": get: description: "

Returns a list of your disputes.

" operationId: AllDisputes parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: '' in: query name: created required: false type: integer responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/dispute" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/disputes" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/disputes/{dispute}": get: description: "

Retrieves the dispute with the given ID.

" operationId: RetrieveDispute parameters: - description: ID of dispute to retrieve. in: path name: dispute required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/dispute" default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

When you get a dispute, contacting your customer is always the best first step. If that doesn’t work, you can submit evidence in order to help us resolve the dispute in your favor. You can do this in your dashboard, but if you prefer, you can use the API to submit evidence programmatically.

Depending on your dispute type, different evidence fields will give you a better chance of winning your dispute. You may want to consult our guide to dispute types to help you figure out which evidence fields to provide.

operationId: UpdateDispute parameters: - description: ID of the dispute to update. in: path name: dispute required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: evidence: description: Evidence to upload to respond to a dispute. Updating any field in the hash will submit all fields in the hash for review. title: evidence type: - object metadata: description: A set of key/value pairs that you can attach to a dispute object. It can be useful for storing additional information about the dispute in a structured format. title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/dispute" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/disputes/{dispute}/close": post: description: "

Closing the dispute for a charge indicates that you do not have any evidence to submit and are essentially ‘dismissing’ the dispute, acknowledging it as lost

The status of the dispute will change from needs_response to lost. Closing a dispute is irreversible.

" operationId: CloseDispute parameters: - description: ID of dispute to close. in: path name: dispute required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/dispute" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/events": get: description: "

List events, going back up to 30 days.

" operationId: AllEvents parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: A string containing a specific event name, or group of events using * as a wildcard. The list will be filtered to include only events with a matching event property. in: query name: type required: false type: string - description: An array of up to 20 strings containing specific event names. The list will be filtered to include only events with a matching event property. You may pass either `type` or `types`, but not both. in: query name: types required: false type: array - description: '' in: query name: created required: false type: integer responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/event" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/events" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/events/{id}": get: description: "

Retrieves the details of an event. Supply the unique identifier of the event, which you might have received in a webhook.

" operationId: RetrieveEvent parameters: - description: The identifier of the event to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/event" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/events/{id}/retry": post: description: "

Resend an event. This only works in testmode

" operationId: RetryEvent parameters: - description: '' in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/event" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/invoiceitems": get: description: "

Returns a list of your invoice items. Invoice items are returned sorted by creation date, with the most recently created invoice items appearing first.

" operationId: AllInvoiceItems parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The identifier of the customer whose invoice items to return. If none is provided, all invoice items will be returned. in: query name: customer required: false type: string - description: '' in: query name: created required: false type: integer responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/invoice_item" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/invoiceitems" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Adds an arbitrary charge or credit to the customer’s upcoming invoice.

" operationId: CreateInvoiceItem parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: amount: description: The integer amount in %s of the charge to be applied to the upcoming invoice. To apply a credit to the customer's account, pass a negative amount. title: amount type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). title: currency type: - string customer: description: The ID of the customer who will be billed when this invoice item is billed. title: customer type: - string description: description: An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking. title: description type: - string discountable: description: Controls whether discounts apply to this invoice item. Defaults to false for prorations or negative invoice items, and true for all other invoice items. title: discountable type: - boolean invoice: description: The ID of an existing invoice to add this invoice item to. When left blank, the invoice item will be added to the next upcoming scheduled invoice. Use this when adding invoice items in response to an invoice.created webhook. You cannot add an invoice item to an invoice that has already been paid, attempted or closed. title: invoice type: - string metadata: description: A set of key/value pairs that you can attach to an invoice item object. It can be useful for storing additional information about the invoice item in a structured format. title: metadata type: - object subscription: description: The ID of a subscription to add this invoice item to. When left blank, the invoice item will be be added to the next upcoming scheduled invoice. When set, scheduled invoices for subscriptions other than the specified subscription will ignore the invoice item. Use this when you want to express that an invoice item has been accrued within the context of a particular subscription. title: subscription type: - string required: - amount - currency - customer responses: '200': description: Successful response. schema: "$ref": "#/definitions/invoice_item" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/invoiceitems/{invoiceitem}": delete: description: "

Removes an invoice item from the upcoming invoice. Removing an invoice item is only possible before the invoice it’s attached to is closed.

" operationId: DeleteInvoiceItem parameters: - description: The identifier of the invoice item to be deleted. in: path name: invoiceitem required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/invoice_item" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the invoice item with the given ID.

" operationId: RetrieveInvoiceItem parameters: - description: The ID of the desired invoice item. in: path name: invoiceitem required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/invoice_item" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the amount or description of an invoice item on an upcoming invoice. Updating an invoice item is only possible before the invoice it’s attached to is closed.

" operationId: UpdateInvoiceItem parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: amount: description: The integer amount in **%s** of the charge to be applied to the upcoming invoice. If you want to apply a credit to the customer's account, pass a negative amount. title: amount type: - integer description: description: An arbitrary string which you can attach to the invoice item. The description is displayed in the invoice for easy tracking. title: description type: - string discountable: description: Controls whether discounts apply to this invoice item. Defaults to false for prorations or negative invoice items, and true for all other invoice items. Cannot be set to true for prorations. title: discountable type: - boolean metadata: description: A set of key/value pairs that you can attach to an invoice item object. It can be useful for storing additional information about the invoice item in a structured format. title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/invoice_item" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/invoices": get: description: "

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.

" operationId: AllInvoices parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The identifier of the customer whose invoices to return. in: query name: customer required: false type: string - description: The identifier of the subscription whose invoices to return. in: query name: subscription required: false type: string - description: '' in: query name: date required: false type: integer responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/invoice" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/invoices" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

If you need to invoice your customer outside the regular billing cycle, you can create an invoice that pulls in all pending invoice items, including prorations. The customer’s billing cycle and regular subscription won’t be affected.

Once you create the invoice, it’ll be picked up and paid automatically, though you can choose to pay it right away.

operationId: CreateInvoice parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: application_fee: description: A fee in %s that will be applied to the invoice and transferred to the application owner's Stripe account. The request must be made with an OAuth key or the Stripe-Account header in order to take an application fee. For more information, see the application fees [documentation](/docs/connect/subscriptions#working-with-invoices). title: application_fee type: - integer billing: 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. title: billing type: - string customer: description: '' title: customer type: - string days_until_due: description: The number of days from which the invoice is created until it is due. title: days_until_due type: - integer description: description: '' title: description type: - string due_date: description: The date on which payment for this invoice is due. title: due_date type: - integer metadata: description: '' title: metadata type: - object statement_descriptor: description: Extra information about a charge for the customer's credit card statement. title: statement_descriptor type: - string subscription: description: The ID of the subscription to invoice. If not set, the created invoice will include all pending invoice items for the customer. If set, the created invoice will exclude pending invoice items that pertain to other subscriptions. title: subscription type: - string tax_percent: description: The percent tax rate applied to the invoice, represented as a decimal number. title: tax_percent type: - number required: - customer responses: '200': description: Successful response. schema: "$ref": "#/definitions/invoice" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/invoices/upcoming": get: description: "

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 discount that is applicable to the customer.

Note that when you are viewing an upcoming invoice, you are simply viewing a preview – the invoice has not yet been created. As such, the upcoming invoice will not show up in invoice listing calls, and you cannot use the API to pay or edit the invoice. If you want to change the amount that your customer will be billed, you can add, remove, or update pending invoice items, or update the customer’s discount.

You can preview the effects of updating a subscription, including a preview of what proration will take place. To ensure that the actual proration is calculated exactly the same as the previewed proration, you should pass a proration_date parameter when doing the actual subscription update. The value passed in should be the same as the subscription_proration_date returned on the upcoming invoice resource. The recommended way to get only the prorations being previewed is to consider only proration line items where period[start] is equal to the subscription_proration_date on the upcoming invoice resource.

" operationId: RetrieveCustomerUpcomingInvoice parameters: - description: The identifier of the customer whose upcoming invoice you'd like to retrieve. in: query name: customer required: true type: string - description: The identifier of the subscription for which you'd like to retrieve the upcoming invoice. If not provided, but a `subscription_plan` is provided, you will preview creating a subscription to that plan. If neither `subscription` nor `subscription_plan` is provided, you will retrieve the next upcoming invoice from among the customer's subscriptions. in: query name: subscription required: false type: string - description: If set, the invoice returned will preview updating the subscription given to this plan, or creating a new subscription to this plan if no `subscription` is given. in: query name: subscription_plan required: false type: string - description: If provided, the invoice returned will preview updating or creating a subscription with that quantity. If set, one of `subscription_plan` or `subscription` is required. in: query name: subscription_quantity required: false type: integer - description: If previewing an update to a subscription, this decides whether the preview will show the result of applying prorations or not. If set, one of `subscription_plan` or `subscription`, and one of `subscription_plan`, `subscription_quantity` or `subscription_trial_end` are required. in: query name: subscription_prorate required: false type: boolean - description: If previewing an update to a subscription, and doing proration, `subscription_proration_date` forces the proration to be calculated as though the update was done at the specified time. The time given must be within the current subscription period, and cannot be before the subscription was on its current plan.If set, `subscription`, and one of `subscription_plan`, `subscription_quantity` or `subscription_trial_end` are required. Also, `subscription_proration` cannot be set to false. in: query name: subscription_proration_date required: false type: integer - description: If provided, the invoice returned will preview updating or creating a subscription with that trial end. If set, one of `subscription_plan` or `subscription` is required. in: query name: subscription_trial_end required: false type: integer - description: If provided, the invoice returned will preview updating or creating a subscription with that tax percent. If set, one of `subscription_plan` or `subscription` is required. in: query name: subscription_tax_percent required: false type: number - description: The code of the coupon to apply. If a `subscription` or `subscription_plan` is provided, the invoice returned will preview updating or creating a subscription with that coupon. Otherwise, it will preview applying that coupon to the customer for the next upcoming invoice from among the customer's subscriptions. in: query name: coupon required: false type: string - description: List of subscription items, each with an attached plan. in: query name: subscription_items required: false type: array responses: '200': description: Successful response. schema: "$ref": "#/definitions/upcoming_invoice" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/invoices/{invoice}": get: description: "

Retrieves the invoice with the given ID.

" operationId: RetrieveInvoice parameters: - description: The identifier of the desired invoice. in: path name: invoice required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/invoice" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Until an invoice is paid, it is marked as open (closed=false). If you’d like to stop Stripe from automatically attempting payment on an invoice or would simply like to close the invoice out as no longer owed by the customer, you can update the closed parameter.

" operationId: UpdateInvoice parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: application_fee: description: A fee in %s that will be applied to the invoice and transferred to the application owner's Stripe account. The request must be made with an OAuth key or the Stripe-Account header in order to take an application fee. For more information, see the application fees [documentation](/docs/connect/subscriptions#working-with-invoices). title: application_fee type: - integer closed: description: Boolean representing whether an invoice is closed or not. To close an invoice, pass true. title: closed type: - boolean description: description: '' title: description type: - string forgiven: description: Boolean representing whether an invoice is forgiven or not. To forgive an invoice, pass true. Forgiving an invoice instructs us to update the subscription status as if the invoice were successfully paid. Once an invoice has been forgiven, it cannot be unforgiven or reopened. title: forgiven type: - boolean metadata: description: '' title: metadata type: - object paid: description: Boolean representing whether an invoice is paid or not. To mark invoice as paid, pass true. title: paid type: - boolean statement_descriptor: description: Extra information about a charge for the customer's credit card statement. title: statement_descriptor type: - string tax_percent: description: The percent tax rate applied to the invoice, represented as a decimal number. The tax rate of an attempted, paid or forgiven invoice cannot be changed. title: tax_percent type: - number responses: '200': description: Successful response. schema: "$ref": "#/definitions/invoice" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/invoices/{invoice}/lines": get: description: "

When retrieving an invoice, you’ll get a lines property containing the total count of line items and the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.

" operationId: AllInvoiceLines parameters: - description: The maximum number of line items to return. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The id of the invoice containing the lines to be retrieved. in: path name: invoice required: true type: string - description: In the case of upcoming invoices, the customer of the upcoming invoice is required. In other cases it is ignored. in: query name: customer required: false type: string - description: In the case of upcoming invoices, the subscription of the upcoming invoice is optional. In other cases it is ignored. in: query name: subscription required: false type: string - description: For upcoming invoices, preview updating the subscription given to this plan, or creating a new subscription to this plan if no `subscription` is given. Otherwise this parameter is ignored. in: query name: subscription_plan required: false type: string - description: For upcoming invoices, preview updating or creating a subscription with that quantity. If set, one of `subscription_plan` or `subscription` is required. Otherwise this parameter is ignored. in: query name: subscription_quantity required: false type: integer - description: For upcoming invoices, this decides whether the preview will show the result of applying prorations or not. If set, one of `subscription_plan` or `subscription`, and one of `subscription_plan`, `subscription_quantity` or `subscription_trial_end` are required. Otherwise this parameter is ignored. in: query name: subscription_prorate required: false type: boolean - description: For previewing upcoming invoices with proration, `subscription_proration_date` forces the proration to be calculated as though the update was done at the specified time. The time given must be within the current subscription period, and cannot be before the subscription was on its current plan.If set, `subscription`, and one of `subscription_plan`, `subscription_quantity` or `subscription_trial_end` are required. Also, `subscription_proration` cannot be set to false. Otherwise this parameter is ignored. in: query name: subscription_proration_date required: false type: integer - description: For upcoming invoices, preview updating or creating a subscription with that trial end. If set, one of `subscription_plan` or `subscription` is required. Otherwise this parameter is ignored. in: query name: subscription_trial_end required: false type: integer - description: '' in: query name: subscription_tax_percent required: false type: number - description: For upcoming invoices, preview applying this coupon to the invoice. If a `subscription` or `subscription_plan` is provided, the invoice returned will preview updating or creating a subscription with that coupon. Otherwise, it will preview applying that coupon to the customer for the next upcoming invoice from among the customer's subscriptions. Otherwise this parameter is ignored. in: query name: coupon required: false type: string - description: For upcoming invoices, preview updating the subscription with this list of items. Otherwise this parameter is ignored. in: query name: subscription_items required: false type: array responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/invoice_line_item" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: InvoiceLinesList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/invoices/{invoice}/pay": post: description:

Stripe automatically creates and then attempts to pay invoices for customers on subscriptions. We’ll also retry unpaid invoices according to your retry settings. However, if you’d like to attempt to collect payment on an invoice out of the normal retry schedule or for some other reason, you can do so.

operationId: PayInvoice parameters: - description: ID of invoice to pay. in: path name: invoice required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/invoice" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/order_returns": get: description: "

Returns a list of your order returns. The returns are returned sorted by creation date, with the most recently created return appearing first.

" operationId: AllOrderReturns parameters: - description: The order to retrieve returns for. in: query name: order required: false type: string - description: Date this return was created. in: query name: created required: false type: integer - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/order_return" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/order_returns" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/order_returns/{id}": get: description: "

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.

" operationId: RetrieveOrderReturn parameters: - description: The identifier of the order return to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/order_return" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/orders": get: description: "

Returns a list of your orders. The orders are returned sorted by creation date, with the most recently created orders appearing first.

" operationId: AllOrders parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: Only return orders that have the given status. One of `created`, `paid`, `fulfilled`, or `refunded`. in: query name: status required: false type: string - description: Only return orders with the given IDs. in: query name: ids required: false type: array - description: Only return orders for the given customer. in: query name: customer required: false type: string - description: Date this order was created. in: query name: created required: false type: string - description: Only return orders with the given upstream order IDs. in: query name: upstream_ids required: false type: array - description: Filter orders based on when they were paid, fulfilled, canceled, or returned. in: query name: status_transitions required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/order" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/orders" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateOrder parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: coupon: description: A coupon code that represents a discount to be applied to this order. Must be one-time duration and in same currency as the order. title: coupon type: - string currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). title: currency type: - string customer: description: The ID of an existing customer to use for this order. If provided, the customer email and shipping address will be used to create the order. Subsequently, the customer will also be charged to pay the order. If `email` or `shipping` are also provided, they will override the values retrieved from the customer object. title: customer type: - string email: description: The email address of the customer placing the order. title: email type: - string items: description: List of items constituting the order. title: items type: - array metadata: description: A set of key/value pairs that you can attach to an order object. It can be useful for storing additional information about the order in a structured format. title: metadata type: - object shipping: description: Shipping address for the order. Required if any of the SKUs are for products that have `shippable` set to true. title: shipping type: - object required: - currency responses: '200': description: Successful response. schema: "$ref": "#/definitions/order" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/orders/{id}": get: description: "

Retrieves the details of an existing order. Supply the unique order ID from either an order creation request or the order list, and Stripe will return the corresponding order information.

" operationId: RetrieveOrder parameters: - description: The identifier of the order to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/order" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the specific order by setting the values of the parameters passed. Any parameters not provided will be left unchanged. This request accepts only the metadata, and status as arguments.

" operationId: UpdateOrder parameters: - description: '' in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: coupon: description: A coupon code that represents a discount to be applied to this order. Must be one-time duration and in same currency as the order. title: coupon type: - string metadata: description: A set of key/value pairs that you can attach to a product object. It can be useful for storing additional information about the order in a structured format. title: metadata type: - object selected_shipping_method: description: The shipping method to select for fulfilling this order. If specified, must be one of the `id`s of a shipping method in the `shipping_methods` array. If specified, will overwrite the existing selected shipping method, updating `items` as necessary. title: selected_shipping_method type: - string shipping: description: Tracking information once the order has been fulfilled. title: shipping type: - object status: description: Current order status. One of `created`, `paid`, `canceled`, `fulfilled`, or `returned`. More detail in the [Relay API Overview](/docs/orders/guide#understanding-order-statuses). title: status type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/order" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/orders/{id}/pay": post: description: '' operationId: PayOrder parameters: - description: '' in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: application_fee: description: '' title: application_fee type: - integer customer: description: The ID of an existing customer that will be charged for this order. If no customer was attached to the order at creation, either `source` or `customer` is required. Otherwise, the specified customer will be charged instead of the one attached to the order. title: customer type: - string email: description: The email address of the customer placing the order. Required if not previously specified for the order. title: email type: - string metadata: description: A set of key/value pairs that you can attach to an order object. It can be useful for storing additional information about the order in a structured format. title: metadata type: - object shipping_method: description: '' title: shipping_method type: - string source: description: The source can either be a token, like the ones returned by [Elements](/docs/elements), or a dictionary containing a user's credit card details (with the options shown below). Whenever you create a new card for a customer, Stripe will automatically validate the card. If no customer was attached to the order at creation, either `source` or `customer is required. Otherwise, the specified source will be charged intead of the customer attached to the order. title: source type: - object - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/order" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/orders/{id}/returns": post: description: "

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.

" operationId: CreateOrderReturn parameters: - description: '' in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: items: description: List of items to return. title: items type: - array responses: '200': description: Successful response. schema: "$ref": "#/definitions/order_return" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/payments": get: description: '' operationId: AllPayments parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: Only return payments for the customer specified by this customer ID. in: query name: customer required: false type: string - description: '' in: query name: transfer_group required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/charge" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/payments" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/payments/{payment}": get: description: '' operationId: RetrievePayment parameters: - description: '' in: path name: payment required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/charge" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/payouts": get: description: "

Returns a list of existing payouts sent to third-party bank accounts or that Stripe has sent you. The payouts are returned in sorted order, with the most recently created payouts appearing first.

" operationId: PayoutAll parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: '' in: query name: arrival_date required: false type: integer - description: '' in: query name: created required: false type: integer - description: The ID of an external account - only return payouts sent to this external account. in: query name: destination required: false type: string - description: 'Only return payouts that have the given status: `pending`, `paid`, `failed`, `in_transit`, or `canceled`.' in: query name: status required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/payout" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/payouts" type: - string required: - data - has_more - object - url title: PayoutList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

To send funds to your own bank account, you create a new payout object. Your Stripe balance must be able to cover the payout amount, or you’ll receive an “Insufficient Funds” error.

If your API key is in test mode, money won’t actually be sent, though everything else will occur as if in live mode.

If you are creating a manual payout on a Stripe account that uses multiple payment source types, you’ll need to specify the source type balance that the payout should draw from. The balance object details available and pending amounts by source type.

operationId: PayoutCreate parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: amount: description: A positive integer in cents representing how much to payout. title: amount type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). title: currency type: - string destination: description: The id of a bank account or a card to send the payout to. If no destination is supplied, the default external account for the specified currency will be used. title: destination type: - string metadata: description: A set of key/value pairs that you can attach to a payout object. It can be useful for storing additional information about the payout in a structured format. title: metadata type: - object method: description: The method used to send this payout, which can be `standard` or `instant`. `instant` is only supported for payouts to debit cards. (See [Instant payouts for marketplaces for more information](https://stripe.com/blog/instant-payouts-for-marketplaces).) title: method type: - string source_type: description: 'The source balance to draw this payout from. Balances for different payment sources are kept separately. You can find the amounts with the balances API. Valid options are: `alipay_account`, `bank_account`, `bitcoin_receiver`, and `card`.' title: source_type type: - string statement_descriptor: description: 'A string to be displayed on the recipient''s bank or card statement. This may be at most 22 characters. Attempting to use a `statement_descriptor` longer than 22 characters will return an error. Note: Most banks will truncate this information and/or display it inconsistently. Some may not display it at all.' title: statement_descriptor type: - string required: - amount - currency responses: '200': description: Successful response. schema: "$ref": "#/definitions/payout" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/payouts/{id}": get: description: "

Retrieves the details of an existing payout. Supply the unique payout ID from either a payout creation request or the payout list, and Stripe will return the corresponding payout information.

" operationId: PayoutRetrieve parameters: - description: The identifier of the payout to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/payout" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the specified payout by setting the values of the parameters passed. Any parameters not provided will be left unchanged. This request accepts only the metadata as arguments.

" operationId: PayoutUpdate parameters: - description: The identifier of the payout to be updated. in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to a payout object. It can be useful for storing additional information about the payout in a structured format. title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/payout" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/payouts/{id}/cancel": post: description: "

A previously created payout can be canceled if it has not yet been paid out. Funds will be refunded to your available balance, and the fees you were originally charged on the payout will be refunded. You may not cancel automatic Stripe payouts.

" operationId: PayoutCancel parameters: - description: The identifier of the payout to be canceled. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/payout" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/plans": get: description: "

Returns a list of your plans.

" operationId: AllPlans parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: A filter on the list based on the object `created` field. The value can be a string with an integer Unix timestamp, or it can be a dictionary with a number of different query options. in: query name: created required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/plan" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/plans" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

You can create plans easily via the plan management page of the Stripe dashboard. Plan creation is also accessible via the API if you need to create plans on the fly.

operationId: CreatePlan parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: amount: description: A positive integer in **%s** (or 0 for a free plan) representing how much to charge (on a recurring basis). title: amount type: - integer currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). title: currency type: - string id: description: Unique string of your choice that will be used to identify this plan when subscribing a customer. This could be an identifier like "gold" or a primary key from your own database. title: id type: - string interval: description: Specifies billing frequency. Either day, week, month or year. title: interval type: - string interval_count: description: The number of intervals between each subscription billing. For example, `interval=month` and `interval_count=3` bills every 3 months. Maximum of one year interval allowed (1 year, 12 months, or 52 weeks). title: interval_count type: - integer metadata: description: A set of key/value pairs that you can attach to a plan object. It can be useful for storing additional information about the plan in a structured format. title: metadata type: - object name: description: Name of the plan, to be displayed on invoices and in the web interface. title: name type: - string statement_descriptor: description: An arbitrary string to be displayed on your customer's credit card statement. This may be up to **22 characters**. As an example, if your website is `RunClub` and the item you're charging for is your Silver Plan, you may want to specify a `statement_descriptor` of `RunClub Silver Plan`. The statement description may not include `<>"'` characters, and will appear on your customer's statement in capital letters. Non-ASCII characters are automatically stripped. While most banks display this information consistently, some may display it incorrectly or not at all. title: statement_descriptor type: - string trial_period_days: description: Specifies a trial period in (an integer number of) days. If you include a trial period, the customer won't be billed for the first time until the trial period ends. If the customer cancels before the trial period is over, she'll never be billed at all. title: trial_period_days type: - integer required: - amount - currency - id - interval - name responses: '200': description: Successful response. schema: "$ref": "#/definitions/plan" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/plans/{plan}": delete: description:

You can delete plans via the plan management page of the Stripe dashboard. However, deleting a plan does not affect any current subscribers to the plan; it merely means that new subscribers can’t be added to that plan. You can also delete plans via the API.

operationId: DeletePlan parameters: - description: The identifier of the plan to be deleted. in: path name: plan required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/plan" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the plan with the given ID.

" operationId: RetrievePlan parameters: - description: The ID of the desired plan. in: path name: plan required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/plan" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the name of a plan. Other plan details (price, interval, etc.) are, by design, not editable.

" operationId: UpdatePlan parameters: - description: The identifier of the plan to be updated. in: path name: plan required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to a plan object. It can be useful for storing additional information about the plan in a structured format. title: metadata type: - object name: description: Name of the plan, to be displayed on invoices and in the web interface. title: name type: - string statement_descriptor: description: An arbitrary string to be displayed on your customer's credit card statement. This may be up to **22 characters**. As an example, if your website is `RunClub` and the item you're charging for is your Silver Plan, you may want to specify a `statement_descriptor` of `RunClub Silver Plan`. The statement description may not include `<>"'` characters, and will appear on your customer's statement in capital letters. Non-ASCII characters are automatically stripped. While most banks display this information consistently, some may display it incorrectly or not at all. title: statement_descriptor type: - string trial_period_days: description: Specifies a trial period in (an integer number of) days. If you include a trial period, the customer won't be billed for the first time until the trial period ends. If the customer cancels before the trial period is over, she'll never be billed at all. title: trial_period_days type: - integer responses: '200': description: Successful response. schema: "$ref": "#/definitions/plan" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/products": get: description: "

Returns a list of your products. The products are returned sorted by creation date, with the most recently created products appearing first.

" operationId: AllProducts parameters: - description: Only return products that are active or inactive (e.g. pass `false` to list all inactive products). in: query name: active required: false type: boolean - description: Only return products with the given IDs. in: query name: ids required: false type: array - description: Only return products that can be shipped (i.e., physical, not digital products). in: query name: shippable required: false type: boolean - description: Only return products with the given url. in: query name: url required: false type: string - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/product" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/products" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Creates a new product object.

" operationId: CreateProduct parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: active: description: Whether or not the product is currently available for purchase. Defaults to `true`. title: active type: - boolean attributes: description: A list of up to 5 alphanumeric attributes that each SKU can provide values for (e.g. `["color", "size"]`). title: attributes type: - array caption: description: A short one-line description of the product, meant to be displayable to the customer. title: caption type: - string deactivate_on: description: An array of Connect application names or identifiers that should not be able to order the SKUs for this product. title: deactivate_on type: - array description: description: The product's description, meant to be displayable to the customer. title: description type: - string id: description: The identifier for the product. Must be unique. If not provided, an identifier will be randomly generated. title: id type: - string images: description: A list of up to 8 URLs of images for this product, meant to be displayable to the customer. title: images type: - array metadata: description: A set of key/value pairs that you can attach to a product object. It can be useful for storing additional information about the product in a structured format. title: metadata type: - object name: description: The product's name, meant to be displayable to the customer. title: name type: - string package_dimensions: description: The dimensions of this product for shipping purposes. A SKU associated with this product can override this value by having its own `package_dimensions`. title: package_dimensions type: - object shippable: description: Whether this product is shipped (i.e. physical goods). Defaults to `true`. title: shippable type: - boolean url: description: A URL of a publicly-accessible webpage for this product. title: url type: - string required: - name responses: '200': description: Successful response. schema: "$ref": "#/definitions/product" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/products/{id}": delete: description: "

Delete a product. Deleting a product is only possible if it has no SKUs associated with it.

" operationId: DeleteProduct parameters: - description: The ID of the product to delete. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/product" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

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.

" operationId: RetrieveProduct parameters: - description: The identifier of the product to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/product" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the specific product by setting the values of the parameters passed. Any parameters not provided will be left unchanged.

Note that a product’s attributes are not editable. Instead, you would need to deactivate the existing product and create a new one with the new attribute values.

" operationId: UpdateProduct parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: active: description: Whether or not the product is available for purchase. title: active type: - boolean attributes: description: A list of up to 5 alphanumeric attributes that each SKU can provide values for (e.g. `["color", "size"]`). If a value for `attributes` is specified, the list specified will replace the existing attributes list on this product. Any attributes not present after the update will be deleted from the SKUs for this product. title: attributes type: - array - string caption: description: A short one-line description of the product, meant to be displayable to the customer. title: caption type: - string deactivate_on: description: An array of Connect application names or identifiers that should not be able to order the SKUs for this product. title: deactivate_on type: - array - string description: description: The product's description, meant to be displayable to the customer. title: description type: - string images: description: A list of up to 8 URLs of images for this product, meant to be displayable to the customer. title: images type: - array - string metadata: description: A set of key/value pairs that you can attach to a product object. It can be useful for storing additional information about the product in a structured format. title: metadata type: - object name: description: The product's name, meant to be displayable to the customer. title: name type: - string package_dimensions: description: The dimensions of this product for shipping purposes. A SKU associated with this product can override this value by having its own `package_dimensions`. title: package_dimensions type: - object shippable: description: Whether this product is shipped (i.e. physical goods). Defaults to `true`. title: shippable type: - boolean url: description: A URL of a publicly-accessible webpage for this product. title: url type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/product" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/recipients": get: description: "

Returns a list of your recipients. The recipients are returned sorted by creation date, with the most recently created recipients appearing first.

" operationId: AllTransferRecipients parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: Only return recipients that are verified or unverified. in: query name: verified required: false type: boolean - description: '' in: query name: created required: false type: integer - description: '' in: query name: type required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/transfer_recipient" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/recipients" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: TransferRecipientCreate parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: address_city: description: '' title: address_city type: - string address_country: description: '' title: address_country type: - string address_line1: description: '' title: address_line1 type: - string address_line2: description: '' title: address_line2 type: - string address_state: description: '' title: address_state type: - string address_zip: description: '' title: address_zip type: - string bank_account: description: '' title: bank_account type: - object - string card: description: '' title: card type: - object - string description: description: '' title: description type: - string dob_day: description: '' title: dob_day type: - integer dob_month: description: '' title: dob_month type: - integer dob_year: description: '' title: dob_year type: - integer email: description: '' title: email type: - string metadata: description: '' title: metadata type: - object name: description: '' title: name type: - string tax_id: description: '' title: tax_id type: - string type: description: '' title: type type: - string required: - name - type responses: '200': description: Successful response. schema: "$ref": "#/definitions/transfer_recipient" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/recipients/{id}": delete: description: "

Permanently deletes a recipient. It cannot be undone.

" operationId: TransferRecipientDelete parameters: - description: The identifier of the recipient to be deleted. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/transfer_recipient" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the details of an existing recipient. You need only supply the unique recipient identifier that was returned upon recipient creation.

" operationId: RetrieveTransferRecipient parameters: - description: The identifier of the recipient to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/transfer_recipient" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: TransferRecipientUpdate parameters: - description: '' in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: address_city: description: '' title: address_city type: - string address_country: description: '' title: address_country type: - string address_line1: description: '' title: address_line1 type: - string address_line2: description: '' title: address_line2 type: - string address_state: description: '' title: address_state type: - string address_zip: description: '' title: address_zip type: - string bank_account: description: '' title: bank_account type: - object - string card: description: '' title: card type: - object - string default_card: description: '' title: default_card type: - string description: description: '' title: description type: - string dob_day: description: '' title: dob_day type: - integer dob_month: description: '' title: dob_month type: - integer dob_year: description: '' title: dob_year type: - integer email: description: '' title: email type: - string metadata: description: '' title: metadata type: - object name: description: '' title: name type: - string tax_id: description: '' title: tax_id type: - string type: description: '' title: type type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/transfer_recipient" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/recipients/{id}/cards": get: description: '' operationId: AllTransferRecipientCards parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the recipient whose cards will be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/card" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: CardList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateTransferRecipientCard parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: card: description: The card can either be a token, like the ones returned by [Elements](/docs/elements), or a dictionary containing a user's credit card details (with the options shown below). Whenever you create a new card for a recipient, Stripe will automatically validate the card. title: card type: - object - string required: - card responses: '200': description: Successful response. schema: "$ref": "#/definitions/card" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/recipients/{recipient}/cards/{id}": delete: description: '' operationId: DeleteTransferRecipientCard parameters: - description: '' in: path name: id required: true type: string - description: '' in: path name: recipient required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/card" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: '' operationId: RetrieveTransferRecipientCard parameters: - description: ID of card to retrieve. in: path name: id required: true type: string - description: '' in: path name: recipient required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/card" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: UpdateTransferRecipientCard parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: address_city: description: '' title: address_city type: - string address_country: description: '' title: address_country type: - string address_line1: description: '' title: address_line1 type: - string address_line2: description: '' title: address_line2 type: - string address_state: description: '' title: address_state type: - string address_zip: description: '' title: address_zip type: - string exp_month: description: '' title: exp_month type: - string exp_year: description: '' title: exp_year type: - string name: description: '' title: name type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/card" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/refunds": get: description: "

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.

" operationId: AllRefunds parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: Only return refunds for the charge specified by this charge ID. in: query name: charge required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/refund" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/refunds" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateChargeRefund parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: amount: description: '' title: amount type: - integer charge: description: '' title: charge type: - string directive: description: '' title: directive type: - string metadata: description: '' title: metadata type: - object reason: description: '' title: reason type: - string refund_application_fee: description: '' title: refund_application_fee type: - boolean reverse_transfer: description: '' title: reverse_transfer type: - boolean required: - charge responses: '200': description: Successful response. schema: "$ref": "#/definitions/refund" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/refunds/{refund}": get: description: "

Retrieves the details of an existing refund.

" operationId: RetrieveRefund parameters: - description: ID of refund to retrieve. in: path name: refund required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/refund" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the specified refund by setting the values of the parameters passed. Any parameters not provided will be left unchanged.

This request only accepts metadata as an argument.

" operationId: UpdateRefund parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to a refund object. It can be useful for storing additional information about the refund in a structured format. title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/refund" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/skus": get: description: "

Returns a list of your SKUs. The SKUs are returned sorted by creation date, with the most recently created SKUs appearing first.

" operationId: AllSKUs parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the product whose SKUs will be retrieved. in: query name: product required: false type: string - description: Only return SKUs that are active or inactive (e.g. pass `false` to list all inactive products). in: query name: active required: false type: boolean - description: Only return SKUs with the given IDs. in: query name: ids required: false type: array - description: Only return SKUs that have the specified key/value pairs in this partially constructed dictionary. Can be specified only if `product` is also supplied. For instance, if the associated product has attributes `["color", "size"]`, passing in `attributes[color]=red` returns all the SKUs for this product that have `color` set to `red`. in: query name: attributes required: false type: string - description: Only return SKUs that are either in stock or out of stock (e.g. pass `false` to list all SKUs that are out of stock). If no value is provided, all SKUs are returned. in: query name: in_stock required: false type: boolean responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/sku" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/skus" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Creates a new SKU associated with a product.

" operationId: CreateSKU parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: active: description: Whether or not the SKU is available for purchase. Default to `true`. title: active type: - boolean attributes: description: 'A dictionary of attributes and values for the attributes defined by the product. If, for example, a product''s attributes are `["size", "gender"]`, a valid SKU has the following dictionary of attributes: `{"size": "Medium", "gender": "Unisex"}`.' title: attributes type: - object currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). title: currency type: - string id: description: The identifier for the SKU. Must be unique. If not provided, an identifier will be randomly generated. title: id type: - string image: description: The URL of an image for this SKU, meant to be displayable to the customer. title: image type: - string inventory: description: Description of the SKU's inventory. title: inventory type: - object inventory_last_updated: description: '' title: inventory_last_updated type: - integer metadata: description: A set of key/value pairs that you can attach to a SKU object. It can be useful for storing additional information about the SKU in a structured format. title: metadata type: - object package_dimensions: description: The dimensions of this SKU for shipping purposes. title: package_dimensions type: - object price: description: The cost of the item as a nonnegative integer in the smallest currency unit (that is, 100 cents to charge $1.00, or 100 to charge ¥100, Japanese Yen being a 0-decimal currency). title: price type: - integer product: description: The ID of the product this SKU is associated with. title: product type: - string required: - currency - inventory - price - product responses: '200': description: Successful response. schema: "$ref": "#/definitions/sku" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/skus/{id}": delete: description: "

Delete a SKU. Deleting a SKU is only possible until it has been used in an order.

" operationId: DeleteSKU parameters: - description: The identifier of the SKU to be deleted. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/sku" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the details of an existing SKU. Supply the unique SKU identifier from either a SKU creation request or from the product, and Stripe will return the corresponding SKU information.

" operationId: RetrieveSKU parameters: - description: The identifier of the SKU to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/sku" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the specific SKU by setting the values of the parameters passed. Any parameters not provided will be left unchanged.

Note that a SKU’s attributes are not editable. Instead, you would need to deactivate the existing SKU and create a new one with the new attribute values.

" operationId: UpdateSKU parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: active: description: Whether or not this SKU is available for purchase. title: active type: - boolean attributes: description: A dictionary of attributes and values for the attributes defined by the product. When specified, `attributes` will partially update the existing attributes dictionary on the product, with the postcondition that a value must be present for each attribute key on the product, and that all SKUs for the product must have unique sets of attributes. title: attributes type: - object currency: description: Three-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://support.stripe.com/questions/which-currencies-does-stripe-support). title: currency type: - string image: description: The URL of an image for this SKU, meant to be displayable to the customer. title: image type: - string inventory: description: Description of the SKU's inventory. title: inventory type: - object inventory_last_updated: description: '' title: inventory_last_updated type: - integer metadata: description: A set of key/value pairs that you can attach to a SKU object. It can be useful for storing additional information about the SKU in a structured format. title: metadata type: - object package_dimensions: description: The dimensions of this SKU for shipping purposes. title: package_dimensions type: - object price: description: The cost of the item as a positive integer in the smallest currency unit (that is, 100 cents to charge $1.00, or 100 to charge ¥100, Japanese Yen being a 0-decimal currency). title: price type: - integer product: description: The ID of the product that this SKU should belong to. The product must exist and have the same set of attribute names as the SKU's current product. title: product type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/sku" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/sources": post: description: "

Creates a new source object.

" operationId: CreateSource parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: amount: description: Amount associated with the source. This is the amount for which the source will be chargeable once ready. Required for `single-use` sources. title: amount type: - integer currency: description: Three-letter [ISO code for the currency](https://support.stripe.com/questions/which-currencies-does-stripe-support) associated with the source. This is the currency for which the source will be chargeable once ready. title: currency type: - string flow: description: The authentication `flow` of the source to create. `flow` is one of `redirect`, `receiver`, `code_verification`, `none`. It is generally inferred unless a type supports multiple flows. title: flow type: - string metadata: description: A set of key/value pairs that you can attach to a source object. It can be useful for storing additional information about the source in a structured format. title: metadata type: - object owner: description: Information about the owner of the payment instrument that may be used or required by particular source types. title: owner type: - object redirect: description: Parameters required for the redirect flow. Required if the source is authenticated by a redirect (`flow` is `redirect`). title: redirect type: - object token: description: An optional token used to create the source. When passed, token properties will override source parameters. title: token type: - string type: description: The `type` of the source to create. title: type type: - string usage: description: One of `reusable`, `single-use`. Whether this source should be reusable or not. Some source types may or may not be reusable by construction, while other may leave the option at creation. If an incompatible value is passed, an error will be returned. title: usage type: - string required: - type responses: '200': description: Successful response. schema: "$ref": "#/definitions/source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/sources/{source}": get: description: "

Retrieves an existing source object. Supply the unique source ID from a source creation request and Stripe will return the corresponding up-to-date source object information.

" operationId: RetrieveSource parameters: - description: The identifier of the source to be retrieved. in: path name: source required: true type: string - description: The client secret of the source. Required if a publishable key is used to retrieve the source. in: query name: client_secret required: false type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/source" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the specified source by setting the values of the parameters passed. Any parameters not provided will be left unchanged.

This request accepts only the metadata and owner as arguments.

" operationId: SourceUpdate parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to a source object. It can be useful for storing additional information about the source in a structured format. title: metadata type: - object owner: description: Information about the owner of the payment instrument that may be used or required by particular source types. title: owner type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/sources/{source}/verify": post: description: '' operationId: VerifySource parameters: - description: The ID of the desired source. in: path name: source required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: values: description: The values needed to verify the source. title: values type: - array required: - values responses: '200': description: Successful response. schema: "$ref": "#/definitions/source" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/subscription_items": get: description: "

Returns a list of your subscription items for a given subscription.

" operationId: AllSubscriptionItems parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the subscription whose items will be retrieved. in: query name: subscription required: true type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/subscription_item" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/subscription_items" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Adds a new item to an existing subscription. No existing items will be changed or replaced.

" operationId: CreateSubscriptionItem parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: plan: description: The identifier of the plan to add to the subscription. title: plan type: - string prorate: description: Flag indicating whether to [prorate](/docs/subscriptions/upgrading-downgrading#understanding-proration) switching plans during a billing cycle. title: prorate type: - boolean proration_date: description: If set, the proration will be calculated as though the subscription was updated at the given time. This can be used to apply the same proration that was previewed with the [upcoming invoice](#retrieve_customer_invoice) endpoint. title: proration_date type: - integer quantity: description: The quantity you'd like to apply to the subscription item you're creating. title: quantity type: - integer subscription: description: The identifier of the subscription to modify. title: subscription type: - string required: - plan - subscription responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription_item" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/subscription_items/{item}": delete: description: "

Deletes an item from the subscription. Removing a subscription item from a subscription will not cancel the subscription.

" operationId: DeleteSubscriptionItem parameters: - description: The identifier of the subscription item to delete. in: path name: item required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: prorate: description: Flag indicating whether to [prorate](/docs/subscriptions/upgrading-downgrading#understanding-proration) switching plans during a billing cycle. title: prorate type: - boolean proration_date: description: If set, the proration will be calculated as though the subscription was updated at the given time. This can be used to apply the same proration that was previewed with the [upcoming invoice](#retrieve_customer_invoice) endpoint. title: proration_date type: - integer responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription_item" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the invoice item with the given ID.

" operationId: RetrieveSubscriptionItem parameters: - description: The identifier of the subscription item to retrieve. in: path name: item required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription_item" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the plan or quantity of an item on a current subscription.

" operationId: UpdateSubscriptionItem parameters: - description: The identifier of the subscription item to modify. in: path name: item required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: plan: description: The identifier of the new plan for this subscription item. title: plan type: - string prorate: description: Flag indicating whether to [prorate](/docs/subscriptions/upgrading-downgrading#understanding-proration) switching plans during a billing cycle. title: prorate type: - boolean proration_date: description: If set, the proration will be calculated as though the subscription was updated at the given time. This can be used to apply the same proration that was previewed with the [upcoming invoice](#retrieve_customer_invoice) endpoint. title: proration_date type: - integer quantity: description: The quantity you'd like to apply to the subscription item you're creating. title: quantity type: - integer responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription_item" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/subscriptions": get: description: "

By default, returns a list of subscriptions that have not been canceled. In order to list canceled subscriptions, specify status=canceled.

" operationId: AllSubscriptions parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the customer whose subscriptions will be retrieved. in: query name: customer required: false type: string - description: '' in: query name: created required: false type: integer - description: The ID of the plan whose subscriptions will be retrieved. in: query name: plan required: false type: string - description: 'The status of the subscriptions to retrieve. One of: `trialing`, `active`, `past_due`, `unpaid`, `canceled`, or `all`. Passing in a value of `canceled` will return all canceled subscriptions, including those belonging to deleted customers. Passing in a value of `all` will return subscriptions of all statuses.' in: query name: status required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/subscription" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/subscriptions" type: - string required: - data - has_more - object - url type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Creates a new subscription on an existing customer.

" operationId: CreateSubscription parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: account_balance: description: '' title: account_balance type: - integer application_fee_percent: description: A non-negative decimal (with at most two decimal places) between 0 and 100. This represents the percentage of the subscription invoice subtotal that will be transferred to the application owner's Stripe account. The request must be made with an OAuth key in order to set an application fee percentage. For more information, see the application fees [documentation]('https://stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions). title: application_fee_percent type: - number billing: description: Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay this subscription at the end of the cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions. title: billing type: - string coupon: description: The code of the coupon to apply to this subscription. A coupon applied to a subscription will only affect invoices created for that particular subscription. title: coupon type: - string customer: description: The identifier of the customer to subscribe. title: customer type: - string days_until_due: description: Number of days a customer has to pay invoices generated by this subscription. title: days_until_due type: - integer items: description: List of subscription items, each with an attached plan. title: items type: - array metadata: description: A set of key/value pairs that you can attach to a subscription object. It can be useful for storing additional information about the subscription in a structured format. title: metadata type: - object on_behalf_of: description: '' title: on_behalf_of type: - string plan: description: The identifier of the plan to subscribe the customer to. title: plan type: - string prorate: description: '' title: prorate type: - boolean quantity: description: The quantity you'd like to apply to the subscription you're creating. For example, if your plan is 10/user/month, and your customer has 5 users, you could pass 5 as the quantity to have the customer charged 50 (5 x 10) monthly. If you update a subscription but don't change the plan ID (e.g. changing only the trial_end), the subscription will inherit the old subscription's quantity attribute unless you pass a new quantity parameter. If you update a subscription and change the plan ID, the new subscription will not inherit the quantity attribute and will default to 1 unless you pass a quantity parameter. title: quantity type: - integer retains_own_balance: description: '' title: retains_own_balance type: - boolean source: description: The source can either be a token, like the ones returned by [Elements](https://stripe.com/docs/elements), or a dictionary containing a user's credit card details (with the options shown below). You must provide a source if the customer does not already have a valid source attached, and you are subscribing the customer for a plan that is not free. Passing `source` will create a new source object, make it the customer default source, and delete the old customer default if one exists. If you want to add an additional source to use with subscriptions, instead use the [card creation API](https://stripe.com/docs/api#create_card) to add the card and then the [customer update API](https://stripe.com/docs/api#update customer) to set it as the default. Whenever you attach a card to a customer, Stripe will automatically validate the card. title: source type: - object - string tax_percent: description: A non-negative decimal (with at most four decimal places) between 0 and 100. This represents the percentage of the subscription invoice subtotal that will be calculated and added as tax to the final amount each billing period. For example, a plan which charges $10/month with a `tax_percent` of 20.0 will charge $12 per invoice. title: tax_percent type: - number trial_end: description: Unix timestamp representing the end of the trial period the customer will get before being charged for the first time. If set, trial_end will override the default trial period of the plan the customer is being subscribed to. The special value `now` can be provided to end the customer's trial immediately. title: trial_end type: - integer - string trial_period_days: description: Integer representing the number of trial period days before the customer is charged for the first time. If set, `trial_period_days` overrides the default trial period days of the plan the customer is being subscribed to. title: trial_period_days type: - integer required: - customer responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/subscriptions/{subscription_exposed_id}": delete: description:

Cancels a customer’s subscription. If you set the at_period_end parameter to true, the subscription will remain active until the end of the period, at which point it will be canceled and not renewed. By default, the subscription is terminated immediately. In either case, the customer will not be charged again for the subscription. Note, however, that any pending invoice items that you’ve created will still be charged for at the end of the period unless manually deleted. If you’ve set the subscription to cancel at period end, any pending prorations will also be left in place and collected at the end of the period, but if the subscription is set to cancel immediately, pending prorations will be removed.

By default, all unpaid invoices for the customer will be closed upon subscription cancellation. We do this in order to prevent unexpected payment retries once the customer has canceled a subscription. However, you can reopen the invoices manually after subscription cancellation to have us proceed with automatic retries, or you could even re-attempt payment yourself on all unpaid invoices before allowing the customer to cancel the subscription at all.

operationId: DeleteCustomerSubscription parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: at_period_end: description: A flag that if set to true will delay the cancellation of the subscription until the end of the current period. title: at_period_end type: - boolean responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription" default: description: Error response. schema: "$ref": "#/definitions/error" get: description: "

Retrieves the subscription with the given ID.

" operationId: RetrieveCustomerSubscription parameters: [] responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription" default: description: Error response. schema: "$ref": "#/definitions/error" post: description:

Updates an existing subscription on a customer to match the specified parameters. When changing plans or quantities, we will optionally prorate the price we charge next month to make up for any price changes. To preview how the proration will be calculated, use the upcoming invoice endpoint.

operationId: UpdateCustomerSubscription parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: account_balance: description: '' title: account_balance type: - integer application_fee_percent: description: A non-negative decimal (with at most two decimal places) between 0 and 100. This represents the percentage of the subscription invoice subtotal that will be transferred to the application owner's Stripe account. The request must be made with an OAuth key in order to set an application fee percentage. For more information, see the application fees [documentation](https://stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions')}). title: application_fee_percent type: - number billing: description: Either `charge_automatically`, or `send_invoice`. When charging automatically, Stripe will attempt to pay this subscription at the end of the cycle using the default source attached to the customer. When sending an invoice, Stripe will email your customer an invoice with payment instructions. title: billing type: - string coupon: description: The code of the coupon to apply to this subscription. A coupon applied to a subscription will only affect invoices created for that particular subscription. title: coupon type: - string days_until_due: description: Number of days a customer has to pay invoices generated by this subscription. title: days_until_due type: - integer items: description: List of subscription items, each with an attached plan. title: items type: - array max_occurrences: description: '' title: max_occurrences type: - integer metadata: description: A set of key/value pairs that you can attach to a subscription object. It can be useful for storing additional information about the subscription in a structured format. title: metadata type: - object pay_immediately: description: '' title: pay_immediately type: - boolean plan: description: The identifier of the plan to update the subscription to. If omitted, the subscription will not change plans. title: plan type: - string prorate: description: Flag telling us whether to prorate switching plans during a billing cycle. title: prorate type: - boolean proration_date: description: If set, the proration will be calculated as though the subscription was updated at the given time. This can be used to apply exactly the same proration that was previewed with [upcoming invoice](#retrieve_customer_invoice) endpoint. It can also be used to implement custom proration logic, such as prorating by day instead of by second, by providing the time that you wish to use for proration calculations. title: proration_date type: - integer quantity: description: The quantity you'd like to apply to the subscription you're updating. For example, if your plan is 10/user/month, and your customer has 5 users, you could pass 5 as the quantity to have the customer charged 50 (5 x 10) monthly. If you update a subscription but don't change the plan ID (e.g. changing only the trial_end), the subscription will inherit the old subscription's quantity attribute unless you pass a new quantity parameter. If you update a subscription and change the plan ID, the new subscription will not inherit the quantity attribute and will default to 1 unless you pass a quantity parameter. title: quantity type: - integer retains_own_balance: description: '' title: retains_own_balance type: - boolean source: description: The source can either be a token, like the ones returned by [Elements](https://stripe.com/docs/elements), or a dictionary containing a user's credit card details (with the options shown below). You must provide a source if the customer does not already have a valid source attached, and you are subscribing the customer for a plan that is not free. Passing `source` will create a new source object, make it the customer default source, and delete the old customer default if one exists. If you want to add an additional source to use with subscriptions, instead use the [card creation API](https://stripe.com/docs/api#create_card) to add the card and then the [customer update API](https://stripe.com/docs/api#update customer) to set it as the default. Whenever you attach a card to a customer, Stripe will automatically validate the card. title: source type: - object - string tax_percent: description: A non-negative decimal (with at most four decimal places) between 0 and 100. This represents the percentage of the subscription invoice subtotal that will be calculated and added as tax to the final amount each billing period. For example, a plan which charges $10/month with a `tax_percent` of 20.0 will charge $12 per invoice. title: tax_percent type: - number trial_end: description: Unix timestamp representing the end of the trial period the customer will get before being charged for the first time. If set, trial_end will override the default trial period of the plan the customer is being subscribed to. The special value `now` can be provided to end the customer's trial immediately. title: trial_end type: - integer - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/subscription" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/subscriptions/{subscription_exposed_id}/discount": delete: description: "

Removes the currently applied discount on a customer.

" operationId: DeleteCustomerDiscount parameters: [] responses: '200': description: Successful response. schema: "$ref": "#/definitions/discount" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/tokens": post: description: '' operationId: CreateBankAccountToken parameters: - description: Body parameters for the request. in: body name: payload required: false schema: properties: bank_account: description: '' title: bank_account type: - object - string payment_user_agent: description: '' title: payment_user_agent type: - string request_id: description: '' title: request_id type: - string responses: '200': description: Successful response. schema: "$ref": "#/definitions/token" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/tokens/{token}": get: description: "

Retrieves the token with the given ID.

" operationId: RetrieveToken parameters: - description: The ID of the desired token. in: path name: token required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/token" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/transfers": get: description: "

Returns a list of existing transfers sent to connected accounts. The transfers are returned in sorted order, with the most recently created transfers appearing first.

" operationId: AllTransfers parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: '' in: query name: created required: false type: integer - description: Only return transfers for the destination specified by this account ID. in: query name: destination required: false type: string - description: Only return transfers with the specified transfer group. in: query name: transfer_group required: false type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/transfer" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. enum: - "/v1/transfers" type: - string required: - data - has_more - object - url title: TransferList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateTransfer parameters: - description: Body parameters for the request. in: body name: payload required: true schema: properties: amount: description: '' title: amount type: - integer currency: description: '' title: currency type: - string destination: description: '' title: destination type: - string metadata: description: '' title: metadata type: - object source_transaction: description: '' title: source_transaction type: - string source_type: description: '' title: source_type type: - string transfer_group: description: '' title: transfer_group type: - string required: - amount - currency responses: '200': description: Successful response. schema: "$ref": "#/definitions/transfer" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/transfers/{id}": get: description: "

Retrieves the details of an existing transfer. Supply the unique transfer ID from either a transfer creation request or the transfer list, and Stripe will return the corresponding transfer information.

" operationId: RetrieveTransfer parameters: - description: The identifier of the transfer to be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/transfer" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: UpdateTransfer parameters: - description: '' in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: '' title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/transfer" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/transfers/{id}/cancel": post: description: '' operationId: ReverseNonStripeTransferOnSlashCancel parameters: - description: '' in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/legacy_transfer" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/transfers/{id}/reversals": get: description: "

You can see a list of the reversals belonging to a specific transfer. Note that the 10 most recent reversals are always available by default on the transfer object. If you need more than those 10, you can use this API method and the limit and starting_after parameters to page through additional reversals.

" operationId: AllTransferReversals parameters: - description: A limit on the number of objects to be returned. Limit can range between 1 and 100 items. in: query name: limit required: false type: integer - description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `starting_after=obj_foo` in order to fetch the next page of the list. in: query name: starting_after required: false type: string - description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list. in: query name: ending_before required: false type: string - description: The ID of the transfer whose reversals will be retrieved. in: path name: id required: true type: string responses: '200': description: Successful response. schema: properties: data: items: "$ref": "#/definitions/transfer_reversal" type: - array has_more: description: True if this list has another page of items after this one that can be fetched. type: - boolean object: description: String representing the object's type. Objects of the same type share the same value. Always has the value "list". enum: - list type: - string total_count: description: The total number of items available. This value is not included by default, but you can request it by specifying ?include[]=total_count. type: - integer url: description: The URL where this list can be accessed. type: - string required: - data - has_more - object - url title: TransferReversalList type: - object default: description: Error response. schema: "$ref": "#/definitions/error" post: description: '' operationId: CreateStripeAccountTransferReversal parameters: - description: '' in: path name: id required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: amount: description: '' title: amount type: - integer description: description: '' title: description type: - string metadata: description: '' title: metadata type: - object refund_application_fee: description: '' title: refund_application_fee type: - boolean responses: '200': description: Successful response. schema: "$ref": "#/definitions/transfer_reversal" default: description: Error response. schema: "$ref": "#/definitions/error" "/v1/transfers/{transfer}/reversals/{id}": get: description: "

By default, you can see the 10 most recent reversals stored directly on the transfer object, but you can also retrieve details about a specific reversal stored on the transfer.

" operationId: RetrieveTransferReversal parameters: - description: ID of the transfer reversed. in: path name: transfer required: true type: string - description: ID of reversal to retrieve. in: path name: id required: true type: string responses: '200': description: Successful response. schema: "$ref": "#/definitions/transfer_reversal" default: description: Error response. schema: "$ref": "#/definitions/error" post: description: "

Updates the specified reversal by setting the values of the parameters passed. Any parameters not provided will be left unchanged.

This request only accepts metadata and description as arguments.

" operationId: UpdateTransferReversal parameters: - description: '' in: path name: id required: true type: string - description: '' in: path name: transfer required: true type: string - description: Body parameters for the request. in: body name: payload required: false schema: properties: metadata: description: A set of key/value pairs that you can attach to a reversal object. It can be useful for storing additional information about the reversal in a structured format. title: metadata type: - object responses: '200': description: Successful response. schema: "$ref": "#/definitions/transfer_reversal" default: description: Error response. schema: "$ref": "#/definitions/error" produces: - application/json schemes: - https swagger: '2.0'