Skip to main content
POST
Create a customer

Authorizations

Authorization
string
header
required

Bearer token authentication. Pass your API key as Authorization: Bearer sk_.... See Authentication for keys, scopes, and sandbox vs production.

Body

application/json
email
string<email>
required

The customer's email address. Used to identify the customer and send receipts.

Example:

"jane@example.com"

name
string | null

The customer's full name. Derived from first_name and last_name when those are provided instead.

Maximum string length: 511
Example:

"Jane Doe"

phone_number
string | null

The customer's phone number in E.164 format, e.g. +2348012345678.

Example:

"+2348012345678"

metadata
object

Your own key-value data attached to the customer, returned unchanged.

Example:
billing_address
object | null

The customer's billing address. Optional on create. line1 and country are required whenever an address is supplied; country must be a real ISO-3166-1 alpha-2 code. An all-empty object is rejected; omit the field or send null instead.

Response

Customer created

customer_id
string
required

Unique identifier for the customer, prefixed with cust_.

Example:

"cust_1a2b3c4d5e6f"

email
string<email>
required

The customer's email address.

Example:

"jane@example.com"

metadata
object
required

Your own key-value data attached to the customer.

Example:
created_at
string<date-time>
required

ISO 8601 timestamp when the customer was created.

Example:

"2026-01-24T12:00:00.000Z"

updated_at
string<date-time>
required

ISO 8601 timestamp when the customer was last updated.

Example:

"2026-01-24T12:00:00.000Z"

name
string | null

The customer's full name. null when not set.

Example:

"Jane Doe"

phone_number
string | null

The customer's phone number in E.164 format, e.g. +2348012345678.

Example:

"+2348012345678"

billing_address
object | null

The customer's billing address, or null if none is set.