Stripe: Payment records schemas (part 2)
12 Stripe schemas with complete fields and constraints.
← Payment records operations · All schemas
Report a refund — response body — payment method details value ach credit transfer, ach debit, acss debit, affirm, afterpay clearpay, alipay, alma, amazon pay, au becs debit, bacs debit, bancontact, billie, billing details, bizum, blik, boleto, card, card present, cashapp, crypto, custom, customer balance, eps, fpx, giropay, grabpay, ideal, interac present, kakao pay, klarna, konbini, kr card, link, mb way, mobilepay, momo, multibanco, naver pay, nz bank account, oxxo, p24, pay by bank, payco, payment method, paynow, paypal, paypay, payto, pix, promptpay, revolut pay, samsung pay, satispay, scalapay, sepa debit, sequra, sofort, stripe account, sunbit, swish, twint, type, upi, us bank account, wechat, wechat pay, zip p24
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
bank | JSON | Optional | |
bank (anyOf 1) | string | Alternative | The customer's bank. Can be one of `ing`, `citi_handlowy`, `tmobile_usbugi_bankowe`, `plus_bank`, `etransfer_pocztowy24`, `banki_spbdzielcze`, `bank_nowy_bfg_sa`, `getin_bank`, `velobank`, `blik`, `noble_pay`, `ideabank`, `envelobank`, `santander_przelew24`, `nest_przelew`, `mbank_mtransfer`, `inteligo`, `pbac_z_ipko`, `bnp_paribas`, `credit_agricole`, `toyota_bank`, `bank_pekao_sa`, `volkswagen_bank`, `bank_millennium`, `alior_bank`, or `boz`. Known values: alior_bank, bank_millennium, bank_nowy_bfg_sa, bank_pekao_sa, banki_spbdzielcze, blik, bnp_paribas, boz, citi_handlowy, credit_agricole, envelobank, etransfer_pocztowy24, getin_bank, ideabank, ing, inteligo, mbank_mtransfer, nest_przelew, noble_pay, pbac_z_ipko, plus_bank, santander_przelew24, tmobile_usbugi_bankowe, toyota_bank, velobank, volkswagen_bank |
bank (anyOf 2) | null | Alternative | |
reference | JSON | Optional | |
reference (anyOf 1) | string | Alternative | Unique reference for this Przelewy24 payment. Maximum length: 5000 |
reference (anyOf 2) | null | Alternative | |
verified_name | JSON | Optional | |
verified_name (anyOf 1) | string | Alternative | Owner's verified full name. Values are verified or provided by Przelewy24 directly (if supported) at the time of authorization or settlement. They cannot be set or mutated. Przelewy24 rarely provides this information so the attribute is usually empty. Maximum length: 5000 |
verified_name (anyOf 2) | null | Alternative |
Report a refund — response body — payment method details value ach credit transfer, ach debit, acss debit, affirm, afterpay clearpay, alipay, alma, amazon pay, au becs debit, bacs debit, bancontact, billie, billing details, bizum, blik, boleto, card, card present, cashapp, crypto, custom, customer balance, eps, fpx, giropay, grabpay, ideal, interac present, kakao pay, klarna, konbini, kr card, link, mb way, mobilepay, momo, multibanco, naver pay, nz bank account, oxxo, p24, pay by bank, payco, payment method, paynow, paypal, paypay, payto, pix, promptpay, revolut pay, samsung pay, satispay, scalapay, sepa debit, sequra, sofort, stripe account, sunbit, swish, twint, type, upi, us bank account, wechat, wechat pay, zip pix
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
bank_transaction_id | JSON | Optional | |
bank_transaction_id (anyOf 1) | string | Alternative | Unique transaction id generated by BCB Maximum length: 5000 |
bank_transaction_id (anyOf 2) | null | Alternative | |
mandate | string | Optional | ID of the multi use Mandate generated by the PaymentIntent or SetupIntent. Maximum length: 5000 |
Report a refund — response body — payment method details value ach credit transfer, ach debit, acss debit, affirm, afterpay clearpay, alipay, alma, amazon pay, au becs debit, bacs debit, bancontact, billie, billing details, bizum, blik, boleto, card, card present, cashapp, crypto, custom, customer balance, eps, fpx, giropay, grabpay, ideal, interac present, kakao pay, klarna, konbini, kr card, link, mb way, mobilepay, momo, multibanco, naver pay, nz bank account, oxxo, p24, pay by bank, payco, payment method, paynow, paypal, paypay, payto, pix, promptpay, revolut pay, samsung pay, satispay, scalapay, sepa debit, sequra, sofort, stripe account, sunbit, swish, twint, type, upi, us bank account, wechat, wechat pay, zip revolut pay
Report a refund — response body — payment method details value ach credit transfer, ach debit, acss debit, affirm, afterpay clearpay, alipay, alma, amazon pay, au becs debit, bacs debit, bancontact, billie, billing details, bizum, blik, boleto, card, card present, cashapp, crypto, custom, customer balance, eps, fpx, giropay, grabpay, ideal, interac present, kakao pay, klarna, konbini, kr card, link, mb way, mobilepay, momo, multibanco, naver pay, nz bank account, oxxo, p24, pay by bank, payco, payment method, paynow, paypal, paypay, payto, pix, promptpay, revolut pay, samsung pay, satispay, scalapay, sepa debit, sequra, sofort, stripe account, sunbit, swish, twint, type, upi, us bank account, wechat, wechat pay, zip revolut pay funding
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
card | Model | Optional | Expand Report a refund — response body — payment method details value ach credit transfer, ach debit, acss debit, affirm, afterpay clearpay, alipay, alma, amazon pay, au becs debit, bacs debit, bancontact, billie, billing details, bizum, blik, boleto, card, card present, cashapp, crypto, custom, customer balance, eps, fpx, giropay, grabpay, ideal, interac present, kakao pay, klarna, konbini, kr card, link, mb way, mobilepay, momo, multibanco, naver pay, nz bank account, oxxo, p24, pay by bank, payco, payment method, paynow, paypal, paypay, payto, pix, promptpay, revolut pay, samsung pay, satispay, scalapay, sepa debit, sequra, sofort, stripe account, sunbit, swish, twint, type, upi, us bank account, wechat, wechat pay, zip revolut pay funding card |
type | JSON | Optional | |
type (anyOf 1) | string | Alternative | Funding type of the underlying payment method. Known values: card |
type (anyOf 2) | null | Alternative |
Report a refund — response body — payment method details value ach credit transfer, ach debit, acss debit, affirm, afterpay clearpay, alipay, alma, amazon pay, au becs debit, bacs debit, bancontact, billie, billing details, bizum, blik, boleto, card, card present, cashapp, crypto, custom, customer balance, eps, fpx, giropay, grabpay, ideal, interac present, kakao pay, klarna, konbini, kr card, link, mb way, mobilepay, momo, multibanco, naver pay, nz bank account, oxxo, p24, pay by bank, payco, payment method, paynow, paypal, paypay, payto, pix, promptpay, revolut pay, samsung pay, satispay, scalapay, sepa debit, sequra, sofort, stripe account, sunbit, swish, twint, type, upi, us bank account, wechat, wechat pay, zip revolut pay funding card
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
brand | JSON | Optional | |
brand (anyOf 1) | string | Alternative | Card brand. Can be `amex`, `cartes_bancaires`, `diners`, `discover`, `eftpos_au`, `jcb`, `link`, `mastercard`, `unionpay`, `visa` or `unknown`. Maximum length: 5000 |
brand (anyOf 2) | null | Alternative | |
country | JSON | Optional | |
country (anyOf 1) | string | Alternative | 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. Maximum length: 5000 |
country (anyOf 2) | null | Alternative | |
exp_month | JSON | Optional | |
exp_month (anyOf 1) | JSON | Alternative | |
exp_month (anyOf 1) (anyOf 1) | integer | Alternative | Two-digit number representing the card's expiration month. |
exp_month (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
exp_month (anyOf 2) | null | Alternative | |
exp_year | JSON | Optional | |
exp_year (anyOf 1) | JSON | Alternative | |
exp_year (anyOf 1) (anyOf 1) | integer | Alternative | Four-digit number representing the card's expiration year. |
exp_year (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
exp_year (anyOf 2) | null | Alternative | |
funding | JSON | Optional | |
funding (anyOf 1) | string | Alternative | Card funding type. Can be `credit`, `debit`, `prepaid`, or `unknown`. Maximum length: 5000 |
funding (anyOf 2) | null | Alternative | |
last4 | JSON | Optional | |
last4 (anyOf 1) | string | Alternative | The last four digits of the card. Maximum length: 5000 |
last4 (anyOf 2) | null | Alternative |
Report a refund — response body — payment method details value ach credit transfer, ach debit, acss debit, affirm, afterpay clearpay, alipay, alma, amazon pay, au becs debit, bacs debit, bancontact, billie, billing details, bizum, blik, boleto, card, card present, cashapp, crypto, custom, customer balance, eps, fpx, giropay, grabpay, ideal, interac present, kakao pay, klarna, konbini, kr card, link, mb way, mobilepay, momo, multibanco, naver pay, nz bank account, oxxo, p24, pay by bank, payco, payment method, paynow, paypal, paypay, payto, pix, promptpay, revolut pay, samsung pay, satispay, scalapay, sepa debit, sequra, sofort, stripe account, sunbit, swish, twint, type, upi, us bank account, wechat, wechat pay, zip sofort
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
bank_code | JSON | Optional | |
bank_code (anyOf 1) | string | Alternative | Bank code of bank associated with the bank account. Maximum length: 5000 |
bank_code (anyOf 2) | null | Alternative | |
bank_name | JSON | Optional | |
bank_name (anyOf 1) | string | Alternative | Name of the bank associated with the bank account. Maximum length: 5000 |
bank_name (anyOf 2) | null | Alternative | |
bic | JSON | Optional | |
bic (anyOf 1) | string | Alternative | Bank Identifier Code of the bank associated with the bank account. Maximum length: 5000 |
bic (anyOf 2) | null | Alternative | |
country | JSON | Optional | |
country (anyOf 1) | string | Alternative | Two-letter ISO code representing the country the bank account is located in. Maximum length: 5000 |
country (anyOf 2) | null | Alternative | |
generated_sepa_debit | JSON | Optional | |
generated_sepa_debit (anyOf 1) | JSON | Alternative | The ID of the SEPA Direct Debit PaymentMethod which was generated by this Charge. |
generated_sepa_debit (anyOf 1) (anyOf 1) | string | Alternative | Maximum length: 5000 |
generated_sepa_debit (anyOf 1) (anyOf 2) | Model | Alternative | Expand Create a Payment Method — response body |
generated_sepa_debit (anyOf 2) | null | Alternative | |
generated_sepa_debit_mandate | JSON | Optional | |
generated_sepa_debit_mandate (anyOf 1) | JSON | Alternative | The mandate for the SEPA Direct Debit PaymentMethod which was generated by this Charge. |
generated_sepa_debit_mandate (anyOf 1) (anyOf 1) | string | Alternative | Maximum length: 5000 |
generated_sepa_debit_mandate (anyOf 1) (anyOf 2) | Model | Alternative | Expand Retrieve a Mandate — response body |
generated_sepa_debit_mandate (anyOf 2) | null | Alternative | |
iban_last4 | JSON | Optional | |
iban_last4 (anyOf 1) | string | Alternative | Last four characters of the IBAN. Maximum length: 5000 |
iban_last4 (anyOf 2) | null | Alternative | |
preferred_language | JSON | Optional | |
preferred_language (anyOf 1) | string | Alternative | Preferred language of the SOFORT authorization page that the customer is redirected to. Can be one of `de`, `en`, `es`, `fr`, `it`, `nl`, or `pl` Known values: de, en, es, fr, it, nl, pl |
preferred_language (anyOf 2) | null | Alternative | |
verified_name | JSON | Optional | |
verified_name (anyOf 1) | string | Alternative | Owner's verified full name. Values are verified or provided by SOFORT directly (if supported) at the time of authorization or settlement. They cannot be set or mutated. Maximum length: 5000 |
verified_name (anyOf 2) | null | Alternative |
Referenced models: Retrieve a Mandate — response body, Create a Payment Method — response body
Report a refund — response body — payment method details value ach credit transfer, ach debit, acss debit, affirm, afterpay clearpay, alipay, alma, amazon pay, au becs debit, bacs debit, bancontact, billie, billing details, bizum, blik, boleto, card, card present, cashapp, crypto, custom, customer balance, eps, fpx, giropay, grabpay, ideal, interac present, kakao pay, klarna, konbini, kr card, link, mb way, mobilepay, momo, multibanco, naver pay, nz bank account, oxxo, p24, pay by bank, payco, payment method, paynow, paypal, paypay, payto, pix, promptpay, revolut pay, samsung pay, satispay, scalapay, sepa debit, sequra, sofort, stripe account, sunbit, swish, twint, type, upi, us bank account, wechat, wechat pay, zip us bank account
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
account_holder_type | JSON | Optional | |
account_holder_type (anyOf 1) | string | Alternative | The type of entity that holds the account. This can be either 'individual' or 'company'. Known values: company, individual |
account_holder_type (anyOf 2) | null | Alternative | |
account_type | JSON | Optional | |
account_type (anyOf 1) | string | Alternative | The type of the bank account. This can be either 'checking' or 'savings'. Known values: checking, savings |
account_type (anyOf 2) | null | Alternative | |
bank_name | JSON | Optional | |
bank_name (anyOf 1) | string | Alternative | Name of the bank associated with the bank account. Maximum length: 5000 |
bank_name (anyOf 2) | null | Alternative | |
expected_debit_date | string | Optional | Estimated date to debit the customer's bank account. A date string in YYYY-MM-DD format. Maximum length: 5000 |
fingerprint | JSON | Optional | |
fingerprint (anyOf 1) | string | Alternative | Uniquely identifies this particular bank account. You can use this attribute to check whether two bank accounts are the same. Maximum length: 5000 |
fingerprint (anyOf 2) | null | Alternative | |
last4 | JSON | Optional | |
last4 (anyOf 1) | string | Alternative | Last four digits of the bank account number. Maximum length: 5000 |
last4 (anyOf 2) | null | Alternative | |
mandate | JSON | Optional | ID of the mandate used to make this payment. |
mandate (anyOf 1) | string | Alternative | Maximum length: 5000 |
mandate (anyOf 2) | Model | Alternative | Expand Retrieve a Mandate — response body |
payment_reference | JSON | Optional | |
payment_reference (anyOf 1) | string | Alternative | The ACH payment reference for this transaction. Maximum length: 5000 |
payment_reference (anyOf 2) | null | Alternative | |
routing_number | JSON | Optional | |
routing_number (anyOf 1) | string | Alternative | The routing number for the bank account. Maximum length: 5000 |
routing_number (anyOf 2) | null | Alternative |
Referenced models: Retrieve a Mandate — response body
Report a refund — response body — payment_method_details / value / ach_credit_transfer, ach_debit, acss_debit, affirm, afterpay_clearpay, alipay, alma, amazon_pay, au_becs_debit, bacs_debit, bancontact, billie, billing_details, bizum, blik, boleto, card, card_present, cashapp, crypto, custom, customer_balance, eps, fpx, giropay, grabpay, ideal, interac_present, kakao_pay, klarna, konbini, kr_card, link, mb_way, mobilepay, momo, multibanco, naver_pay, nz_bank_account, oxxo, p24, pay_by_bank, payco, payment_method, paynow, paypal, paypay, payto, pix, promptpay, revolut_pay, samsung_pay, satispay, scalapay, sepa_debit, sequra, sofort, stripe_account, sunbit, swish, twint, type, upi, us_bank_account, wechat, wechat_pay, zip / card / installments / Installment details for this payment / plan / plan / Installment plan selected for the payment / type: bonus, fixed count, revolving
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
count | JSON | Optional | |
count (anyOf 1) | JSON | Alternative | |
count (anyOf 1) (anyOf 1) | integer | Alternative | For `fixed_count` installment plans, this is the number of installment payments your customer will make to their credit card. |
count (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:\.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
count (anyOf 2) | null | Alternative | |
interval | JSON | Optional | |
interval (anyOf 1) | string | Alternative | For `fixed_count` installment plans, this is the interval between installment payments your customer will make to their credit card. One of `month`. Known values: month |
interval (anyOf 2) | null | Alternative | |
type | string | Required within parent | Type of installment plan, one of `fixed_count`, `revolving`, or `bonus`. Known values: bonus, fixed_count, revolving |
Report a refund — response body — processor details
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Processor information associated with this payment. |
custom | Model | Optional | Expand Report a refund — response body — processor details custom |
type | string | Required within parent | The processor used for this payment attempt. Known values: custom |
Referenced models: Report a refund — response body — processor details custom
Report a refund — response body — processor details custom
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Custom processors represent payment processors not modeled directly in the Stripe API. This resource consists of details about the custom processor used for this payment attempt. |
payment_reference | JSON | Optional | |
payment_reference (anyOf 1) | string | Alternative | An opaque string for manual reconciliation of this payment, for example a check number or a payment processor ID. Maximum length: 5000 |
payment_reference (anyOf 2) | null | Alternative |
Report a refund — response body — shipping details Shipping information for this payment address, name, phone
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | The customer's shipping information associated with this payment. |
address | Model | Required within parent | Expand Report a refund — response body — shipping details Shipping information for this payment address, name, phone address |
name | JSON | Optional | |
name (anyOf 1) | string | Alternative | The shipping recipient's name. Maximum length: 5000 |
name (anyOf 2) | null | Alternative | |
phone | JSON | Optional | |
phone (anyOf 1) | string | Alternative | The shipping recipient's phone number. Maximum length: 5000 |
phone (anyOf 2) | null | Alternative |
Referenced models: Report a refund — response body — shipping details Shipping information for this payment address, name, phone address
Report a refund — response body — shipping details Shipping information for this payment address, name, phone address
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | A representation of a physical address. |
city | JSON | Optional | |
city (anyOf 1) | string | Alternative | City, district, suburb, town, or village. Maximum length: 5000 |
city (anyOf 2) | null | Alternative | |
country | JSON | Optional | |
country (anyOf 1) | string | Alternative | Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)). Maximum length: 5000 |
country (anyOf 2) | null | Alternative | |
line1 | JSON | Optional | |
line1 (anyOf 1) | string | Alternative | Address line 1, such as the street, PO Box, or company name. Maximum length: 5000 |
line1 (anyOf 2) | null | Alternative | |
line2 | JSON | Optional | |
line2 (anyOf 1) | string | Alternative | Address line 2, such as the apartment, suite, unit, or building. Maximum length: 5000 |
line2 (anyOf 2) | null | Alternative | |
postal_code | JSON | Optional | |
postal_code (anyOf 1) | string | Alternative | ZIP or postal code. Maximum length: 5000 |
postal_code (anyOf 2) | null | Alternative | |
state | JSON | Optional | |
state (anyOf 1) | string | Alternative | State, county, province, or region ([ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2)). Maximum length: 5000 |
state (anyOf 2) | null | Alternative |