POST
/v1/customersCreate a customer
Creates a new customer record. Supply customer identity, contact, billing, balance, payment, and invoice settings as needed for the customer account. The response returns the created customer object with its generated identifier and current configuration.
- RetriesRetries up to 2×, 500ms backoff, 30s timeout.
- IdempotentThe SDK sends
Idempotency-Key, so a retried request is only applied once.
Optional form-encoded customer attributes, including contact details, balances, payment settings, invoice settings, metadata, and response expansion.
addressobjectoptional
The customer's address. Learn about [country-specific requirements for calculating tax](https://docs.stripe.com/invoicing/taxes?dashboard-or-api=dashboard#set-up-customer).
balanceintegeroptional
An integer amount in cents (or local equivalent) that represents the customer's current balance, which affect the customer's future invoices. A negative amount represents a credit that decreases the amount due on an invoice; a positive amount increases the amount due on an invoice.
business_namestringoptional
The customer's business name. This may be up to *150 characters*.
cash_balanceobjectoptional
Balance information and default balance settings for this customer.
descriptionstringoptional
An arbitrary string that you can attach to a customer object. It is displayed alongside the customer in the dashboard.
emailstringoptional
Customer's email address. It's displayed alongside the customer in your dashboard and can be useful for searching and tracking. This may be up to *512 characters*.
expandarray<string>optional
Specifies which fields in the response should be expanded.
individual_namestringoptional
The customer's full name. This may be up to *150 characters*.
invoice_prefixstringoptional
The prefix for the customer used to generate unique invoice numbers. Must be 3–12 uppercase letters or numbers.
invoice_settingsobjectoptional
Default invoice settings for this customer.
metadataobjectoptional
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`.
namestringoptional
The customer's full name or business name.
next_invoice_sequenceintegeroptional
The sequence to be used on the customer's next invoice. Defaults to 1.
payment_methodstringoptional
The payment method to use for the customer.
phonestringoptional
The customer's phone number.
preferred_localesarray<string>optional
Customer's preferred languages, ordered by preference.
shippingobjectoptional
The customer's shipping information. Appears on invoices emailed to this customer.
sourcestringoptional
taxobjectoptional
Tax details about the customer.
tax_exemptstringoptional
The customer's tax exemption. One of `none`, `exempt`, or `reverse`.
tax_id_dataarray<DataParams>optional
The customer's tax IDs.
test_clockstringoptional
ID of the test clock to attach to the customer.
200Returns the created customer object, including its generated identifier, creation time, livemode, billing configuration, contact information, and payment settings.
addressobjectoptional
The customer's address.
balanceintegeroptional
The current balance, if any, that's stored on the customer in their default currency. If negative, the customer has credit to apply to their next invoice. If positive, the customer has an amount owed that's added to their next invoice. The balance only considers amounts that Stripe hasn't successfully applied to any invoice. It doesn't reflect unpaid invoices. This balance is only taken into account after invoices finalize. For multi-currency balances, see [invoice_credit_balance](https://docs.stripe.com/api/customers/object#customer_object-invoice_credit_balance).
business_namestringoptional
The customer's business name.
cash_balanceobjectoptional
The current funds being held by Stripe on behalf of the customer. You can apply these funds towards payment intents when the source is "cash_balance". The `settings[reconciliation_mode]` field describes if these funds apply to these payment intents manually or automatically.
createdintegerrequired
Time at which the object was created. Measured in seconds since the Unix epoch.
currencystringoptional
Three-letter [ISO code for the currency](https://stripe.com/docs/currencies) the customer can be charged in for recurring billing purposes.
customer_accountstringoptional
The ID of an Account representing a customer. You can use this ID with any v1 API that accepts a customer_account parameter.
default_sourcestringoptional
ID of the default payment source for the customer.
If you use payment methods created through the PaymentMethods API, see the [invoice_settings.default_payment_method](https://docs.stripe.com/api/customers/object#customer_object-invoice_settings-default_payment_method) field instead.
delinquentbooleanoptional
Tracks the most recent state change on any invoice belonging to the customer. Paying an invoice or marking it uncollectible via the API will set this field to false. An automatic payment failure or passing the `invoice.due_date` will set this field to `true`.
If an invoice becomes uncollectible by [dunning](https://docs.stripe.com/billing/automatic-collection), `delinquent` doesn't reset to `false`.
If you care whether the customer has paid their most recent subscription invoice, use `subscription.status` instead. Paying or marking uncollectible any customer invoice regardless of whether it is the latest invoice for a subscription will always set this field to `false`.
descriptionstringoptional
An arbitrary string attached to the object. Often useful for displaying to users.
discountobjectoptional
Describes the current discount active on the customer, if there is one.
emailstringoptional
The customer's email address.
idstringrequired
Unique identifier for the object.
individual_namestringoptional
The customer's individual name.
invoice_credit_balanceobjectoptional
The current multi-currency balances, if any, that's stored on the customer. If positive in a currency, the customer has a credit to apply to their next invoice denominated in that currency. If negative, the customer has an amount owed that's added to their next invoice denominated in that currency. These balances don't apply to unpaid invoices. They solely track amounts that Stripe hasn't successfully applied to any invoice. Stripe only applies a balance in a specific currency to an invoice after that invoice (which is in the same currency) finalizes.
invoice_prefixstringoptional
The prefix for the customer used to generate unique invoice numbers.
invoice_settingsobjectoptional
livemodebooleanrequired
If the object exists in live mode, the value is `true`. If the object exists in test mode, the value is `false`.
metadataobjectoptional
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.
namestringoptional
The customer's full name or business name.
next_invoice_sequenceintegeroptional
The suffix of the customer's next invoice number (for example, 0001). When the account uses account level sequencing, this parameter is ignored in API requests and the field omitted in API responses.
objectstringrequired
String representing the object's type. Objects of the same type share the same value.
phonestringoptional
The customer's phone number.
preferred_localesarray<string>optional
The customer's preferred locales (languages), ordered by preference.
shippingobjectoptional
Mailing and shipping address for the customer. Appears on invoices emailed to this customer.
sourcesobjectoptional
The customer's payment sources, if any.
subscriptionsobjectoptional
The customer's current subscriptions, if any.
taxobjectoptional
tax_exemptstringoptional
Describes the customer's tax exemption status, which is `none`, `exempt`, or `reverse`. When set to `reverse`, invoice and receipt PDFs include the following text: **"Reverse charge"**.
tax_idsobjectoptional
The customer's tax IDs.
test_clockstringoptional
ID of the test clock that this customer belongs to.
defaultError response.
errorobjectrequired
Error handling
email must be no more than 512 characters, name no more than 256 characters, and phone no more than 20 characters. business_name and individual_name accept at most 150 characters, while invoice_prefix must contain 3 to 12 uppercase letters or numbers; next_invoice_sequence defaults to 1 when omitted.