Pre request for crypto deposit [Private]

A pre-request for a deposit operation is required in order to receive information about the available deposit methods.

Method name:/v2/deposit/pre-request
Request type:POST

📘

To call private endpoints, you need to get a JWT token or an API key for authentication.

Here you can learn in detail how to successfully authenticate.

As part of crypto-deposit, in response to pre-requests, payment methods are returned with the necessary details regarding the asset to be deposited. In fact, within a crypto-deposit, one payment method corresponds to a unique source value.
In order to make a crypto deposit using /v2/deposit/address, you need to have the following information:

  • whether there is an available payment method for making such a deposit. If not, the deposit is not possible;
  • which source is provided for the asset. That is, several payment methods with different sources may be available for some assets. For example USDT_TRX and USDT_ETH.

For each payment method, the pre-request also returns the value of the fees for deposit transaction and the minimum and maximum deposit amount.

Data dictionary

NameTypeParameter typeRequiredRangeDescription
assetstringBODYYES-Asset(Currency) code, e.g. BTC - Bitcoin, ETH - Ethereum.

Exemplary request

const url = BASE_URL;
const path = "/v2/deposit/pre-request";

const body = { asset: "USDT" };

const options = {
  method: "POST",
  headers: {
    accept: "application/json",
    "Content-Type": "application/json",
    "Authorization": `Bearer ${data.accessToken}` // data.accessToken - generated a JWT token via /v2/auth/login.
  },
  body: JSON.stringify(body),
};

fetch(url + path, options)
  .then((response) => response.json())
  .then((showResponse) => console.log(showResponse.data));
import requests

url = BASE_URL
path = "/v2/deposit/pre-request"
headers = {
    "accept": "application/json",
    "Content-Type": "application/json",
    "Authorization": "Bearer " + data.accessToken # data.accessToken - generated a JWT token via /v2/auth/login.
}
body = { "asset": "USDT" }

request = requests.post(url + path, headers=headers, json=body)
print(request.json())

How to call private endpoints here

Swagger here

Response

{
  "data": [
    {
      "asset": "USDT",                         // Asset name.
      "code": "crypto_deposit_eth_usdt",       // Asset code.
      "name": {                                // Text name of the method.
        "en": "On wallet ERC20",
        "ru": "На кошелек ERC20",
        "uk": "На гаманець ERC20"
      },
      "position": 0,                           // Field positions.
      "source": "ETH",                         // Network name.
      "type": "Deposit",                       // Method type.
      "fields": [],                            // Additional method fields.
      "product": {                             // Object with information about the method.
        "feeFixed": "0.0",                     // Fixed Fee.
        "feeRate": "2.1",                      // Percentage fee.
        "feeStrategy": "external",             // external - commission paid by customer; internal - commission paid by the merchant.
        "maxAmount": "1000",                   // Maximum deposit amount.
        "minAmount": "1.5"                     // Minimum deposit amount.
      }
    },
    {
      "asset": "USDT",
      "code": "crypto_deposit_trx_usdt",
      "name": {
        "en": "On wallet TRC20",
        "ru": "На кошелек TRC20",
        "uk": "На гаманець TRC20"
      },
      "position": 0,
      "source": "TRX",
      "type": "Deposit",
      "fields": [],
      "product": {
        "feeFixed": "0.0",
        "feeRate": "2.0",
        "feeStrategy": "external",
        "maxAmount": "1000",
        "minAmount": "1.5"
      }
    }
  ]
}