Create a customer
Creates a new customer record. At least one contact method (email or phone) is required. Customers are environment-specific (test vs live database).
Creates a new customer record.
At least one contact method (email or phone) is required. Customers are environment-specific (test vs live database).
Authorization
api-key API key for merchant integrations. Send as Authorization: Bearer <your key>.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/customers" \ -H "Content-Type: application/json" \ -d '{}'{ "id": "cus_abc123xyz", "object": "customer", "type": "registered", "createdAt": "string", "updatedAt": "string", "name": "string", "email": "string", "phone": "string", "address": { "line1": "string", "line2": "string", "city": "string", "state": "string", "postalCode": "string", "country": "string", "property1": null, "property2": null }, "guestFingerprint": { "emails": [ "string" ], "phones": [ "string" ], "cardFingerprints": [ {} ] }, "metadata": { "property1": null, "property2": null }, "merchantId": "string"}List customers GET
Lists customers with search and pagination. Returns only essential fields: id, createdAt, name, phone, email, and latestPaymentMethod. Search supports customer ID, name, email, or phone (supports comma-separated terms).
Get customer by ID GET
Retrieves customer lifecycle information (id, type, name, email, phone, address, metadata). Response shape is identical to the `customer.*` webhook payload. For transaction counts + payment methods, call `GET /customers/:id/stats`.