Crypto deposits

Receive crypto from another platform into a parent or subaccount pocket.

A pocket can receive crypto from any blockchain network it supports. Each pocket gets its own deposit address per network. For fiat deposits, see Fiat deposits and withdrawals.

Send X-SUBACCOUNT-ID on every call when the deposit is for an end user. See Account model.

Skip this step if the account already has a pocket for that currency.

POST /v1/wallet/pocket

Body: currency (for example ETH) and name. See Pockets.

GET /v2/wallet/pocket/{pocketId}/{network}/address

network is the blockchain network name, for example ethereum. The call returns the pocket's addresses on that network and creates one if none exists yet, so you can call it every time you need to show the address. When the response includes a tag, the sender must include it as memo or tag, or the deposit cannot be credited. Reference: Find addresses or create one.

On the other platform, start a withdrawal and paste this address (and the tag, if any) as the destination. Use the same network you requested the address for.

Once the transaction has been processed and the funds are in the pocket, the notification socket sends wallet.trx.received, then wallet.trx.confirmed. Payloads: Notification events.

To check without the socket, read the pocket balance with GET /v1/wallet/pocket.