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
Current section
Files
lib/stripe/params/payment_method_update_params.ex
# File generated from our OpenAPI spec
defmodule Stripe.Params.PaymentMethodUpdateParams do
@moduledoc "Parameters for payment method update."
@typedoc """
* `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`.
* `billing_details` - Billing information associated with the PaymentMethod that may be used or required by particular types of payment methods.
* `card` - If this is a `card` PaymentMethod, this hash contains the user's card details.
* `expand` - Specifies which fields in the response should be expanded.
* `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. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
* `payto` - If this is a `payto` PaymentMethod, this hash contains details about the PayTo payment method.
* `us_bank_account` - If this is an `us_bank_account` PaymentMethod, this hash contains details about the US bank account payment method.
"""
@type t :: %__MODULE__{
allow_redisplay: String.t() | nil,
billing_details: map() | nil,
card: map() | nil,
expand: [String.t()] | nil,
metadata: map() | nil,
payto: map() | nil,
us_bank_account: map() | nil
}
defstruct [
:allow_redisplay,
:billing_details,
:card,
:expand,
:metadata,
:payto,
:us_bank_account
]
defmodule BillingDetails do
@moduledoc "Nested parameters."
@typedoc """
* `address` - Billing address.
* `email` - Email address.
* `name` - Full name.
* `phone` - Billing phone number (including extension).
* `tax_id` - Taxpayer identification number. Used only for transactions between LATAM buyers and non-LATAM sellers. Max length: 5000.
"""
@type t :: %__MODULE__{
address: map() | nil,
email: map() | nil,
name: map() | nil,
phone: map() | nil,
tax_id: String.t() | nil
}
defstruct [:address, :email, :name, :phone, :tax_id]
end
defmodule Card do
@moduledoc "Nested parameters."
@typedoc """
* `exp_month` - Two-digit number representing the card's expiration month.
* `exp_year` - Four-digit number representing the card's expiration year.
* `networks` - Contains information about card networks used to process the payment.
"""
@type t :: %__MODULE__{
exp_month: integer() | nil,
exp_year: integer() | nil,
networks: map() | nil
}
defstruct [:exp_month, :exp_year, :networks]
end
defmodule Payto do
@moduledoc "Nested parameters."
@typedoc """
* `account_number` - The account number for the bank account. Max length: 5000.
* `bsb_number` - Bank-State-Branch number of the bank account. Max length: 5000.
* `pay_id` - The PayID alias for the bank account. Max length: 5000.
"""
@type t :: %__MODULE__{
account_number: String.t() | nil,
bsb_number: String.t() | nil,
pay_id: String.t() | nil
}
defstruct [:account_number, :bsb_number, :pay_id]
end
defmodule UsBankAccount do
@moduledoc "Nested parameters."
@typedoc """
* `account_holder_type` - Bank account holder type. Possible values: `company`, `individual`.
* `account_type` - Bank account type. Possible values: `checking`, `savings`.
"""
@type t :: %__MODULE__{
account_holder_type: String.t() | nil,
account_type: String.t() | nil
}
defstruct [:account_holder_type, :account_type]
end
end