iCryptoNow

Introduction

The iCryptoNow API lets your platform accept stablecoin deposits and send payouts. It is a JSON over HTTPS API, and every request is signed with your API key.

How an integration works

  1. Create a deposit address for each player with POST /v1/addresses. Show it to the player. The same player always gets the same address.
  2. Receive webhooks. When the player pays, we send deposit.detected, then deposit.confirmed once it is final. Credit the player on deposit.confirmed. See Webhooks.
  3. Send payouts with POST /v1/payouts. Track them by webhook or by polling.

Base URL

Your base URL, API key id (ak_…) and secret are issued when your merchant account is created. The examples use these environment variables:

ICN_BASE_URL=...      # base URL from onboarding
ICN_KEY_ID=ak_...     # API key id
ICN_SECRET=...        # API secret (keep it server-side)

Requests are only accepted from the IP addresses registered for your key. See Authentication.

Amounts

All amounts are strings holding an integer in the token's smallest unit, never decimals. For example, with a 6-decimal token, "50000000" is 50 USDT. Decimals differ by network (USDT on BSC uses 18), so always use the decimals field that responses and webhooks include.

Networks and assets

Use these chain ids in requests. Assets are written as chain:TOKEN, for example tron:USDT. Which assets are enabled depends on your account.

NetworkChain idTokens
TRON tronUSDT
BSC bscUSDT
Ethereum ethUSDT, USDC
Arbitrum arbitrumUSDT, USDC
Base baseUSDT, USDC
Polygon polygonUSDT, USDC
Solana SoonsolanaUSDT, USDC

Request ids

Every response carries an X-Request-Id header. Include it when you contact support about a request.

Chat with us