Skip to navigation

Send funds

View as MarkdownOpen in Claude

Signs and broadcasts a transfer from your platform’s own wallet — the twin of /send, with two differences: there is no userId, and there is no password — the platform wallet’s key is held and unlocked by the service, so the body is just assetId, recipient and amount.

Everything else is identical to /send and its description applies verbatim: native transfers deliver amount − fee while token transfers deliver the full amount, a txHash is not a confirmation, and X-Request-Id is required — it is the idempotency key, scoped to the platform wallet. Reuse the same id to retry a transfer safely; a duplicate never broadcasts twice.

Use this to pay out from the wallet you fund at /platform/addresses — for example to settle a completed trade with a user.

Do not send an X-USER-ID header here — a platform endpoint always acts as the platform wallet, and sending one is a 400.

Authentication

AuthorizationBearer

A 15-minute token from /auth. Required on every endpoint except /auth.

Headers

X-Request-IdstringRequiredformat: "^[A-Za-z0-9._-]{1,64}$"<=64 characters

Required on /send, and client-supplied — it is the idempotency key for the transfer.

One id per logical transfer; the same id on every retry of it; a fresh id for a new transfer. 1–64 characters of A-Za-z0-9._-. Omitting it is a 400.

Request

This endpoint expects an object.
assetIdenumRequired

Primary asset selector. An all-digit string ("21") is accepted and normalised to an integer.

  • 1 — BITCOIN BTC (native, 8 decimals)
  • 2 — ETHEREUM ETH (native, 18 decimals)
  • 21 — ETHEREUM USDT (ERC20, 6 decimals)
  • 22 — ETHEREUM USDC (ERC20, 6 decimals)
  • 3 — BSC BNB (native, 18 decimals)
  • 31 — BSC USDT (BEP20, 18 decimals)
  • 32 — BSC USDC (BEP20, 18 decimals)
  • 4 — TRON TRX (native, 6 decimals)
  • 41 — TRON USDT (TRC20, 6 decimals)
  • 42 — TRON USDC (TRC20, 6 decimals) — not on every endpoint
  • 5 — POLYGON POL (native, 18 decimals)
  • 51 — POLYGON USDT (ERC20, 6 decimals) — not on every endpoint
  • 52 — POLYGON USDC (ERC20, 6 decimals)
  • 6 — SOLANA SOL (native, 9 decimals)
  • 61 — SOLANA USDT (SPL, 6 decimals) — not on every endpoint
  • 62 — SOLANA USDC (SPL, 6 decimals)
recipientstringRequired
Destination address on the asset's chain. Must differ from the platform wallet's own address.
amountstringRequiredformat: "^\d+(\.\d+)?$"

Human-decimal amount string. Same rules and minimums as /send.

Response

OK
resultobject
requestIdstring

Echo of the inbound X-Request-Id, or a generated one.

Errors

400
Bad Request Error
401
Unauthorized Error
402
Payment Required Error
403
Forbidden Error
409
Conflict Error
422
Unprocessable Entity Error
503
Service Unavailable Error