Customers

Customers are the identity layer referenced by invoices and payment links.

Endpoints

MethodPathPurpose
POST/organization/customersCreate a customer
GET/organization/customersList customers
GET/organization/customers/:idFetch a customer
PATCH/organization/customers/:idUpdate a customer
DELETE/organization/customers/:idDelete a customer

Create a customer

curl --request POST \
  --url $baseUrl/organization/customers \
  --header 'x-api-key: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "name": "Biffco Enterprise",
    "email": "[email protected]",
    "phoneNumber": "+2348000000000",
    "address": "string",
    "metadata": {}
  }'
FieldRequiredDescription
nameYesCustomer name
emailYesMust be unique per organization
phoneNumberNo
addressNo
metadataNoArbitrary key-value data

Response:

{
  "success": true,
  "statusCode": 201,
  "message": "Customer created successfully",
  "data": {
    "id": "cus_abc123",
    "name": "Acme Corp",
    "email": "[email protected]",
    "phone": "+2348000000000",
    "createdAt": "2026-01-01T00:00:00Z"
  }
}

A 409 response means a customer with that email already exists — look them up instead of creating a duplicate.

Best practices

  • Deduplicate by email where your business rules allow it
  • Keep customer profile data current
  • Don't store payment credentials in the customer record

Call this next

  • Invoices — attach a customer to a receivable


Did this page help you?