Customers
Create and manage business-customer KYB records under your merchant business.
Only type: business is accepted. Editable while draft or rejected. Document types: cac, memart, status_report, scuml, proof_of_funds, utility_bill.
/customersScope: customers:read
List customers for the authenticated merchant (paginated).
Request
curl -X GET "https://api.bitstac.io/api/v1/merchant/customers" \
-H "Authorization: Bearer $BITSTAC_API_KEY" \
-H "Accept: application/json"Example response
{
"success": true,
"data": [
{
"id": "3f2c…",
"external_reference": "crm-1001",
"type": "business",
"business_name": "Northwind Trading Ltd",
"status": "draft",
"created_at": "2026-07-26T12:00:00.000000Z"
}
],
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 15,
"total": 1
}
}/customersScope: customers:write
Create a draft business customer. All profile fields are optional at create time; required fields are enforced on submit.
Body fields
type— optional, must bebusinessif sentexternal_reference,business_name,trading_nameregistration_country,registration_number,registration_date,tax_identification_numberbusiness_type,business_classification(UUID)business_address,business_state,business_countrybusiness_phone,business_email
Request
curl -X POST "https://api.bitstac.io/api/v1/merchant/customers" \
-H "Authorization: Bearer $BITSTAC_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "type": "business", "external_reference": "crm-1001", "business_name": "Northwind Trading Ltd", "trading_name": "Northwind", "registration_country": "NG", "registration_number": "RC123456", "registration_date": "2020-01-15", "tax_identification_number": "12345678-0001", "business_type": "limited_liability", "business_address": "12 Marina, Lagos", "business_state": "Lagos", "business_country": "NG", "business_phone": "+2348012345678", "business_email": "ops@northwind.example"}'Example response
{
"success": true,
"data": {
"id": "3f2c…",
"type": "business",
"status": "draft",
"business_name": "Northwind Trading Ltd",
"documents": [],
"stakeholders": []
}
}/customers/{id}Scope: customers:read
Retrieve a customer including documents and stakeholders.
Request
curl -X GET "https://api.bitstac.io/api/v1/merchant/customers/3f2c0000-0000-4000-8000-000000000001" \
-H "Authorization: Bearer $BITSTAC_API_KEY" \
-H "Accept: application/json"/customers/{id}Scope: customers:write
Update draft (or rejected) customer profile fields.
Request
curl -X PATCH "https://api.bitstac.io/api/v1/merchant/customers/3f2c0000-0000-4000-8000-000000000001" \
-H "Authorization: Bearer $BITSTAC_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "business_phone": "+2348099999999"}'/customers/{id}/documentsScope: customers:write
Upload or replace a KYB document (multipart). Max 5MB; PDF/JPEG/PNG.
Request
curl -X POST "https://api.bitstac.io/api/v1/merchant/customers/3f2c0000-0000-4000-8000-000000000001/documents" \
-H "Authorization: Bearer $BITSTAC_API_KEY" \
-F "document_type=cac" \
-F "file=@./cac.pdf"Example response
{
"success": true,
"data": {
"id": "…",
"document_type": "cac",
"status": "uploaded",
"has_file": true
}
}/customers/{id}/stakeholdersScope: customers:write
Create or update a stakeholder (multipart). Pass id to update an existing stakeholder.
Multipart fields
- Required:
full_name,email,role,identity_document,address_document - Optional:
id,date_of_birth,nationality,percentage,bvn(11),nin(11), residence fields,identity_document_type
Request
curl -X POST "https://api.bitstac.io/api/v1/merchant/customers/3f2c0000-0000-4000-8000-000000000001/stakeholders" \
-H "Authorization: Bearer $BITSTAC_API_KEY" \
-F "full_name=Ada Okafor" \
-F "email=ada@northwind.example" \
-F "role=director" \
-F "percentage=40" \
-F "bvn=22123456789" \
-F "nin=12345678901" \
-F "identity_document_type=national_id" \
-F "identity_document=@./id.pdf" \
-F "address_document=@./address.pdf"/customers/{id}/submitScope: customers:write
Submit a complete KYB package for review. Moves status to under_review when the checklist passes.
Request
curl -X POST "https://api.bitstac.io/api/v1/merchant/customers/3f2c0000-0000-4000-8000-000000000001/submit" \
-H "Authorization: Bearer $BITSTAC_API_KEY" \
-H "Accept: application/json"Example response
{
"success": true,
"data": {
"id": "3f2c…",
"status": "under_review",
"submitted_at": "2026-07-26T12:30:00.000000Z"
}
}