Get customer deposit details
Get bank deposit details for a KYC-verified customer.
Returns bank deposit details for a KYC-verified customer. The customer must have completed KYC verification to access deposit details. For USD SWIFT, the shared reference account includes its ClearBank IBAN; a dedicated iban with depositModel: "virtual_account" is returned when the customer holds an active USD virtual account. EUR/SEPA deposit details may reference a different receiving bank depending on your organization's banking configuration.
Authorization
bearerAuth Organization API key obtained on Settings > API Keys page in Compose UI.
In: header
Path Parameters
Unique identifier of the customer
Query Parameters
Optional payment rail for deposit instructions. When omitted, currency=eur maps to SEPA and currency=usd maps to FEDWIRE. Use SWIFT for USD SWIFT deposits.
"SEPA" | "FEDWIRE" | "SWIFT"Currency for the deposit rail. Supported values: EUR (SEPA) and USD (FEDWIRE). Use paymentRail=SWIFT for USD SWIFT deposits.
"eur" | "usd"Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET 'https://compose.finance/api/v2/customers/{customerId}/deposit?currency=eur' \ -H 'Authorization: Bearer YOUR_API_KEY'{
"customerId": "550e8400-e29b-41d4-a716-446655440001",
"currency": "eur",
"paymentRail": "SEPA",
"reference": "A7B3C9D2E1",
"accountName": "AAA Corp.",
"accountAddress": "123 Example St., 00-001 Warsaw, Poland",
"iban": "DK0012345678123456",
"bic": "DUMMYBICXXX",
"bankName": "Dummy Bank",
"bankAddress": "1 Placeholder Rd, Test City, 12345, Country",
"bankCountry": "Denmark",
"depositInstructions": "To deposit funds, simply transfer money from your bank using your reference and the bank details below.",
"warning": "Include your unique reference in the transfer details",
"thirdPartyEnabled": false,
"depositModel": "reference"
}{
"error": "Missing required query parameter: paymentRail"
}{
"error": "Unauthorized - Invalid or missing API key or session"
}{
"error": "Customers feature is not enabled for your organization"
}{
"error": "Customer not found"
}{
"error": "Internal server error"
}Update customer wallet PATCH
Updates a customer deposit wallet. `walletType` and `ownershipAttested: true` are optional for now and will become required in a future release. When `walletType` is supplied, `ownershipAttested: true` is required and custodial wallets also require `vaspName`. Omit them when updating other fields and the wallet's existing declaration is kept unchanged. Changing the address without supplying a declaration clears the wallet's current declaration, because the previous declaration was made about the previous address — send the declaration alongside the new address to keep the wallet declared. Earlier declarations are retained against the address they were made about.
Claim developer fees POST
Initiates a transfer of your accumulated developer fees to your organization's wallet. **Claim Process** 1. Request to claim developer fees is received. 2. Transfer is initiated to your organization's wallet. 3. Transaction status can be monitored via the returned transaction ID 4. Balance updates when the on-chain transfer completes

