Create customer wallet
Creates a crypto wallet address for the customer to receive USDC during deposits. **Wallet Requirements** - Must be a valid Ethereum address - Must support USDC on Base network - Wallet address must be unique within your organization **Licensing** - **Licensed organizations**: Wallet is optional. If no wallet is configured, funds will be forwarded to your organization's wallet. - **Unlicensed organizations**: A wallet must be configured for each customer before deposits can be processed.
Creates a crypto wallet address for the customer to receive USDC during deposits.
Wallet Requirements
- Must be a valid Ethereum address
- Must support USDC on Base network
- Wallet address must be unique within your organization
Licensing
- Licensed organizations: Wallet is optional. If no wallet is configured, funds will be forwarded to your organization's wallet.
- Unlicensed organizations: A wallet must be configured for each customer before deposits can be processed.
Authorization
bearerAuth Organization API key obtained from PropelAuth
In: header
Path Parameters
Unique identifier of the customer
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
application/json
curl -X POST 'https://compose.finance/api/v2/customers/{customerId}/deposit/wallets' \ -H 'Authorization: Bearer YOUR_API_KEY' \ -H 'Content-Type: application/json' \ -d '{ "address": "0x1234567890abcdef1234567890abcdef12345678", "currency": "usdc", "chain": "base" }'{
"id": "wallet_abc123",
"customerId": "550e8400-e29b-41d4-a716-446655440001",
"address": "0x1234567890AbcdEF1234567890aBcdef12345678",
"currency": "usdc",
"chain": "base",
"enabled": true,
"createdAt": "2024-01-15T10:30:00.000Z",
"updatedAt": "2024-01-15T10:30:00.000Z"
}{
"error": "Invalid Ethereum address format"
}{
"error": "Unauthorized - Invalid or missing API key or session"
}{
"error": "Customer wallets feature is not enabled for your organization"
}{
"error": "Customer not found"
}{
"error": "This wallet address is already registered for another customer in your organization"
}List customers GET
Returns all customers for the authenticated organization. Requires Bearer token authentication.
Delete customer wallet DELETE
Deletes a customer wallet. This action cannot be undone. **Note:** Unlicensed organizations cannot delete customer wallets as a wallet is required for deposit processing.