Customers represent the individuals and businesses you bill through Paisr. Each customer record is scoped to your account and stores the billing identity used across invoices, subscriptions, and payments. Customer records are isolated — they are not shared between Paisr accounts.
Creating a Customer
Navigate to Customers in your dashboard and click Create Customer, or use the Customers API.
curl -X POST "https://api.live.paisr.tech/v2/customers" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0" \
-H "Content-Type: application/json" \
-d '{
"name": "Jane Smith",
"email": "jane@example.com",
"phone": "+597-8123456",
"default_currency": "SRD",
"billing_details": {
"line_1": "Example Street 10",
"city": "Paramaribo",
"country": "SR"
}
}'Only email is required. All other fields are optional and can be added or updated later.
The response includes the customer ID (cus_...) and a session.url link to their self-service Customer Portal.
Managing Customer Details
The following information can be updated on any customer at any time:
Details
Core contact information: name, email, phone number, and default currency. The default currency is used as the billing currency when creating invoices without specifying one.
Billing Details
The customer's billing address. When a customer pays through the Hosted Checkout, their billing details are automatically pre-filled from this record.
| Field | Required |
|---|---|
line_1 | Yes |
line_2 | No |
city | Yes |
state | No |
zip_code | No |
country | Yes (ISO 3166-1 alpha-2) |
Shipping Details
The customer's shipping address. Includes a name and phone number in addition to the address fields. Apply these when your business ships physical goods.
| Field | Required |
|---|---|
name | Yes |
phone | No |
line_1 | Yes |
line_2 | No |
city | Yes |
state | No |
zip_code | No |
country | Yes (ISO 3166-1 alpha-2) |
Metadata
Up to 5 custom key-value pairs you can use to store your own reference data — for example, an internal customer ID, a CRM reference, or a contract number.
curl -X PUT "https://api.live.paisr.tech/v2/customers/{customer_id}" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0" \
-H "Content-Type: application/json" \
-d '{
"metadata": {
"internal_id": "C-00412",
"crm_ref": "hubspot-9921"
}
}'Customer Portal
Every customer has a self-service portal where they can view their invoice history, download receipts, and manage their active subscriptions. The portal is hosted by Paisr at no extra cost.
Portal session URLs are unique and expire 30 minutes after generation:
https://portal.paisr.tech/<session_token>The session.url is returned whenever you retrieve a customer via the API. Share it with the customer when they need to access their billing history.
curl -X GET "https://api.live.paisr.tech/v2/customers/{customer_id}" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0"Archiving Customers
Archive a customer to hide them from your default customer list without deleting their history. Archived customers retain all their invoices and subscription records and can be restored at any time.
curl -X POST "https://api.live.paisr.tech/v2/customers/{customer_id}/archive" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0"Restore a customer
curl -X POST "https://api.live.paisr.tech/v2/customers/{customer_id}/restore" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0"Deleting Customers
A customer can only be deleted after all associated invoices and subscriptions are resolved. Once deleted, the action cannot be undone.
curl -X DELETE "https://api.live.paisr.tech/v2/customers/{customer_id}" \
-H "Authorization: Bearer <token>" \
-H "User-Agent: MyApp/1.0"