product.id must reference a product enabled for your platform (contact support to enable products).crypto block.200 response means the request was accepted — the account starts in pending and is provisioned in the background.GET /api/v1/accountissuance/{accountId}/status until the status becomes active before attempting withdrawals.customer + product pair returns 409 CONFLICT.| Status | Meaning |
|---|---|
pending | Being provisioned at the partner bank |
approved | Live and usable |
rejected | Failed compliance / bank checks |
GET /api/v1/accountissuance/account/{accountId} · GET /api/v1/accountissuance/{accountId}/status| Field | Type | Description | Constraints |
|---|---|---|---|
customer | object | Wrapper for the customer reference | - |
customer.id | string (uuid) | ID of the KYC-approved customer the account belongs to | Required |
product | object | Wrapper for the product reference | - |
product.id | string (uuid) | ID of the account product to issue (defines currency, scheme, bank partner) | Required |
| Field | Type | Description | Constraints |
|---|---|---|---|
crypto | object | Crypto settlement details — include only for crypto-linked accounts | Nullable |
crypto.asset | string | Crypto asset ticker (e.g. USDC, USDT) | Max: 50 · Nullable |
crypto.network | string | Blockchain network (e.g. ethereum, tron, polygon) | Max: 50 · Nullable |
crypto.address | string | On-chain settlement address | Max: 256 · Nullable |
| Field | Type | Nullable | Description |
|---|---|---|---|
data.id | string (uuid) | No | The new account's ID — store this; you need it for status polling and withdrawals |
data.customerId | string (uuid) | No | Customer the account belongs to |
data.productId | string (uuid) | No | Product the account was issued against |
data.status | string | No | pending | active | rejected |
data.currency | string | No | ISO-4217 currency of the account (from the product) |
data.iban | string | Yes | IBAN — populated once the account is active |
data.accountNumber | string | Yes | Local account number — populated once active |
data.crypto | object | Yes | Echo of the crypto block, if supplied |
data.createdAt | string (date-time) | No | UTC creation timestamp |
curl --location '/api/v1/accountissuance/accounts' \
--header 'X-API-Key: ak_live_8f3a9b2c1d4e5f6a7b8c' \
--header 'X-Signature: q2h8Zx0kPz5mVw7Yb3Nc1Rt6Ue9Ia4Od2Sf8Gk0Jl4=' \
--header 'X-Timestamp: 1754812800' \
--header 'X-Nonce: f47ac10b-58cc-4372-a567-0e02b2c3d479' \
--header 'X-Body-Hash: n4bQgYhMfWWaL+qgxVrQFaO/TxsrC4Is0V1sFbDwCgg=' \
--header 'Content-Type: application/json-patch+json' \
--data '{
"customer": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"product": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"crypto": {
"asset": "string",
"network": "string",
"address": "string"
}
}'{
"data": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"customerId": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"productId": "1b671a64-40d5-491e-99b0-da01ff1f3341",
"status": "pending",
"currency": "EUR",
"iban": null,
"accountNumber": null,
"crypto": {
"asset": "USDC",
"network": "ethereum",
"address": "0x8ba1f109551bD432803012645Ac136ddd64DBA72"
},
"createdAt": "2026-08-10T09:15:00Z"
}
}