Skip to content

Stripe: Sources schemas

41 Stripe schemas with complete fields and constraints.

← Sources operations · All schemas

Create a source — request body — body mandate

FieldTypePresenceDescription and constraints
$objectRootInformation about a mandate possibility attached to a source object (generally for bank debits) as well as its acceptance status.
acceptanceModelOptionalExpand Create a source — request body — body mandate acceptance
amountJSONOptional
amount (anyOf 1)integerAlternative
amount (anyOf 2)stringAlternativeOne of:
currencystringOptionalFormat: currency
intervalstringOptionalOne of: one_time, scheduled, variable
Maximum length: 5000
notification_methodstringOptionalOne of: deprecated_none, email, manual, none, stripe_email
Maximum length: 5000

Referenced models: Create a source — request body — body mandate acceptance

Create a source — request body — body mandate acceptance

FieldTypePresenceDescription and constraints
$objectRoot
dateintegerOptionalFormat: unix-time
ipstringOptional
offlineobjectOptional
offline.contact_emailstringRequired within parent
onlineobjectOptional
online.dateintegerOptionalFormat: unix-time
online.ipstringOptional
online.user_agentstringOptionalMaximum length: 5000
statusstringRequired within parentOne of: accepted, pending, refused, revoked
Maximum length: 5000
typestringOptionalOne of: offline, online
Maximum length: 5000
user_agentstringOptionalMaximum length: 5000

Create a source — request body — body owner

FieldTypePresenceDescription and constraints
$objectRootInformation about the owner of the payment instrument that may be used or required by particular source types.
addressobjectOptional
address.citystringOptionalMaximum length: 5000
address.countrystringOptionalMaximum length: 5000
address.line1stringOptionalMaximum length: 5000
address.line2stringOptionalMaximum length: 5000
address.postal_codestringOptionalMaximum length: 5000
address.statestringOptionalMaximum length: 5000
emailstringOptional
namestringOptionalMaximum length: 5000
phonestringOptionalMaximum length: 5000

Create a source — request body — body source order

FieldTypePresenceDescription and constraints
$objectRootInformation about the items and shipping associated with the source. Required for transactional credit (for example Klarna) sources before you can charge it.
itemsarrayOptional
items[]objectEach item
items[].amountintegerOptional
items[].currencystringOptionalFormat: currency
items[].descriptionstringOptionalMaximum length: 1000
items[].parentstringOptionalMaximum length: 5000
items[].quantityintegerOptional
items[].typestringOptionalOne of: discount, shipping, sku, tax
Maximum length: 5000
shippingModelOptionalExpand Create a source — request body — body source order shipping

Referenced models: Create a source — request body — body source order shipping

Create a source — request body — body source order shipping

FieldTypePresenceDescription and constraints
$objectRoot
addressobjectRequired within parent
address.citystringOptionalMaximum length: 5000
address.countrystringOptionalMaximum length: 5000
address.line1stringRequired within parentMaximum length: 5000
address.line2stringOptionalMaximum length: 5000
address.postal_codestringOptionalMaximum length: 5000
address.statestringOptionalMaximum length: 5000
carrierstringOptionalMaximum length: 5000
namestringOptionalMaximum length: 5000
phonestringOptionalMaximum length: 5000
tracking_numberstringOptionalMaximum length: 5000

Create a source — response body

FieldTypePresenceDescription and constraints
$objectRoot`Source` objects allow you to accept a variety of payment methods. They
represent a customer's payment instrument, and can be used with the Stripe API
just like a `Card` object: once chargeable, they can be charged, or can be
attached to customers.

