Customers
Customer objects let you create a persistent customer profile that you can associate with transactions, payment methods, subscriptions, and invoices.
Using Customers gives you a consolidated view of each customer’s activity in your dashboard, and lets you automatically send receipts without having to specify the email on every payment.
You can create PaymentIntents without a Customer (anonymous payments), but associating a Customer enriches your data: full history, saved payment methods, automatic receipts, and improved fraud detection.
Endpoints
| Méthode | Endpoint | Description |
|---|---|---|
| POST | /customers/ | Create a new Customer |
| GET | /customers/ | List Customers (paginated, filterable) |
| GET | /customers/{id}/ | Retrieve a Customer by its ID |
| PATCH | /customers/{id}/ | Update a Customer's data |
| DELETE | /customers/{id}/ | Permanently delete a Customer |
| GET | /customers/{id}/transactions/ | List the Customer's transactions |
| GET | /customers/{id}/payment-methods/ | List the Customer's payment methods |
Object schema
Create a Customer
Creates a new customer profile associated with your App. The email is the Customer’s unique identifier — two customers of the same App cannot share the same email.
emailRequisUnique email address of the Customer within your App. Used for automatically sending receipts and as a deduplication key.
If you attempt to create a Customer with an email that already exists for the same
App, the API returns a 409 Conflict error — it does not
create a duplicate. Use PATCH to update an existing Customer.
nameRequisFull name of the Customer. The backend automatically splits this field into firstname and lastname (split
on the first space). The returned object exposes both fields separately.
For compound names (e.g. “Jean-Claude” or “Madeleine Nguema Obame”), the split
happens on the first space. “Jean-Claude Ondo” → firstname: Jean-Claude, lastname: Ondo.
phoneOptionnelPhone number in international E.164 format. Required for Mobile Money payments associated with this Customer.
En savoir plus
The E.164 format starts with + followed by the country
code and the local number without spaces or dashes. Valid examples: +24177000001 (Gabon), +237612345678 (Cameroon). Local formats (e.g. 077 000 001)
are rejected.
metadataOptionnelKey/value dictionary for storing your own identifiers — user ID from your database, contract number, customer segment, etc.
En savoir plus
Metadata is returned in all webhooks related to this Customer. Max 50 keys, 500 characters per value. Not indexed — cannot be used as a search criterion via the API.
Create a Customer
List Customers
searchOptionnelText search on the Customer’s email, first name, and last name. The search is partial (contains) and case-insensitive.
En savoir plus
Example: search=madeleine returns all Customers whose
email, first name, or last name contains “madeleine”.
statusOptionnelFilter by status. Values: active, inactive, blocked.
orderingOptionnelSort order of results. Available fields: created_at, email, total_spent.
pageOptionnelPage number (offset pagination, starts at 1).
page_sizeOptionnelResults per page. Minimum: 1. Maximum: 100.
Update a Customer
Modifies one or more fields of an existing Customer. All fields are optional — only the fields provided are updated.
emailOptionnelNew email. Must be unique among the App’s Customers. Returns 409 if already in use.
nameOptionnelNew full name. Re-split into firstname / lastname on the backend.
phoneOptionnelNew phone number in E.164 format. Pass null to remove it.
metadataOptionnelMerges metadata. Existing keys not mentioned are kept. Pass a key with value null to remove it.
En savoir plus
Example: if the Customer has { "a": "1", "b": "2" } and
you send { "b": null, "c": "3" }, the result will be { "a": "1", "c": "3" }.
Delete a Customer
Permanently deletes a Customer (hard delete). This action is irreversible.
Deleting a Customer is permanent. Their past transactions are retained in the logs for OHADA legal compliance reasons, but the customer profile itself is destroyed. In-progress PaymentIntents associated with this Customer remain valid but lose the Customer reference.
Search Customers
Update a Customer
Delete a Customer