Create customer
Creates a new customer for the authenticated organization. Requires Bearer token authentication.
Creates a new customer for the authenticated organization. Requires Bearer token authentication.
Authorization
bearerAuth Organization API key obtained from PropelAuth
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
curl -X POST 'https://compose.finance/api/v2/customers' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Content-Type: application/json' \ -d '{ "name": "JOHN DOE", "accountType": "individual", "email": "[email protected]" }'# With optional expectedMonthlyVolume:# -d '{ "name": "JOHN DOE", "accountType": "individual", "expectedMonthlyVolume": 25000 }'{
"customerId": "550e8400-e29b-41d4-a716-446655440001",
"email": "[email protected]",
"name": "JOHN DOE",
"accountType": "individual",
"expectedMonthlyVolume": 25000,
"kycVerified": false
}{
"error": "Please enter a valid email address, Name is required"
}{
"error": "Unauthorized - Invalid or missing API key or session"
}{
"error": "Customers feature is not enabled for your organization"
}{
"error": "Internal server error"
}Get balances GET
Returns custodial (account) and non-custodial (Safe wallet) balances for your organization. **Custodial balances** are grouped by asset and summed across chains. These represent funds held on your behalf by Compose. **Non-custodial balances** are queried on-chain from your organization's Safe wallet. Each entry includes the chain and token contract address.
Get customer GET
Returns details for a specific customer including KYC status. Requires Bearer token authentication.