Pre-1.0 · one maintainer · Stripe and cards only · no SDKs (client libraries) yet · no production users yet. Docs describe v0.9.1 (29 Oct 2026) · What’s new →
The customer object
Fields
Section titled “Fields”| Field | Type | Always present | What it means |
|---|---|---|---|
id |
string | Yes | |
external_id |
string | Yes | |
display_name |
string | Yes | |
email |
string | No | |
additional_emails |
array of string | No | CC’d on billing documents and billing-state emails (invoice, receipt, dunning, payment failed, credit note) — never on credential-bearing emails (setup links, resets, invites). Normalized to lowercase bare addresses, deduped, capped at 10, never equal to the primary email. Stored encrypted at rest. |
status |
enum | Yes | One of: active, archived. |
created_at |
string (date-time) | Yes | |
test_clock_id |
string | No | Test clock this customer is pinned to (test mode only). When set, the customer — and any invoices/subscriptions created for it — run on the clock’s simulated time. Empty for live customers. The dashboard reads it to show the “test clock” badge + simulated-time banner on the customer and its invoices. |
tenant_id |
string | No | |
email_status |
enum | No | Deliverability of email, learned from bounce and complaint reports. One of: unknown, ok, bounced, complained. |
email_last_bounced_at |
string (date-time) | No | |
email_bounce_reason |
string | No | |
dunning_policy_id |
string | No | Assigned dunning policy; absent means the tenant default. |
stripe_customer_id |
string | No | The Stripe customer. Absent until the first payment-method action. |
livemode |
boolean | No | |
updated_at |
string (date-time) | Yes |