REST
POST
/api/v1/deposit-accountsCreate Deposit Account
Creates a new deposit account for either fiat (bank account) or crypto (blockchain address) deposits.
Auth:Bearer <api_key>
Tags:BankingSandbox
This endpoint is only available in the Sandbox environment. It will not work in production.
Request
cURL
curl -X POST https://publicapi.sandbox.hercle.financial/api/v1/deposit-accounts \
-H "Authorization: Bearer eyJhb..." \
-H "Content-Type: application/json" \
-d '{"key": "value"}'Headers
| Name | Type | Required | Description |
|---|---|---|---|
| Authorization | string | Yes | Bearer API_KEY Example: Bearer your_api_key_here |
| Content-Type | string | Yes | application/json Example: application/json |
Request Body
Schema
| Field | Type | Description | Required |
|---|---|---|---|
asset | string | Asset type (e.g., EUR, GBP, USD, BTC). Must be between 3 and 30 characters | Yes |
network | string | Network type. Must be between 3 and 30 characters. Must match the asset type (crypto networks for crypto assets, fiat networks for fiat assets) | Yes |
fiatAccountId | string | Fiat account ID (required for fiat assets). Must follow the format fac_ followed by alphanumeric characters (e.g., fac_123abc456) | No |
endUserId | string | End user ID (optional for fiat assets). Must follow the format eus_ followed by alphanumeric characters (e.g., eus_987xyz654) | No |
Example
{
"asset": "EUR",
"network": "Sepa",
"fiatAccountId": "fac_123abc456",
"endUserId": "eus_987xyz654"
}Response
Success Response Schema
Deposit account created successfully
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier of the deposit account |
userId | string | User ID associated with the deposit account |
endUserId | string | End user ID associated with the deposit account |
name | string | Name of the deposit account |
asset | string | Asset type (e.g., EUR, BTC) |
network | string | Network type (e.g., Sepa, Bitcoin) |
refAccountId | string | Reference account ID (virtual account ID for fiat, blockchain address for crypto) |
refAccountType | string | Type of reference account |
refAccountDetails | object | null | Detailed account information |
Bank Details Object (Fiat Only)
Detailed bank account information for fiat deposit accounts
| Field | Type | Description |
|---|---|---|
bankName | string | Name of the bank |
accountHolderName | string | Name of the account holder |
country | string | Country code (ISO 3166-1 alpha-2, e.g., DE, GB) |
accountNumber | string | Bank account number |
routingCodes | array | Array of routing code objects |
iban | string | International Bank Account Number |
bic | string | Bank Identifier Code (SWIFT code) |
Routing Code Object
Routing code information for bank transfers
| Field | Type | Description |
|---|---|---|
type | string | Type of routing code (e.g., sort_code, aba) |
value | string | Value of the routing code |
Crypto Deposit Account Details Object
Blockchain address and details for crypto deposit accounts
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier of the crypto deposit account |
address | string | Blockchain address for deposits |
legacyAddress | string | Legacy address format |
enterpriseAddress | string | null | Enterprise address |
tag | string | Tag or memo for certain cryptocurrencies |
eosAccountName | string | EOS account name |
status | string | null | Status of the crypto deposit account |
activationTxId | string | null | Transaction ID of the activation transaction |
Responses
Deposit account created successfully
201 application/json
[
{
"id": "addr_def456ghi789",
"userId": "user_789xyz",
"endUserId": "eus_987xyz654",
"name": "EUR Virtual Account",
"asset": "EUR",
"network": "Sepa",
"refAccountId": "vac_123456789",
"refAccountType": "VIRTUAL_ACCOUNT",
"refAccountDetails": {
"bankName": "Deutsche Bank",
"accountHolderName": "John Doe",
"country": "DE",
"accountNumber": "532013000",
"routingCodes": [
{
"type": "sort_code",
"value": "123456"
}
],
"iban": "DE89370400440532013000",
"bic": "COBADEFFXXX"
}
},
{
"id": "addr_def456ghi789",
"userId": "user_789xyz",
"endUserId": "eus_987xyz654",
"name": "ETH Deposit Account",
"asset": "ETH",
"network": "Ethereum",
"refAccountId": "35",
"refAccountType": "CRYPTO_ACCOUNT",
"refAccountDetails": {
"id": "30",
"address": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
"legacyAddress": "",
"enterpriseAddress": null,
"tag": "",
"eosAccountName": "Address ETH",
"status": null,
"activationTxId": null
}
}
]API Tester
Test this endpoint directly against the sandbox environment
Get your API key from Hercle Sandbox
https://publicapi.sandbox.hercle.financial/api/v1/deposit-accounts