Packages

Complete Stripe SDK for Elixir with parity to the official Ruby SDK. V1+V2 coverage (193 services, 320 resource structs, 525 documented params). Per-event modules, Finch HTTP/2, RustyJSON, automatic retries, OAuth, webhooks, telemetry, per-client config, streaming pagination.

Current section

Files

Jump to
tiger_stripe lib stripe resources payment_method.ex
Raw

lib/stripe/resources/payment_method.ex

# File generated from our OpenAPI spec
defmodule Stripe.Resources.PaymentMethod do
@moduledoc """
PaymentMethod
PaymentMethod objects represent your customer's payment instruments.
You can use them with [PaymentIntents](https://docs.stripe.com/payments/payment-intents) to collect payments or save them to
Customer objects to store instrument details for future payments.
Related guides: [Payment Methods](https://docs.stripe.com/payments/payment-methods) and [More Payment Scenarios](https://docs.stripe.com/payments/more-payment-scenarios).
"""
@typedoc """
* `acss_debit` - Expandable.
* `affirm` - Expandable.
* `afterpay_clearpay` - Expandable.
* `alipay` - Expandable.
* `allow_redisplay` - This 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”. Possible values: `always`, `limited`, `unspecified`.
* `alma` - Expandable.
* `amazon_pay` - Expandable.
* `au_becs_debit` - Expandable.
* `bacs_debit` - Expandable.
* `bancontact` - Expandable.
* `billie` - Expandable.
* `billing_details` - Expandable.
* `blik` - Expandable.
* `boleto` - Expandable.
* `card` - Expandable.
* `card_present` - Expandable.
* `cashapp` - Expandable.
* `created` - Time at which the object was created. Measured in seconds since the Unix epoch. Format: Unix timestamp.
* `crypto` - Expandable.
* `custom` - Expandable.
* `customer` - The ID of the Customer to which this PaymentMethod is saved. This will not be set when the PaymentMethod has not been saved to a Customer. Nullable. Expandable.
* `customer_account` - Max length: 5000. Nullable.
* `customer_balance` - Expandable.
* `eps` - Expandable.
* `fpx` - Expandable.
* `giropay` - Expandable.
* `grabpay` - Expandable.
* `id` - Unique identifier for the object. Max length: 5000.
* `ideal` - Expandable.
* `interac_present` - Expandable.
* `kakao_pay` - Expandable.
* `klarna` - Expandable.
* `konbini` - Expandable.
* `kr_card` - Expandable.
* `link` - Expandable.
* `livemode` - Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
* `mb_way` - Expandable.
* `metadata` - Set 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. Nullable.
* `mobilepay` - Expandable.
* `multibanco` - Expandable.
* `naver_pay` - Expandable.
* `nz_bank_account` - Expandable.
* `object` - String representing the object's type. Objects of the same type share the same value. Possible values: `payment_method`.
* `oxxo` - Expandable.
* `p24` - Expandable.
* `pay_by_bank` - Expandable.
* `payco` - Expandable.
* `paynow` - Expandable.
* `paypal` - Expandable.
* `payto` - Expandable.
* `pix` - Expandable.
* `promptpay` - Expandable.
* `radar_options` - Expandable.
* `revolut_pay` - Expandable.
* `samsung_pay` - Expandable.
* `satispay` - Expandable.
* `sepa_debit` - Expandable.
* `sofort` - Expandable.
* `swish` - Expandable.
* `twint` - Expandable.
* `type` - The type of the PaymentMethod. An additional hash is included on the PaymentMethod with a name matching this value. It contains additional information specific to the PaymentMethod type. Possible values: `acss_debit`, `affirm`, `afterpay_clearpay`, `alipay`, `alma`, `amazon_pay`, `au_becs_debit`, `bacs_debit`, `bancontact`, `billie`, `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`, `multibanco`, `naver_pay`, `nz_bank_account`, `oxxo`, `p24`, `pay_by_bank`, `payco`, `paynow`, `paypal`, `payto`, `pix`, `promptpay`, `revolut_pay`, `samsung_pay`, `satispay`, `sepa_debit`, `sofort`, `swish`, `twint`, `us_bank_account`, `wechat_pay`, `zip`.
* `us_bank_account` - Expandable.
* `wechat_pay` - Expandable.
* `zip` - Expandable.
"""
@type t :: %__MODULE__{
acss_debit: map() | nil,
affirm: map() | nil,
afterpay_clearpay: map() | nil,
alipay: map() | nil,
allow_redisplay: String.t() | nil,
alma: map() | nil,
amazon_pay: map() | nil,
au_becs_debit: map() | nil,
bacs_debit: map() | nil,
bancontact: map() | nil,
billie: map() | nil,
billing_details: map(),
blik: map() | nil,
boleto: map() | nil,
card: map() | nil,
card_present: map() | nil,
cashapp: map() | nil,
created: integer(),
crypto: String.t() | map() | nil,
custom: String.t() | map() | nil,
customer: String.t() | map(),
customer_account: String.t(),
customer_balance: map() | nil,
eps: map() | nil,
fpx: map() | nil,
giropay: map() | nil,
grabpay: map() | nil,
id: String.t(),
ideal: map() | nil,
interac_present: map() | nil,
kakao_pay: String.t() | map() | nil,
klarna: map() | nil,
konbini: map() | nil,
kr_card: String.t() | map() | nil,
link: map() | nil,
livemode: boolean(),
mb_way: String.t() | map() | nil,
metadata: map(),
mobilepay: map() | nil,
multibanco: map() | nil,
naver_pay: String.t() | map() | nil,
nz_bank_account: map() | nil,
object: String.t(),
oxxo: map() | nil,
p24: map() | nil,
pay_by_bank: map() | nil,
payco: String.t() | map() | nil,
paynow: map() | nil,
paypal: map() | nil,
payto: map() | nil,
pix: map() | nil,
promptpay: map() | nil,
radar_options: map() | nil,
revolut_pay: map() | nil,
samsung_pay: String.t() | map() | nil,
satispay: map() | nil,
sepa_debit: map() | nil,
sofort: map() | nil,
swish: map() | nil,
twint: map() | nil,
type: String.t(),
us_bank_account: map() | nil,
wechat_pay: map() | nil,
zip: map() | nil
}
defstruct [
:acss_debit,
:affirm,
:afterpay_clearpay,
:alipay,
:allow_redisplay,
:alma,
:amazon_pay,
:au_becs_debit,
:bacs_debit,
:bancontact,
:billie,
:billing_details,
:blik,
:boleto,
:card,
:card_present,
:cashapp,
:created,
:crypto,
:custom,
:customer,
:customer_account,
:customer_balance,
:eps,
:fpx,
:giropay,
:grabpay,
:id,
:ideal,
:interac_present,
:kakao_pay,
:klarna,
:konbini,
:kr_card,
:link,
:livemode,
:mb_way,
:metadata,
:mobilepay,
:multibanco,
:naver_pay,
:nz_bank_account,
:object,
:oxxo,
:p24,
:pay_by_bank,
:payco,
:paynow,
:paypal,
:payto,
:pix,
:promptpay,
:radar_options,
:revolut_pay,
:samsung_pay,
:satispay,
:sepa_debit,
:sofort,
:swish,
:twint,
:type,
:us_bank_account,
:wechat_pay,
:zip
]
@object_name "payment_method"
def object_name, do: @object_name
def expandable_fields,
do: [
"acss_debit",
"affirm",
"afterpay_clearpay",
"alipay",
"alma",
"amazon_pay",
"au_becs_debit",
"bacs_debit",
"bancontact",
"billie",
"billing_details",
"blik",
"boleto",
"card",
"card_present",
"cashapp",
"crypto",
"custom",
"customer",
"customer_balance",
"eps",
"fpx",
"giropay",
"grabpay",
"ideal",
"interac_present",
"kakao_pay",
"klarna",
"konbini",
"kr_card",
"link",
"mb_way",
"mobilepay",
"multibanco",
"naver_pay",
"nz_bank_account",
"oxxo",
"p24",
"pay_by_bank",
"payco",
"paynow",
"paypal",
"payto",
"pix",
"promptpay",
"radar_options",
"revolut_pay",
"samsung_pay",
"satispay",
"sepa_debit",
"sofort",
"swish",
"twint",
"us_bank_account",
"wechat_pay",
"zip"
]
end