Stripe doesn't recommend using the deprecated [Sources API](https://docs.stripe.com/api/sources).
We recommend that you adopt the [PaymentMethods API](https://docs.stripe.com/api/payment_methods).
This newer API provides access to our latest features and payment method types.

Related guides: [Sources API](https://docs.stripe.com/sources) and [Sources & Customers](https://docs.stripe.com/sources/customers).
ach_credit_transferModelOptionalExpand Create a source — response body — ach credit transfer
ach_debitModelOptionalExpand Create a source — response body — ach debit
acss_debitModelOptionalExpand Create a source — response body — acss debit
alipayModelOptionalExpand Create a source — response body — alipay
allow_redisplayJSONOptional
allow_redisplay (anyOf 1)stringAlternativeThis field indicates whether this payment method can be shown again to its customer in a checkout flow. Stripe products such as Checkout and Elements use this field to determine whether a payment method can be shown as a saved payment method in a checkout flow. The field defaults to “unspecified”.
Known values: always, limited, unspecified
allow_redisplay (anyOf 2)nullAlternative
amountJSONOptional
amount (anyOf 1)JSONAlternative
amount (anyOf 1) (anyOf 1)integerAlternativeA positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a zero-decimal currency) representing the total amount associated with the source. This is the amount for which the source will be chargeable once ready. Required for `single_use` sources.
amount (anyOf 1) (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
amount (anyOf 2)nullAlternative
au_becs_debitModelOptionalExpand Create a source — response body — au becs debit
bancontactModelOptionalExpand Create a source — response body — bancontact
cardModelOptionalExpand Create a source — response body — card
card_presentModelOptionalExpand Create a source — response body — card present
client_secretstringRequired within parentThe client secret of the source. Used for client-side retrieval using a publishable key.
Maximum length: 5000
code_verificationModelOptionalExpand Create a source — response body — code verification
createdJSONRequired within parent
created (anyOf 1)integerAlternativeTime at which the object was created. Measured in seconds since the Unix epoch.
Format: unix-time
created (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
currencyJSONOptional
currency (anyOf 1)stringAlternativeThree-letter [ISO code for the currency](https://stripe.com/docs/currencies) associated with the source. This is the currency for which the source will be chargeable once ready. Required for `single_use` sources.
Format: currency
currency (anyOf 2)nullAlternative
customerstringOptionalThe ID of the customer to which this source is attached. This will not be present when the source has not been attached to a customer.
Maximum length: 5000
epsModelOptionalExpand Create a source — response body — eps
flowstringRequired within parentThe authentication `flow` of the source. `flow` is one of `redirect`, `receiver`, `code_verification`, `none`.
Maximum length: 5000
giropayModelOptionalExpand Create a source — response body — giropay
idstringRequired within parentUnique identifier for the object.
Maximum length: 5000
idealModelOptionalExpand Create a source — response body — ideal
klarnaModelOptionalExpand Create a source — response body — klarna
livemodebooleanRequired within parentIf the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
metadataJSONOptional
metadata (anyOf 1)objectAlternativeSet of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
Additional keys: see wildcard field
metadata (anyOf 1).*stringAdditional keysMaximum length: 500
metadata (anyOf 2)nullAlternative
multibancoModelOptionalExpand Create a source — response body — multibanco
objectstringRequired within parentString representing the object's type. Objects of the same type share the same value.
Known values: source
ownerJSONOptional
owner (anyOf 1)JSONAlternativeInformation about the owner of the payment instrument that may be used or required by particular source types.
owner (anyOf 1) (anyOf 1)ModelAlternativeExpand Create a source — response body — owner value address, email, name, phone, verified address, verified email, verified name, verified phone
owner (anyOf 2)nullAlternative
p24ModelOptionalExpand Create a source — response body — p24
receiverModelOptionalExpand Create a source — response body — receiver
redirectModelOptionalExpand Create a source — response body — redirect
sepa_debitModelOptionalExpand Create a source — response body — sepa debit
sofortModelOptionalExpand Create a source — response body — sofort
source_orderModelOptionalExpand Create a source — response body — source order
statement_descriptorJSONOptional
statement_descriptor (anyOf 1)stringAlternativeExtra information about a source. This will appear on your customer's statement every time you charge the source.
Maximum length: 5000
statement_descriptor (anyOf 2)nullAlternative
statusstringRequired within parentThe status of the source, one of `canceled`, `chargeable`, `consumed`, `failed`, or `pending`. Only `chargeable` sources can be used to create a charge.
Maximum length: 5000
three_d_secureModelOptionalExpand Create a source — response body — three d secure
typestringRequired within parentThe `type` of the source. The `type` is a payment method, one of `ach_credit_transfer`, `ach_debit`, `alipay`, `bancontact`, `card`, `card_present`, `eps`, `giropay`, `ideal`, `multibanco`, `klarna`, `p24`, `sepa_debit`, `sofort`, `three_d_secure`, or `wechat`. An additional hash is included on the source with a name matching this value. It contains additional information specific to the [payment method](https://docs.stripe.com/sources) used.
Known values: ach_credit_transfer, ach_debit, acss_debit, alipay, au_becs_debit, bancontact, card, card_present, eps, giropay, ideal, klarna, multibanco, p24, sepa_debit, sofort, three_d_secure, wechat
usageJSONOptional
usage (anyOf 1)stringAlternativeEither `reusable` or `single_use`. Whether this source should be reusable or not. Some source types may or may not be reusable by construction, while others may leave the option at creation. If an incompatible value is passed, an error will be returned.
Maximum length: 5000
usage (anyOf 2)nullAlternative
wechatModelOptionalExpand Create a source — response body — wechat

Referenced models: Create a source — response body — code verification, Create a source — response body — source order, Create a source — response body — owner value address, email, name, phone, verified address, verified email, verified name, verified phone, Create a source — response body — receiver, Create a source — response body — redirect, Create a source — response body — ach credit transfer, Create a source — response body — ach debit, Create a source — response body — acss debit, Create a source — response body — alipay, Create a source — response body — au becs debit, Create a source — response body — bancontact, Create a source — response body — card, Create a source — response body — card present, Create a source — response body — eps, Create a source — response body — giropay, Create a source — response body — ideal, Create a source — response body — klarna, Create a source — response body — multibanco, Create a source — response body — p24, Create a source — response body — sepa debit, Create a source — response body — sofort, Create a source — response body — three d secure, Create a source — response body — wechat

Create a source — response body — ach credit transfer

FieldTypePresenceDescription and constraints
$objectRoot
account_numberJSONOptional
account_number (anyOf 1)stringAlternative
account_number (anyOf 2)nullAlternative
bank_nameJSONOptional
bank_name (anyOf 1)stringAlternative
bank_name (anyOf 2)nullAlternative
fingerprintJSONOptional
fingerprint (anyOf 1)stringAlternative
fingerprint (anyOf 2)nullAlternative
refund_account_holder_nameJSONOptional
refund_account_holder_name (anyOf 1)stringAlternative
refund_account_holder_name (anyOf 2)nullAlternative
refund_account_holder_typeJSONOptional
refund_account_holder_type (anyOf 1)stringAlternative
refund_account_holder_type (anyOf 2)nullAlternative
refund_routing_numberJSONOptional
refund_routing_number (anyOf 1)stringAlternative
refund_routing_number (anyOf 2)nullAlternative
routing_numberJSONOptional
routing_number (anyOf 1)stringAlternative
routing_number (anyOf 2)nullAlternative
swift_codeJSONOptional
swift_code (anyOf 1)stringAlternative
swift_code (anyOf 2)nullAlternative

Create a source — response body — ach debit

FieldTypePresenceDescription and constraints
$objectRoot
bank_nameJSONOptional
bank_name (anyOf 1)stringAlternative
bank_name (anyOf 2)nullAlternative
countryJSONOptional
country (anyOf 1)stringAlternative
country (anyOf 2)nullAlternative
fingerprintJSONOptional
fingerprint (anyOf 1)stringAlternative
fingerprint (anyOf 2)nullAlternative
last4JSONOptional
last4 (anyOf 1)stringAlternative
last4 (anyOf 2)nullAlternative
routing_numberJSONOptional
routing_number (anyOf 1)stringAlternative
routing_number (anyOf 2)nullAlternative
typeJSONOptional
type (anyOf 1)stringAlternative
type (anyOf 2)nullAlternative

Create a source — response body — acss debit

FieldTypePresenceDescription and constraints
$objectRoot
bank_address_cityJSONOptional
bank_address_city (anyOf 1)stringAlternative
bank_address_city (anyOf 2)nullAlternative
bank_address_line_1JSONOptional
bank_address_line_1 (anyOf 1)stringAlternative
bank_address_line_1 (anyOf 2)nullAlternative
bank_address_line_2JSONOptional
bank_address_line_2 (anyOf 1)stringAlternative
bank_address_line_2 (anyOf 2)nullAlternative
bank_address_postal_codeJSONOptional
bank_address_postal_code (anyOf 1)stringAlternative
bank_address_postal_code (anyOf 2)nullAlternative
bank_nameJSONOptional
bank_name (anyOf 1)stringAlternative
bank_name (anyOf 2)nullAlternative
categoryJSONOptional
category (anyOf 1)stringAlternative
category (anyOf 2)nullAlternative
countryJSONOptional
country (anyOf 1)stringAlternative
country (anyOf 2)nullAlternative
fingerprintJSONOptional
fingerprint (anyOf 1)stringAlternative
fingerprint (anyOf 2)nullAlternative
last4JSONOptional
last4 (anyOf 1)stringAlternative
last4 (anyOf 2)nullAlternative
routing_numberJSONOptional
routing_number (anyOf 1)stringAlternative
routing_number (anyOf 2)nullAlternative

Create a source — response body — alipay

FieldTypePresenceDescription and constraints
$objectRoot
data_stringJSONOptional
data_string (anyOf 1)stringAlternative
data_string (anyOf 2)nullAlternative
native_urlJSONOptional
native_url (anyOf 1)stringAlternative
native_url (anyOf 2)nullAlternative
statement_descriptorJSONOptional
statement_descriptor (anyOf 1)stringAlternative
statement_descriptor (anyOf 2)nullAlternative

Create a source — response body — au becs debit

FieldTypePresenceDescription and constraints
$objectRoot
bsb_numberJSONOptional
bsb_number (anyOf 1)stringAlternative
bsb_number (anyOf 2)nullAlternative
fingerprintJSONOptional
fingerprint (anyOf 1)stringAlternative
fingerprint (anyOf 2)nullAlternative
last4JSONOptional
last4 (anyOf 1)stringAlternative
last4 (anyOf 2)nullAlternative

Create a source — response body — bancontact

FieldTypePresenceDescription and constraints
$objectRoot
bank_codeJSONOptional
bank_code (anyOf 1)stringAlternative
bank_code (anyOf 2)nullAlternative
bank_nameJSONOptional
bank_name (anyOf 1)stringAlternative
bank_name (anyOf 2)nullAlternative
bicJSONOptional
bic (anyOf 1)stringAlternative
bic (anyOf 2)nullAlternative
iban_last4JSONOptional
iban_last4 (anyOf 1)stringAlternative
iban_last4 (anyOf 2)nullAlternative
preferred_languageJSONOptional
preferred_language (anyOf 1)stringAlternative
preferred_language (anyOf 2)nullAlternative
statement_descriptorJSONOptional
statement_descriptor (anyOf 1)stringAlternative
statement_descriptor (anyOf 2)nullAlternative

Create a source — response body — card

FieldTypePresenceDescription and constraints
$objectRoot
address_line1_checkJSONOptional
address_line1_check (anyOf 1)stringAlternative
address_line1_check (anyOf 2)nullAlternative
address_zip_checkJSONOptional
address_zip_check (anyOf 1)stringAlternative
address_zip_check (anyOf 2)nullAlternative
brandJSONOptional
brand (anyOf 1)stringAlternative
brand (anyOf 2)nullAlternative
countryJSONOptional
country (anyOf 1)stringAlternative
country (anyOf 2)nullAlternative
cvc_checkJSONOptional
cvc_check (anyOf 1)stringAlternative
cvc_check (anyOf 2)nullAlternative
dynamic_last4JSONOptional
dynamic_last4 (anyOf 1)stringAlternative
dynamic_last4 (anyOf 2)nullAlternative
exp_monthJSONOptional
exp_month (anyOf 1)JSONAlternative
exp_month (anyOf 1) (anyOf 1)integerAlternative
exp_month (anyOf 1) (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
exp_month (anyOf 2)nullAlternative
exp_yearJSONOptional
exp_year (anyOf 1)JSONAlternative
exp_year (anyOf 1) (anyOf 1)integerAlternative
exp_year (anyOf 1) (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
exp_year (anyOf 2)nullAlternative
fingerprintstringOptional
fundingJSONOptional
funding (anyOf 1)stringAlternative
funding (anyOf 2)nullAlternative
last4JSONOptional
last4 (anyOf 1)stringAlternative
last4 (anyOf 2)nullAlternative
nameJSONOptional
name (anyOf 1)stringAlternative
name (anyOf 2)nullAlternative
three_d_securestringOptional
tokenization_methodJSONOptional
tokenization_method (anyOf 1)stringAlternative
tokenization_method (anyOf 2)nullAlternative

Create a source — response body — card present

FieldTypePresenceDescription and constraints
$objectRoot
application_cryptogramstringOptional
application_preferred_namestringOptional
authorization_codeJSONOptional
authorization_code (anyOf 1)stringAlternative
authorization_code (anyOf 2)nullAlternative
authorization_response_codestringOptional
brandJSONOptional
brand (anyOf 1)stringAlternative
brand (anyOf 2)nullAlternative
countryJSONOptional
country (anyOf 1)stringAlternative
country (anyOf 2)nullAlternative
cvm_typestringOptional
data_typeJSONOptional
data_type (anyOf 1)stringAlternative
data_type (anyOf 2)nullAlternative
dedicated_file_namestringOptional
emv_auth_datastringOptional
evidence_customer_signatureJSONOptional
evidence_customer_signature (anyOf 1)stringAlternative
evidence_customer_signature (anyOf 2)nullAlternative
evidence_transaction_certificateJSONOptional
evidence_transaction_certificate (anyOf 1)stringAlternative
evidence_transaction_certificate (anyOf 2)nullAlternative
exp_monthJSONOptional
exp_month (anyOf 1)JSONAlternative
exp_month (anyOf 1) (anyOf 1)integerAlternative
exp_month (anyOf 1) (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
exp_month (anyOf 2)nullAlternative
exp_yearJSONOptional
exp_year (anyOf 1)JSONAlternative
exp_year (anyOf 1) (anyOf 1)integerAlternative
exp_year (anyOf 1) (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
exp_year (anyOf 2)nullAlternative
fingerprintstringOptional
fundingJSONOptional
funding (anyOf 1)stringAlternative
funding (anyOf 2)nullAlternative
last4JSONOptional
last4 (anyOf 1)stringAlternative
last4 (anyOf 2)nullAlternative
pos_device_idJSONOptional
pos_device_id (anyOf 1)stringAlternative
pos_device_id (anyOf 2)nullAlternative
pos_entry_modestringOptional
read_methodJSONOptional
read_method (anyOf 1)stringAlternative
read_method (anyOf 2)nullAlternative
readerJSONOptional
reader (anyOf 1)stringAlternative
reader (anyOf 2)nullAlternative
terminal_verification_resultsstringOptional
transaction_status_informationstringOptional

Create a source — response body — code verification

FieldTypePresenceDescription and constraints
$objectRoot
attempts_remainingJSONRequired within parent
attempts_remaining (anyOf 1)integerAlternativeThe number of attempts remaining to authenticate the source object with a verification code.
attempts_remaining (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
statusstringRequired within parentThe status of the code verification, either `pending` (awaiting verification, `attempts_remaining` should be greater than 0), `succeeded` (successful verification) or `failed` (failed verification, cannot be verified anymore as `attempts_remaining` should be 0).
Maximum length: 5000

Create a source — response body — eps

FieldTypePresenceDescription and constraints
$objectRoot
referenceJSONOptional
reference (anyOf 1)stringAlternative
reference (anyOf 2)nullAlternative
statement_descriptorJSONOptional
statement_descriptor (anyOf 1)stringAlternative
statement_descriptor (anyOf 2)nullAlternative

Create a source — response body — giropay

FieldTypePresenceDescription and constraints
$objectRoot
bank_codeJSONOptional
bank_code (anyOf 1)stringAlternative
bank_code (anyOf 2)nullAlternative
bank_nameJSONOptional
bank_name (anyOf 1)stringAlternative
bank_name (anyOf 2)nullAlternative
bicJSONOptional
bic (anyOf 1)stringAlternative
bic (anyOf 2)nullAlternative
statement_descriptorJSONOptional
statement_descriptor (anyOf 1)stringAlternative
statement_descriptor (anyOf 2)nullAlternative

Create a source — response body — ideal

FieldTypePresenceDescription and constraints
$objectRoot
bankJSONOptional
bank (anyOf 1)stringAlternative
bank (anyOf 2)nullAlternative
bicJSONOptional
bic (anyOf 1)stringAlternative
bic (anyOf 2)nullAlternative
iban_last4JSONOptional
iban_last4 (anyOf 1)stringAlternative
iban_last4 (anyOf 2)nullAlternative
statement_descriptorJSONOptional
statement_descriptor (anyOf 1)stringAlternative
statement_descriptor (anyOf 2)nullAlternative

Create a source — response body — klarna

FieldTypePresenceDescription and constraints
$objectRoot
background_image_urlstringOptional
client_tokenJSONOptional
client_token (anyOf 1)stringAlternative
client_token (anyOf 2)nullAlternative
first_namestringOptional
last_namestringOptional
localestringOptional
logo_urlstringOptional
page_titlestringOptional
pay_later_asset_urls_descriptivestringOptional
pay_later_asset_urls_standardstringOptional
pay_later_namestringOptional
pay_later_redirect_urlstringOptional
pay_now_asset_urls_descriptivestringOptional
pay_now_asset_urls_standardstringOptional
pay_now_namestringOptional
pay_now_redirect_urlstringOptional
pay_over_time_asset_urls_descriptivestringOptional
pay_over_time_asset_urls_standardstringOptional
pay_over_time_namestringOptional
pay_over_time_redirect_urlstringOptional
payment_method_categoriesstringOptional
purchase_countrystringOptional
purchase_typestringOptional
redirect_urlstringOptional
shipping_delayJSONOptional
shipping_delay (anyOf 1)integerAlternative
shipping_delay (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
shipping_first_namestringOptional
shipping_last_namestringOptional

Create a source — response body — multibanco

FieldTypePresenceDescription and constraints
$objectRoot
entityJSONOptional
entity (anyOf 1)stringAlternative
entity (anyOf 2)nullAlternative
referenceJSONOptional
reference (anyOf 1)stringAlternative
reference (anyOf 2)nullAlternative
refund_account_holder_address_cityJSONOptional
refund_account_holder_address_city (anyOf 1)stringAlternative
refund_account_holder_address_city (anyOf 2)nullAlternative
refund_account_holder_address_countryJSONOptional
refund_account_holder_address_country (anyOf 1)stringAlternative
refund_account_holder_address_country (anyOf 2)nullAlternative
refund_account_holder_address_line1JSONOptional
refund_account_holder_address_line1 (anyOf 1)stringAlternative
refund_account_holder_address_line1 (anyOf 2)nullAlternative
refund_account_holder_address_line2JSONOptional
refund_account_holder_address_line2 (anyOf 1)stringAlternative
refund_account_holder_address_line2 (anyOf 2)nullAlternative
refund_account_holder_address_postal_codeJSONOptional
refund_account_holder_address_postal_code (anyOf 1)stringAlternative
refund_account_holder_address_postal_code (anyOf 2)nullAlternative
refund_account_holder_address_stateJSONOptional
refund_account_holder_address_state (anyOf 1)stringAlternative
refund_account_holder_address_state (anyOf 2)nullAlternative
refund_account_holder_nameJSONOptional
refund_account_holder_name (anyOf 1)stringAlternative
refund_account_holder_name (anyOf 2)nullAlternative
refund_ibanJSONOptional
refund_iban (anyOf 1)stringAlternative
refund_iban (anyOf 2)nullAlternative

Create a source — response body — owner value address, email, name, phone, verified address, verified email, verified name, verified phone

FieldTypePresenceDescription and constraints
$objectRoot
addressJSONOptional
address (anyOf 1)JSONAlternativeOwner's address.
address (anyOf 1) (anyOf 1)ModelAlternativeExpand Create a Location — response body — address
address (anyOf 2)nullAlternative
emailJSONOptional
email (anyOf 1)stringAlternativeOwner's email address.
Maximum length: 5000
email (anyOf 2)nullAlternative
nameJSONOptional
name (anyOf 1)stringAlternativeOwner's full name.
Maximum length: 5000
name (anyOf 2)nullAlternative
phoneJSONOptional
phone (anyOf 1)stringAlternativeOwner's phone number (including extension).
Maximum length: 5000
phone (anyOf 2)nullAlternative
verified_addressJSONOptional
verified_address (anyOf 1)JSONAlternativeVerified owner's address. Verified values are verified or provided by the payment method directly (and if supported) at the time of authorization or settlement. They cannot be set or mutated.
verified_address (anyOf 1) (anyOf 1)ModelAlternativeExpand Create a Location — response body — address
verified_address (anyOf 2)nullAlternative
verified_emailJSONOptional
verified_email (anyOf 1)stringAlternativeVerified owner's email address. Verified values are verified or provided by the payment method directly (and if supported) at the time of authorization or settlement. They cannot be set or mutated.
Maximum length: 5000
verified_email (anyOf 2)nullAlternative
verified_nameJSONOptional
verified_name (anyOf 1)stringAlternativeVerified owner's full name. Verified values are verified or provided by the payment method directly (and if supported) at the time of authorization or settlement. They cannot be set or mutated.
Maximum length: 5000
verified_name (anyOf 2)nullAlternative
verified_phoneJSONOptional
verified_phone (anyOf 1)stringAlternativeVerified owner's phone number (including extension). Verified values are verified or provided by the payment method directly (and if supported) at the time of authorization or settlement. They cannot be set or mutated.
Maximum length: 5000
verified_phone (anyOf 2)nullAlternative

Referenced models: Create a Location — response body — address

Create a source — response body — p24

FieldTypePresenceDescription and constraints
$objectRoot
referenceJSONOptional
reference (anyOf 1)stringAlternative
reference (anyOf 2)nullAlternative

Create a source — response body — receiver

FieldTypePresenceDescription and constraints
$objectRoot
addressJSONOptional
address (anyOf 1)stringAlternativeThe address of the receiver source. This is the value that should be communicated to the customer to send their funds to.
Maximum length: 5000
address (anyOf 2)nullAlternative
amount_chargedJSONRequired within parent
amount_charged (anyOf 1)integerAlternativeThe total amount that was moved to your balance. This is almost always equal to the amount charged. In rare cases when customers deposit excess funds and we are unable to refund those, those funds get moved to your balance and show up in amount_charged as well. The amount charged is expressed in the source's currency.
amount_charged (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
amount_receivedJSONRequired within parent
amount_received (anyOf 1)integerAlternativeThe total amount received by the receiver source. `amount_received = amount_returned + amount_charged` should be true for consumed sources unless customers deposit excess funds. The amount received is expressed in the source's currency.
amount_received (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
amount_returnedJSONRequired within parent
amount_returned (anyOf 1)integerAlternativeThe total amount that was returned to the customer. The amount returned is expressed in the source's currency.
amount_returned (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
refund_attributes_methodstringRequired within parentType of refund attribute method, one of `email`, `manual`, or `none`.
Maximum length: 5000
refund_attributes_statusstringRequired within parentType of refund attribute status, one of `missing`, `requested`, or `available`.
Maximum length: 5000

Create a source — response body — redirect

FieldTypePresenceDescription and constraints
$objectRoot
failure_reasonJSONOptional
failure_reason (anyOf 1)stringAlternativeThe failure reason for the redirect, either `user_abort` (the customer aborted or dropped out of the redirect flow), `declined` (the authentication failed or the transaction was declined), or `processing_error` (the redirect failed due to a technical error). Present only if the redirect status is `failed`.
Maximum length: 5000
failure_reason (anyOf 2)nullAlternative
return_urlstringRequired within parentThe URL you provide to redirect the customer to after they authenticated their payment.
Maximum length: 5000
statusstringRequired within parentThe status of the redirect, either `pending` (ready to be used by your customer to authenticate the transaction), `succeeded` (successful authentication, cannot be reused) or `not_required` (redirect should not be used) or `failed` (failed authentication, cannot be reused).
Maximum length: 5000
urlstringRequired within parentThe URL provided to you to redirect a customer to as part of a `redirect` authentication flow.
Maximum length: 2048

Create a source — response body — sepa debit

FieldTypePresenceDescription and constraints
$objectRoot
bank_codeJSONOptional
bank_code (anyOf 1)stringAlternative
bank_code (anyOf 2)nullAlternative
branch_codeJSONOptional
branch_code (anyOf 1)stringAlternative
branch_code (anyOf 2)nullAlternative
countryJSONOptional
country (anyOf 1)stringAlternative
country (anyOf 2)nullAlternative
fingerprintJSONOptional
fingerprint (anyOf 1)stringAlternative
fingerprint (anyOf 2)nullAlternative
last4JSONOptional
last4 (anyOf 1)stringAlternative
last4 (anyOf 2)nullAlternative
mandate_referenceJSONOptional
mandate_reference (anyOf 1)stringAlternative
mandate_reference (anyOf 2)nullAlternative
mandate_urlJSONOptional
mandate_url (anyOf 1)stringAlternative
mandate_url (anyOf 2)nullAlternative

Create a source — response body — sofort

FieldTypePresenceDescription and constraints
$objectRoot
bank_codeJSONOptional
bank_code (anyOf 1)stringAlternative
bank_code (anyOf 2)nullAlternative
bank_nameJSONOptional
bank_name (anyOf 1)stringAlternative
bank_name (anyOf 2)nullAlternative
bicJSONOptional
bic (anyOf 1)stringAlternative
bic (anyOf 2)nullAlternative
countryJSONOptional
country (anyOf 1)stringAlternative
country (anyOf 2)nullAlternative
iban_last4JSONOptional
iban_last4 (anyOf 1)stringAlternative
iban_last4 (anyOf 2)nullAlternative
preferred_languageJSONOptional
preferred_language (anyOf 1)stringAlternative
preferred_language (anyOf 2)nullAlternative
statement_descriptorJSONOptional
statement_descriptor (anyOf 1)stringAlternative
statement_descriptor (anyOf 2)nullAlternative

Create a source — response body — source order

FieldTypePresenceDescription and constraints
$objectRoot
amountJSONRequired within parent
amount (anyOf 1)integerAlternativeA positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a zero-decimal currency) representing the total amount for the order.
amount (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
currencystringRequired within parentThree-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
Format: currency
emailstringOptionalThe email address of the customer placing the order.
Maximum length: 5000
itemsJSONOptional
items (anyOf 1)arrayAlternativeList of items constituting the order.
items (anyOf 1)[]ModelEach itemExpand Create a source — response body — source order items List of items constituting the order item
items (anyOf 2)nullAlternative
shippingModelOptionalExpand Create a source — response body — source order shipping

Referenced models: Create a source — response body — source order shipping, Create a source — response body — source order items List of items constituting the order item

Create a source — response body — source order items List of items constituting the order item

FieldTypePresenceDescription and constraints
$objectRoot
amountJSONOptional
amount (anyOf 1)JSONAlternative
amount (anyOf 1) (anyOf 1)integerAlternativeThe amount (price) for this order item.
amount (anyOf 1) (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
amount (anyOf 2)nullAlternative
currencyJSONOptional
currency (anyOf 1)stringAlternativeThis currency of this order item. Required when `amount` is present.
Maximum length: 5000
currency (anyOf 2)nullAlternative
descriptionJSONOptional
description (anyOf 1)stringAlternativeHuman-readable description for this order item.
Maximum length: 5000
description (anyOf 2)nullAlternative
parentJSONOptional
parent (anyOf 1)stringAlternativeThe ID of the associated object for this line item. Expandable if not null (e.g., expandable to a SKU).
Maximum length: 5000
parent (anyOf 2)nullAlternative
quantityJSONOptional
quantity (anyOf 1)integerAlternativeThe quantity of this order item. When type is `sku`, this is the number of instances of the SKU to be ordered.
quantity (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
typeJSONOptional
type (anyOf 1)stringAlternativeThe type of this order item. Must be `sku`, `tax`, or `shipping`.
Maximum length: 5000
type (anyOf 2)nullAlternative

Create a source — response body — source order shipping

FieldTypePresenceDescription and constraints
$objectRoot
addressModelOptionalExpand Create a Location — response body — address
carrierJSONOptional
carrier (anyOf 1)stringAlternativeThe delivery service that shipped a physical product, such as Fedex, UPS, USPS, etc.
Maximum length: 5000
carrier (anyOf 2)nullAlternative
namestringOptionalRecipient name.
Maximum length: 5000
phoneJSONOptional
phone (anyOf 1)stringAlternativeRecipient phone (including extension).
Maximum length: 5000
phone (anyOf 2)nullAlternative
tracking_numberJSONOptional
tracking_number (anyOf 1)stringAlternativeThe 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.
Maximum length: 5000
tracking_number (anyOf 2)nullAlternative

Referenced models: Create a Location — response body — address

Create a source — response body — three d secure

FieldTypePresenceDescription and constraints
$objectRoot
address_line1_checkJSONOptional
address_line1_check (anyOf 1)stringAlternative
address_line1_check (anyOf 2)nullAlternative
address_zip_checkJSONOptional
address_zip_check (anyOf 1)stringAlternative
address_zip_check (anyOf 2)nullAlternative
authenticatedJSONOptional
authenticated (anyOf 1)booleanAlternative
authenticated (anyOf 2)nullAlternative
brandJSONOptional
brand (anyOf 1)stringAlternative
brand (anyOf 2)nullAlternative
cardJSONOptional
card (anyOf 1)stringAlternative
card (anyOf 2)nullAlternative
countryJSONOptional
country (anyOf 1)stringAlternative
country (anyOf 2)nullAlternative
customerJSONOptional
customer (anyOf 1)stringAlternative
customer (anyOf 2)nullAlternative
cvc_checkJSONOptional
cvc_check (anyOf 1)stringAlternative
cvc_check (anyOf 2)nullAlternative
dynamic_last4JSONOptional
dynamic_last4 (anyOf 1)stringAlternative
dynamic_last4 (anyOf 2)nullAlternative
exp_monthJSONOptional
exp_month (anyOf 1)JSONAlternative
exp_month (anyOf 1) (anyOf 1)integerAlternative
exp_month (anyOf 1) (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
exp_month (anyOf 2)nullAlternative
exp_yearJSONOptional
exp_year (anyOf 1)JSONAlternative
exp_year (anyOf 1) (anyOf 1)integerAlternative
exp_year (anyOf 1) (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
exp_year (anyOf 2)nullAlternative
fingerprintstringOptional
fundingJSONOptional
funding (anyOf 1)stringAlternative
funding (anyOf 2)nullAlternative
last4JSONOptional
last4 (anyOf 1)stringAlternative
last4 (anyOf 2)nullAlternative
nameJSONOptional
name (anyOf 1)stringAlternative
name (anyOf 2)nullAlternative
three_d_securestringOptional
tokenization_methodJSONOptional
tokenization_method (anyOf 1)stringAlternative
tokenization_method (anyOf 2)nullAlternative

Create a source — response body — wechat

FieldTypePresenceDescription and constraints
$objectRoot
prepay_idstringOptional
qr_code_urlJSONOptional
qr_code_url (anyOf 1)stringAlternative
qr_code_url (anyOf 2)nullAlternative
statement_descriptorstringOptional

Retrieve a Source Mandate Notification — response body

FieldTypePresenceDescription and constraints
$objectRootSource mandate notifications should be created when a notification related to
a source mandate must be sent to the payer. They will trigger a webhook or
deliver an email to the customer.
acss_debitModelOptionalExpand Retrieve a Source Mandate Notification — response body — acss debit
amountJSONOptional
amount (anyOf 1)JSONAlternative
amount (anyOf 1) (anyOf 1)integerAlternativeA positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a zero-decimal currency) representing the amount associated with the mandate notification. The amount is expressed in the currency of the underlying source. Required if the notification type is `debit_initiated`.
amount (anyOf 1) (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
amount (anyOf 2)nullAlternative
bacs_debitModelOptionalExpand Retrieve a Source Mandate Notification — response body — bacs debit
createdJSONRequired within parent
created (anyOf 1)integerAlternativeTime at which the object was created. Measured in seconds since the Unix epoch.
Format: unix-time
created (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
idstringRequired within parentUnique identifier for the object.
Maximum length: 5000
livemodebooleanRequired within parentIf the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
objectstringRequired within parentString representing the object's type. Objects of the same type share the same value.
Known values: source_mandate_notification
reasonstringRequired within parentThe reason of the mandate notification. Valid reasons are `mandate_confirmed` or `debit_initiated`.
Maximum length: 5000
sepa_debitModelOptionalExpand Retrieve a Source Mandate Notification — response body — sepa debit
sourceModelRequired within parentExpand Create a source — response body
statusstringRequired within parentThe status of the mandate notification. Valid statuses are `pending` or `submitted`.
Maximum length: 5000
typestringRequired within parentThe type of source this mandate notification is attached to. Should be the source type identifier code for the payment method, such as `three_d_secure`.
Maximum length: 5000

Referenced models: Create a source — response body, Retrieve a Source Mandate Notification — response body — acss debit, Retrieve a Source Mandate Notification — response body — bacs debit, Retrieve a Source Mandate Notification — response body — sepa debit

Retrieve a Source Mandate Notification — response body — acss debit

FieldTypePresenceDescription and constraints
$objectRoot
statement_descriptorstringOptionalThe statement descriptor associate with the debit.
Maximum length: 5000

Retrieve a Source Mandate Notification — response body — bacs debit

FieldTypePresenceDescription and constraints
$objectRoot
last4stringOptionalLast 4 digits of the account number associated with the debit.
Maximum length: 5000

Retrieve a Source Mandate Notification — response body — sepa debit

FieldTypePresenceDescription and constraints
$objectRoot
creditor_identifierstringOptionalSEPA creditor ID.
Maximum length: 5000
last4stringOptionalLast 4 digits of the account number associated with the debit.
Maximum length: 5000
mandate_referencestringOptionalMandate reference associated with the debit.
Maximum length: 5000

Retrieve a source transaction — response body

FieldTypePresenceDescription and constraints
$objectRootSome payment methods have no required amount that a customer must send.
Customers can be instructed to send any amount, and it can be made up of
multiple transactions. As such, sources can have multiple associated
transactions.
ach_credit_transferModelOptionalExpand Retrieve a source transaction — response body — ach credit transfer
amountJSONRequired within parent
amount (anyOf 1)integerAlternativeA positive integer in the smallest currency unit (that is, 100 cents for $1.00, or 1 for ¥1, Japanese Yen being a zero-decimal currency) representing the amount your customer has pushed to the receiver.
amount (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
chf_credit_transferModelOptionalExpand Retrieve a source transaction — response body — chf credit transfer
createdJSONRequired within parent
created (anyOf 1)integerAlternativeTime at which the object was created. Measured in seconds since the Unix epoch.
Format: unix-time
created (anyOf 2)stringAlternativePattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$
currencystringRequired within parentThree-letter [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html), in lowercase. Must be a [supported currency](https://stripe.com/docs/currencies).
Format: currency
gbp_credit_transferModelOptionalExpand Retrieve a source transaction — response body — gbp credit transfer
idstringRequired within parentUnique identifier for the object.
Maximum length: 5000
livemodebooleanRequired within parentIf the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
objectstringRequired within parentString representing the object's type. Objects of the same type share the same value.
Known values: source_transaction
paper_checkModelOptionalExpand Retrieve a source transaction — response body — paper check
sepa_credit_transferModelOptionalExpand Retrieve a source transaction — response body — sepa credit transfer
sourcestringRequired within parentThe ID of the source this transaction is attached to.
Maximum length: 5000
statusstringRequired within parentThe status of the transaction, one of `succeeded`, `pending`, or `failed`.
Maximum length: 5000
typestringRequired within parentThe type of source this transaction is attached to.
Known values: ach_credit_transfer, ach_debit, alipay, bancontact, card, card_present, eps, giropay, ideal, klarna, multibanco, p24, sepa_debit, sofort, three_d_secure, wechat

Referenced models: Retrieve a source transaction — response body — ach credit transfer, Retrieve a source transaction — response body — chf credit transfer, Retrieve a source transaction — response body — gbp credit transfer, Retrieve a source transaction — response body — paper check, Retrieve a source transaction — response body — sepa credit transfer

Retrieve a source transaction — response body — ach credit transfer

FieldTypePresenceDescription and constraints
$objectRoot
customer_datastringOptionalCustomer data associated with the transfer.
Maximum length: 5000
fingerprintstringOptionalBank account fingerprint associated with the transfer.
Maximum length: 5000
last4stringOptionalLast 4 digits of the account number associated with the transfer.
Maximum length: 5000
routing_numberstringOptionalRouting number associated with the transfer.
Maximum length: 5000

Retrieve a source transaction — response body — chf credit transfer

FieldTypePresenceDescription and constraints
$objectRoot
referencestringOptionalReference associated with the transfer.
Maximum length: 5000
sender_address_countrystringOptionalSender's country address.
Maximum length: 5000
sender_address_line1stringOptionalSender's line 1 address.
Maximum length: 5000
sender_ibanstringOptionalSender's bank account IBAN.
Maximum length: 5000
sender_namestringOptionalSender's name.
Maximum length: 5000

Retrieve a source transaction — response body — gbp credit transfer

FieldTypePresenceDescription and constraints
$objectRoot
fingerprintstringOptionalBank account fingerprint associated with the Stripe owned bank account receiving the transfer.
Maximum length: 5000
funding_methodstringOptionalThe credit transfer rails the sender used to push this transfer. The possible rails are: Faster Payments, BACS, CHAPS, and wire transfers. Currently only Faster Payments is supported.
Maximum length: 5000
last4stringOptionalLast 4 digits of sender account number associated with the transfer.
Maximum length: 5000
referencestringOptionalSender entered arbitrary information about the transfer.
Maximum length: 5000
sender_account_numberstringOptionalSender account number associated with the transfer.
Maximum length: 5000
sender_namestringOptionalSender name associated with the transfer.
Maximum length: 5000
sender_sort_codestringOptionalSender sort code associated with the transfer.
Maximum length: 5000

Retrieve a source transaction — response body — paper check

FieldTypePresenceDescription and constraints
$objectRoot
available_atstringOptionalTime at which the deposited funds will be available for use. Measured in seconds since the Unix epoch.
Maximum length: 5000
invoicesstringOptionalComma-separated list of invoice IDs associated with the paper check.
Maximum length: 5000

Retrieve a source transaction — response body — sepa credit transfer

FieldTypePresenceDescription and constraints
$objectRoot
referencestringOptionalReference associated with the transfer.
Maximum length: 5000
sender_ibanstringOptionalSender's bank account IBAN.
Maximum length: 5000
sender_namestringOptionalSender's name.
Maximum length: 5000

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.