2. Select a source wallet

Find the wallet

GET /v1/payments/accounts?currency=USDT

curl "https://api-staging.checker.finance/v1/payments/accounts?currency=USDT" \
  -H "X-Api-Key: $API_KEY" \
  -H "X-Timestamp: $TIMESTAMP" \
  -H "X-Nonce: $(uuidgen)" \
  -H "X-Signature: $SIGNATURE"

Response — 200 OK:

{
  "data": [
    {
      "account_id": "acc_01ARZ3NDEKTSV4RRFFQ69G5FAV",
      "currency": "USDT",
      "provider": "provider-b",
      "status": "ACTIVE",
      "metadata": { "network": "TRX" }
    }
  ],
  "next_cursor": null
}

Use currency together with metadata.network to identify the right wallet. These accounts carry no customer_id.

Read the wallet address

GET /v1/payments/accounts/{account_id}

{
  "account_id": "acc_01ARZ3NDEKTSV4RRFFQ69G5FAV",
  "currency": "USDT",
  "status": "ACTIVE",
  "metadata": { "network": "TRX" },
  "credentials": {
    "wallet_address": "T9yD14Nj9j7xAB4dbGeiX9h8unkKHxuWwb"
  }
}

Create the deposit and send the funds

Declare the amount you are about to send, then transfer exactly that amount on the matching network.

POST /v1/payments/deposits

curl -X POST https://api-staging.checker.finance/v1/payments/deposits \
  -H "X-Api-Key: $API_KEY" \
  -H "X-Timestamp: $TIMESTAMP" \
  -H "X-Nonce: $(uuidgen)" \
  -H "X-Signature: $SIGNATURE" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "account_id": "acc_01ARZ3NDEKTSV4RRFFQ69G5FAV",
    "amount": "500.000000"
  }'

Response — 202 Accepted:

{
  "deposit_id": "dep_01ARZ3NDEKTSV4RRFFQ69G5FAV",
  "account_id": "acc_01ARZ3NDEKTSV4RRFFQ69G5FAV",
  "amount": "500.000000",
  "status": "PROCESSING",
  "created_at": "2026-09-23T15:00:00Z",
  "updated_at": "2026-09-23T15:00:00Z"
}
RequirementDetail
AssetThe account's currency (for example USDT)
NetworkThe account's metadata.network (for example TRX)
Destinationcredentials.wallet_address on that account
AmountMust match the deposit amount exactly

A different amount, asset, or network will not complete the deposit.

Poll GET /v1/payments/deposits/{deposit_id} until COMPLETED, then confirm the balance with GET /v1/payments/accounts/{account_id}/balance. The balance is only spendable once the deposit completes.



Did this page help you?