API Documentation
Аутентификация и формат запросов
Общие требования
Все запросы к API требуют аутентификации через подпись запроса для обеспечения безопасной передачи данных.
Структура запроса
Все запросы отправляются методом POST. Тело запроса содержит:
data: JSON-объект, закодированный в base64signature: Подпись (SHA256(SECRET_KEY+data)), закодированная в base64
Получение баланса (USDT)
Баланс отображается исключительно в валюте USDT
URL: https://api.crypto-cash.world/merchant/api/v1/balance/retrieve/
Параметры запроса:
publicKey: Публичный ключ мерчанта
Пример ответа:
{
"code": 200,
"data": {
"item": {
"accountAmount": "15.000",
"companyAmount": "20.000"
}
}
}Получение списка транзакций на вывод
URL: https://api-dev.crypto-cash.world/merchant/api/v1/queues
Параметры запроса:
publicKey: Публичный ключ мерчанта
Пример ответа:
{
"code": 200,
"data": {
"items": [
{
"id": "1fe62ba6-5415-437a-a957-asdkm8a0c4f",
"status": "COMPLETED",
"scheduledAt": "2025-09-29T11:47:08.764Z",
"createdAt": "2025-09-29T11:47:08.765Z",
"retryCount": 0,
"errorMessage": null,
"withdrawData": {
"amount": "10",
"userId": "725ad60d-2fd0-daj8-b653-1539e1fd627e",
"address": "TA9UqpvoEasdmiido1C6Kui7v81cLqqxw2v",
"network": "TRC20",
"currency": "USDT",
"externalId": "k_1759123098345",
"includeFeeInAmount": true
}
]
}
}Покупка криптовалюты (Вывод криптовалюты)
Вывод осуществляется в любой криптовалюте, конвертация через USDT. Заявки осуществляются в порядке очереди.
URL: https://api.crypto-cash.world/merchant/api/v1/balance/actions/buy/crypto/
Параметры запроса:
publicKey: Публичный ключ мерчантаaddress: Номер счетаmemo(опционально): Дополнительная информацияamount: Сумма покупки в выбранной валютеcurrency: Валюта. Необязательный параметр если переданtickernetwork: Подсеть. Необязательный параметр если переданtickerticker: Тикер. Необязательный параметр если переданcurrencyиnetwork.externalId: Внешний ID
Пример ответа:
{
"code": 200,
"data": {
"item": {
"id": "58b7023c-daw4-hyi7-sbgj-6d74cfsdgc0c",
"externalId": "15asdq24O_1"
},
"queued": true,
"scheduledAt": "2025-10-13T14:25:07.023Z"
}
}Продажа криптовалюты (Пополнение криптовалюты)
Пополнение осуществляется в любой криптовалюте, конвертация через USDT
URL: https://api.crypto-cash.world/merchant/api/v1/balance/actions/sale/
Параметры запроса:
publicKey: Публичный ключ мерчантаamount: Сумма продажиcurrency: Валюта. Необязательный параметр если переданtickernetwork: Подсеть. Необязательный параметр если переданtickerticker: Тикер. Необязательный параметр если переданcurrencyиnetwork.externalId: Внешний ID
Пример ответа:
{
"code": 200,
"data": {
"item": {
"id": "1d09037e-h73s-4bb0-9nf5-f149b19797c1",
"address": "TAkCux1RVumZJoG4v61yni87yguacBH84aoo",
"memo": "",
"externalId": "t1ckac-kc9dcc-as2ockd-cnzywidj"
}
}
}Запрос на получения списка транзакций
URL: https://api.crypto-cash.world/merchant/api/v1/balance/payments/list/
Параметры запроса:
publicKey: Публичный ключ мерчантаpage: Получение определённой страницы. Необязательный параметр. По умолчанию 1.pageSize: Количество объектов на одну страницу. Необязательный параметр. По умолчанию 100.dateAfter: Фильтр по дате. После указанной даты. Необязательный параметр.dateBefore: Фильтр по дате. До указанной даты. Необязательный параметр.transactionType: Фильтр по типу (Возможные значения: buy | sale). Необязательный параметр.
Пример ответа:
{
"code": 200,
"data": {
"items": [
{
"id": "df4f951b-bg5s-mho9-i9nv-1ba3e0c45371",
"pair": "USDT/USDT",
"usdtTotal": "100",
"hash": "9hfmhue5-kfe4-kbt6-lvy9-b84b5fa78b23",
"amount": "100",
"commission": "0",
"exchangeRate": "1",
"networkFee": "1 USDT / 1 USDT",
"externalId": "k_33isIODIO123JASDIJOAS9SAD9SADas9",
"transactionType": "Buy",
"createdAt": "2025-09-30T15:39:39.962000+03:00",
"updatedAt": "2025-09-30T15:45:11.578000+03:00",
"status": "Paid",
"balanceEntries": [
{
"id": "2f7b50e1-nfuo-nvt9-zqoo-dcf8b98fbf90",
"updatedAt": "2025-09-30T15:45:11.540000+03:00",
"currency": "USDT",
"requestedCurrency": "USDT",
"exchangeRate": "",
"requestedAmount": "99",
"feeAmount": "0",
"amount": "100",
"hash": "9hfmhue5-kfe4-kbt6-lvy9-b84b5fa78b23",
"direction": "OUT"
}
]
},
{
"id": "2b921938-no0s-fd8k-qau9-6da8d43f8689",
"pair": "USDT/USDT",
"usdtTotal": "",
"network": "TRC20",
"hash": "",
"amount": "",
"commission": "",
"address": "9IHG38xnAyZ7RmgfcreCLxctSDuFwibjKYv",
"exchangeRate": "",
"externalId": "k_ndbreui68ghjhfbgceg",
"transactionType": "Sale",
"createdAt": "2025-09-30T15:16:00.474000+03:00",
"updatedAt": "2025-09-30T15:16:00.474000+03:00",
"status": "New"
}
],
"pagination": {
"page": 1,
"total": 1,
"pageSize": 10
}
}
}Запрос на получения конкретной транзакции
URL: https://api.crypto-cash.world/merchant/api/v1/balance/payments/retrieve/
Параметры запроса:
publicKey: Публичный ключ мерчантаexternalId: Внешний ID. Необязательный параметр если передаетсяinternalIdinternalId: Внутренний ID. Необязательный параметр если передаетсяexternalId
Пример ответа:
{
"code": 200,
"data": {
"item": {
"id": "df4f951b-bg5s-mho9-i9nv-1ba3e0c45371",
"pair": "USDT/USDT",
"usdtTotal": "100",
"hash": "9hfmhue5-kfe4-kbt6-lvy9-b84b5fa78b23",
"amount": "100",
"commission": "0",
"exchangeRate": "1",
"networkFee": "1 USDT / 1 USDT",
"externalId": "k_33isIODIO123JASDIJOAS9SAD9SADas9",
"transactionType": "Buy",
"createdAt": "2025-09-30T15:39:39.962000+03:00",
"updatedAt": "2025-09-30T15:45:11.578000+03:00",
"status": "Paid",
"balanceEntries": [
{
"id": "2f7b50e1-kda8-xd7v-ao8x-dcf8b98fcamcdu",
"updatedAt": "2025-09-30T15:45:11.540000+03:00",
"currency": "USDT",
"requestedCurrency": "USDT",
"exchangeRate": "",
"requestedAmount": "99",
"feeAmount": "0",
"amount": "100",
"hash": "9hfmhue5-kfe4-kbt6-lvy9-b84b5fa78b23",
"direction": "OUT"
}
]
}
}
}Запрос на возврат средств
URL: https://api.crypto-cash.world/merchant/api/v1/balance/actions/refund/
Параметры запроса:
publicKey: Публичный ключ мерчантаexternalId: Внешний ID. Необязательный параметр если передаетсяinternalIdinternalId: Внутренний ID. Необязательный параметр если передаетсяexternalIdaddress: Кошелек на который будет произведен возврат. (В той же сети и валюте)memo: (опционально): Дополнительная информация
Пример ответа:
{
"code": 200,
"data": {
"item": {
"id": "string",
"transactionId": "string",
"address": "string"
}
}
}Внешняя ссылка для получения курсов
URL: https://crypto-cash.world/market/rates/export/xml/
URL: https://crypto-cash.world/market/rates/export/json/
Справочная информация
Список криптовалют
URL: https://api.crypto-cash.world/merchant/api/v1/crypto-currencies/list/
Параметры запроса:
publicKey: Публичный ключ мерчанта
Пример ответа:
{
"code": 200,
"data": {
"items": [
{
"currency": "BTC",
"networks": [
"BITCOIN"
],
"tickers": [
"BTC"
]
},
{
"currency": "ETH",
"networks": [
"ZKSYNC",
"BASE",
"ARBITRUM",
"OPTIMISM",
"LINEA",
"ERC20"
],
"tickers": [
"ETHOPTM",
"ETHARBTM",
"ETHZKSYNC",
"ETHLINEA",
"ETHBASE",
"ETH"
]
},
{
"currency": "USDT",
"networks": [
"NEWTON",
"AVALANCHE",
"POLYGON",
"BINANCESMARTCHAIN",
"TRC20",
"ARBITRUM",
"SOLANA",
"ERC20"
],
"tickers": [
"USDTPOLYGON",
"USDTSOL",
"USDTARBTM",
"USDTERC20",
"USDTBEP20",
"USDTTRC20",
"USDTTON",
"USDTAVAXC"
]
}
}Статусы заказов
- New
- Waiting
- Paid
- Not paid
- Underpaid
- Overpaid
- Canceled
- AML Frozen
- AML KYC
- Currency mismatch
Ошибки
При возникновении ошибок в ответ будет возвращен список из кодов ошибок.
Пример ответа с ошибкой:
{
"errors": [1000]
}Список ошибок:
- 1000 - Неверный запрос
- 2010 - Ошибка декодирования данных
- 2011 - Ошибка декодирования подписи
- 2020 - Неверная подпись
- 3000 - Компания не найдена
- 3001 - Заказ не найден
- 3002 - Транзакция не найдена
- 4003 - Аккаунт не активирован
Вебхуки
Сервис предоставляет возможность настроить вебхуки, чтобы получать уведомления о событиях, связанных с изменением статуса заказа. Для настройки вебхука необходимо в настройках аккаунта указать URL, на который будут отправляться данные.
Формат вебхука:
data: Поле содержит объект JSON с информацией о заказе, закодированный в строку base64.signature: Подпись запроса, созданная на основе приватного ключа и данных (SECRET_KEY+data). Подпись кодируется в SHA256 и затем в base64.