Compose Finance
Deposit wallets

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.

POST
/api/v2/customers/{customerId}/deposit/wallets

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
AuthorizationBearer <token>

Organization API key obtained from PropelAuth

In: header

Path Parameters

customerId*string

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"
}