View Source ExOAPI.Stripe.Schemas.Customer (exoapi_stripe v0.1.4)

description: This object represents a customer of your business. It lets you create recurring charges and track payments that belong to the same customer.

Related guide: Save a card during payment.

:address :: ExOAPI.Stripe.Schemas.Address

The customer's address.

:balance :: ExOAPI.Stripe.Schemas.Balance

Current balance, if any, being stored on the customer. If negative, the customer has credit to apply to their next invoice. If positive, the customer has an amount owed that will be added to their 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 as invoices are finalized.

:created :: :integer

Time at which the object was created. Measured in seconds since the Unix epoch.

:currency :: :string

Three-letter ISO code for the currency the customer can be charged in for recurring billing purposes.

:default_source :: ExOAPI.Stripe.Schemas.Source | ExOAPI.Stripe.Schemas.Card | ExOAPI.Stripe.Schemas.BitcoinReceiver | ExOAPI.Stripe.Schemas.BankAccount | ExOAPI.Stripe.Schemas.AlipayAccount | :string

ID of the default payment source for the customer.

If you are using payment methods created via the PaymentMethods API, see the invoice_settings.default_payment_method field instead.

:delinquent :: :boolean

When the customer's latest invoice is billed by charging automatically, delinquent is true if the invoice's latest charge failed. When the customer's latest invoice is billed by sending an invoice, delinquent is true if the invoice isn't paid by its due date.

If an invoice is marked uncollectible by dunning, delinquent doesn't get reset to false.

:description :: :string

An arbitrary string attached to the object. Often useful for displaying to users.

:discount :: ExOAPI.Stripe.Schemas.Discount

Describes the current discount active on the customer, if there is one.

:email :: :string

The customer's email address.

:id :: :string

Unique identifier for the object.

:invoice_prefix :: :string

The prefix for the customer used to generate unique invoice numbers.

:invoice_settings :: ExOAPI.Stripe.Schemas.InvoiceSettingCustomerSetting

:livemode :: :boolean

Has the value true if the object exists in live mode or the value false if the object exists in test mode.

:metadata :: :map

Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

:name :: :string

The customer's full name or business name.

:next_invoice_sequence :: :integer

The suffix of the customer's next invoice number, e.g., 0001.

:object :: :string

String representing the object's type. Objects of the same type share the same value.

:phone :: :string

The customer's phone number.

::preferred_locales :: :string

:shipping :: ExOAPI.Stripe.Schemas.Shipping

Mailing and shipping address for the customer. Appears on invoices emailed to this customer.

::data :: ExOAPI.Stripe.Schemas.Source | ExOAPI.Stripe.Schemas.Card | ExOAPI.Stripe.Schemas.BitcoinReceiver | ExOAPI.Stripe.Schemas.BankAccount | ExOAPI.Stripe.Schemas.AlipayAccount

:has_more :: :boolean

True if this list has another page of items after this one that can be fetched.

:object :: :string

String representing the object's type. Objects of the same type share the same value. Always has the value list.

:url :: :string

The URL where this list can be accessed.

::data :: ExOAPI.Stripe.Schemas.Subscription

:has_more :: :boolean

True if this list has another page of items after this one that can be fetched.

:object :: :string

String representing the object's type. Objects of the same type share the same value. Always has the value list.

:url :: :string

The URL where this list can be accessed.

:tax :: ExOAPI.Stripe.Schemas.CustomerTax

:tax_exempt :: :string

Describes the customer's tax exemption status. One of none, exempt, or reverse. When set to reverse, invoice and receipt PDFs include the text "Reverse charge".

::data :: ExOAPI.Stripe.Schemas.TaxId

:has_more :: :boolean

True if this list has another page of items after this one that can be fetched.

:object :: :string

String representing the object's type. Objects of the same type share the same value. Always has the value list.

:url :: :string

The URL where this list can be accessed.

:test_clock :: ExOAPI.Stripe.Schemas.TestHelpers_testClock | :string

ID of the test clock this customer belongs to.

Link to this section Summary

Link to this section Types

@type params() :: map()
@type t() :: %ExOAPI.Stripe.Schemas.Customer{
  address: ExOAPI.EctoTypes.AnyOf.t() | nil,
  balance: integer() | nil,
  created: integer() | nil,
  currency: String.t() | nil,
  default_source: ExOAPI.EctoTypes.AnyOf.t() | nil,
  delinquent: boolean() | nil,
  description: String.t() | nil,
  discount: ExOAPI.EctoTypes.AnyOf.t() | nil,
  email: String.t() | nil,
  id: String.t() | nil,
  invoice_prefix: String.t() | nil,
  invoice_settings:
    ExOAPI.Stripe.Schemas.InvoiceSettingCustomerSetting.t() | nil,
  livemode: boolean() | nil,
  metadata: map() | nil,
  name: String.t() | nil,
  next_invoice_sequence: integer() | nil,
  object: :customer | nil,
  phone: String.t() | nil,
  preferred_locales: [String.t()] | nil,
  shipping: ExOAPI.EctoTypes.AnyOf.t() | nil,
  sources: map() | nil,
  subscriptions: map() | nil,
  tax: ExOAPI.Stripe.Schemas.CustomerTax.t() | nil,
  tax_exempt: (:reverse | :none | :exempt) | nil,
  tax_ids: map() | nil,
  test_clock: ExOAPI.EctoTypes.AnyOf.t() | nil
}

Link to this section Functions

Link to this function

changeset(struct \\ %__MODULE__{}, params)

View Source
@spec changeset(t(), params()) :: Ecto.Changeset.t()