Перейти к основному содержимому

💳 Интеграция Native Checkout

Уведомление об обновлении API

Недавно были обновлены конечные точки и параметры API. Подробности см. в Журнале изменений.

Native Checkout API: Пользователи могут отсканировать QR-код или скопировать адрес на странице оформления заказа, созданной на ваших сайтах/в приложениях, для совершения платежей.

Интегрируйтесь с Native Checkout API для создания страницы оформления заказа для ваших сайтов/приложений. Пользователи платят на ваших сайтах/в приложениях. Нет необходимости вести их на внешние страницы. Возьмите под полный контроль процесс оформления заказа вашими пользователями.

📦 1. Создание заказа

  • Описание интерфейса: Отправляйте платежные заказы через этот интерфейс и получайте информацию о получении.
  • Адрес интерфейса: POST /api/order/create

Параметры запроса

ПолеТипОбязательноОписание
out_trade_nostringДаID заказа продавца
currency_idintДаГлобальный уникальный ID валюты
fiat_namestringНетНазвание фиатной валюты (USD / USDT / JPY / CHF / CAD / NOK / SEK / HKD / SGD / KRW / TWD / CNY / INR / BRL / MXN / ZAR / RUB / TRY / EUR / GBP / AUD / VND / THB)
fiat_amountstringНетСумма в фиатной валюте ("1.2")
token_amountstringНетСумма токена
callback_urlstringНетURL обратного вызова (callback)
time_outint64Нет10-значная метка времени истечения срока действия, укажите 0, по умолчанию 30 минут (1753513764)

Описание полей ответа

ПолеТипОписаниеПример
trade_nostringID транзакции"20250629153045a7b3c9d2e5f8a1b4c6"
chainstringБлокчейн-сеть"Tron"
tokenstringКриптовалютный токен"TRX"
contractstringАдрес контракта токена"TRX"
amountstringСумма транзакции"15.724197"
modestringРежим платежа"address"
pay_addressstringАдрес получателя"TSg8kWPE2s7z5Lon6bSnZZrYnquGHx2..."
time_expireintegerМетка времени истечения срока действия1753515371
decimalintegerДесятичные знаки токена6
chain_idintegerID сети3448148188
equityintegerЗначение капитала1
create_timeintegerМетка времени создания1753513571
amount_collectedstringСобранная сумма"0"
need_confirmsintegerНеобходимые подтверждения0
already_confirmsintegerТекущие подтверждения0
entrust_urlstringURL-адрес платежа"https://checkout.pay.halochat.io/20260....b876498e0771e1"
refererstringИнформация о реферере""
chain_infoobjectИнформация о сети{"token": "TRX", "rpc": "...", ...}

Пример успешного ответа

{
"code": 0,
"msg": "success",
"data": {
"trade_no": "20260317173635066d54f5b6c7269d41",
"chain": "Tron",
"token": "TRX",
"contract": "TRX",
"amount": "16.556743",
"mode": "address",
"pay_address": "THgSjcyhyxfzrjtS7VYw1vnHvb7QkMsY...",
"time_expire": 1773741995,
"decimal": 6,
"chain_id": 3448148188,
"equity": 1,
"create_time": 1773740196,
"amount_collected": "",
"need_confirms": 0,
"already_confirms": 0,
"entrust_url": "https://checkout.pay.halochat.io/20260317173635066d54f5b6c7269d41",
"referer": "",
"chain_info": {
"token": "TRX",
"abi": "",
"rpc": "https://nile.trongrid.io",
"browser_url": "https://nile.tronscan.org/#/transaction",
"decimal": 6,
"logo": "https://halo-n.oss-ap-southeast-1.aliyuncs.com/png/202505/45d1f4b5-b80f-4331-af78-ec557f97d832.png",
"series": "Tron",
"monitor_chain_id": 3448148188
}
}
}

🔍 2. Запрос заказа

  • Описание интерфейса: Используйте этот интерфейс для запроса статуса заказа.
  • Адрес интерфейса: POST /api/order/detail

Параметры запроса

ПолеТипОбязательноОписание
trade_nostringДаID транзакции

Описание полей ответа

ПолеТипОписаниеПример
trade_nostringID транзакции (платформа)"20250629153045a7b3c9d2e5f8a1b4c6"
out_trade_nostringID заказа продавца"202401011753513569"
chainstringБлокчейн-сеть"Tron"
tokenstringКриптовалютный токен"TRX"
contractstringАдрес контракта токена"TRX"
fiat_namestringНазвание фиатной валюты"USD"
fiat_amountstringСумма в фиате к оплате"5"
amountstringСумма крипто к отправке"15.724197"
modestringРежим платежа"address"
pay_addressstringКрипто-адрес получателя"TSg8kWPE2s7z5Lon6bSnZZrYnquGHx2bsj"
statusstringСтатус транзакции"TO-BE-PAID"
time_expireintegerМетка времени истечения срока (Unix)1753515371
decimalintegerДесятичные знаки токена6
chain_idintegerID сети3448148188
equityintegerЗначение капитала1
create_timeintegerМетка времени создания (Unix)1753513571
amount_collectedstringСобранная сумма"0"
need_confirmsintegerНеобходимые подтверждения0
already_confirmsintegerТекущие подтверждения0
entrust_urlstringURL-адрес платежа (если применимо)""
refererstringИнформация о реферере""
chain_infoobjectИнформация о сети{"token": "TRX", "rpc": "...", ...}

Пример успешного ответа

{
"code": 0,
"msg": "success",
"data": {
"trade_no": "20260317173635066d54f5b6c7269d41",
"out_trade_no": "ORDER_1773740195363",
"chain": "Tron",
"token": "TRX",
"contract": "TRX",
"fiat_name": "USD",
"fiat_amount": "5",
"amount": "16.556743",
"mode": "address",
"pay_address": "THgSjcyhyxfzrjtS7VYw1vnHvb7QkMsY7w",
"status": "TO-BE-PAID",
"time_expire": 1773741995,
"decimal": 6,
"chain_id": 3448148188,
"equity": 1,
"create_time": 1773740196,
"amount_collected": "0",
"need_confirms": 0,
"already_confirms": 0,
"entrust_url": "",
"referer": "",
"chain_info": {
"token": "TRX",
"abi": "",
"rpc": "https://nile.trongrid.io",
"browser_url": "https://nile.tronscan.org/#/transaction",
"decimal": 6,
"logo": "",
"series": "",
"monitor_chain_id": 0
}
}
}

💱 3. Обменные курсы

  • Описание интерфейса: Получить текущий обменный курс между TOKEN и законной валютой.
  • Адрес интерфейса: POST /api/order/exchange-rates

Параметры запроса

ПолеТипОбязательноОписание
currency_idintДаГлобальный уникальный ID валюты
fiat_namestringДаАббревиатура фиатной валюты (USD / USDT / JPY / CHF / CAD / NOK / SEK / HKD / SGD / KRW / TWD / CNY / INR / BRL / MXN / ZAR / RUB / TRY / EUR / GBP / AUD / VND / THB)
fiat_amountstringДаСумма в фиатной валюте

Описание полей ответа

ПолеТипОписание
amountstringСумма
exchange_ratestringОбменный курс

Пример успешного ответа

{
"code": 0,
"msg": "success",
"data": {
"amount": "0.00001971",
"exchange_rate": "100"
}
}

📋 4. Список токенов приложения (с балансом)

  • Описание интерфейса: Возвращает криптовалюты с включённым приёмом платежей для текущего приложения (X-Appid) и агрегированные по адресам балансы (та же база, что у POST /api/account/balance). Это не полный каталог платформы; все поддерживаемые токены — в §5 Список токенов.
  • Адрес интерфейса: POST /api/currency/app-token-list
  • Параметры запроса: Тело {}, заголовки авторизации как у остальных API.

Описание полей ответа

Корневой объект:

ПолеТипОписание
codeintegerКод, 0 — успех
msgstringСообщение
dataarrayТокены с включённым приёмом и балансы приложения

Элементы data[]:

ПолеТипОписание
currency_idintegerГлобальный ID валюты
chainstringНазвание сети (chain)
networkstringНазвание сети (network)
tokenstringСимвол токена
contractstringАдрес контракта
chain_idintegerID сети
logostringURL логотипа
decimalintegerДесятичные знаки
balancestringОбщий баланс (строка)
operable_balancestringДоступный баланс
frozen_amountstringЗамороженная сумма
statusintegerСтатус: 1 — включено, 2 — отключено
transaction_enabledbooleanПриём включён (в этом ответе всегда true)

Пример успешного ответа

{
"code": 0,
"msg": "success",
"data": [
{
"currency_id": 46,
"chain": "Tron",
"network": "Nile",
"token": "JST",
"contract": "TF17BgPaZYbxxxxhriubPDsA7ArKoLX3",
"chain_id": 3448148188,
"logo": "https://halo-n.oss-ap-southeast-1.aliyuncs.com/png/202505/xxx-c3f3-4d5d-a9b5-0143d78326f9.png",
"decimal": 18,
"balance": "0.785074013",
"operable_balance": "0.785074013",
"frozen_amount": "0",
"status": 1,
"transaction_enabled": true
}
]
}

📋 5. Список токенов

  • Описание интерфейса: Получить список Token, поддерживаемых системой. Для токенов с включённым приёмом и балансами вашего приложения используйте §4 Список токенов приложения.
  • Адрес интерфейса: POST /api/currency/token-list
  • Параметры запроса: Нет

Описание полей ответа

ПолеТипОписание
currency_idintГлобальный уникальный ID валюты.
chainstringСеть (chain)
networkstringСеть (network)
tokenstringТокен
contractstringАдрес контракта. Если текущая основная валюта совпадает с названием валюты, значение будет соответствовать названию валюты.
chain_idintID сети. Только серия Ethereum имеет значение.
logostringЛоготип
decimalintТочность

Пример успешного ответа

{
"code": 0,
"msg": "success",
"data": [
{
"currency_id": 46,
"chain": "Tron",
"token": "JST",
"network": "Nile",
"contract": "TF17BgPaZYbxxxxhriubPDsA7ArKoLX3",
"chain_id": 3448148188,
"logo": "https://halo-n.oss-ap-southeast-1.aliyuncs.com/png/202505/xxx-c3f3-4d5d-a9b5-0143d78326f9.png",
"decimal": 18
}
]
}

💸 6. Выплата (Payout)

  • Описание интерфейса: Продавцы могут выводить наличные на указанный адрес через этот интерфейс.
  • Адрес интерфейса: POST /api/payout/create

Параметры запроса

ПолеТипОбязательноОписание
currency_idintДаГлобальный уникальный ID валюты
amountstringДаБазовая сумма валюты
to_addressstringДаАдрес получателя
callback_urlstringНетАдрес обратного вызова (по умолчанию адрес обратного вызова, установленный APPID продавца)
google_codestringНетКод проверки Google (обязательно, если проверка включена для текущего приложения)

Пример успешного ответа

{
"code": 0,
"msg": "success",
"data": {
"cost": "0.801502",
"actual_receipt": "0.001",
"trade_no": "202603171746187e582d1b789b27ea55",
"estimated_transfer": "0"
}
}

📊 7. Запрос статуса перевода

  • Описание интерфейса: Запросить статус заказа выплаты.
  • Адрес интерфейса: POST /api/payout/detail

Параметры запроса

ПолеТипОбязательноОписание
trade_nostringДаНомер транзакции

Описание полей ответа

ПолеТипОписание
trade_nostringID транзакции
service_chargestringПлата за обслуживание
gasstringКомиссия за GAS
tokenstringВалюта
amountstringСумма
target_addressstringАдрес получателя
start_timeintВремя начала
created_timeintВремя создания
statusstringСтатус транзакции (CONFIRMING-PROGRESS: Подтверждается, PAID: Успех, FAIL: Ошибка, CANCEL: Отменено, PROGRESS: В ожидании)

Пример успешного ответа

{
"code": 0,
"msg": "success",
"data": {
"service_charge": "0.000002",
"gas": "0.8015",
"amount": "0.001",
"status": "TRANSFER",
"target_address": "TDYiTL3pke3T9BsoTotbKb922WsXQCmSxv",
"start_time": 1773740882,
"created_time": 1773740882,
"trade_no": "202603171748020a09cbb09b4846bc99",
"token": "DK7bKg181cC7pBgX3PxSIH2WdklZ5IPT"
}
}

💰 8. Проверка баланса

Получите информацию о балансе одной валюты для приложения через этот API.

  • Адрес интерфейса: POST /api/account/balance

Параметры запроса

ПолеТипОбязательноОписание
currency_idintДаГлобальный уникальный ID валюты

Описание полей ответа

ПолеТипОписание
currency_idintГлобальный уникальный ID валюты
balancestringОставшееся количество
balance_usdtstringСтоимость оставшегося количества, конвертированная в USDT
operable_balancestringРабочее количество (Если сумма основной валюты на адресе кошелька слишком мала для сбора, этот адрес кошелька нельзя использовать. См. личный центр => сетевые настройки для определения минимального рабочего порога.)
operable_balance_usdtstringСтоимость рабочего количества
chainstringНазвание сети
networkstringСеть
tokenstringТокен
contractstringАдрес контракта (основной токен в качестве сокращенного имени токена)

Пример успешного ответа

{
"code": 0,
"msg": "success",
"data": {
"currency_id": 46,
"balance": "0.785074013",
"operable_balance": "0.785074013",
"operable_balance_usdt": "0.043642",
"balance_usdt": "0.043642",
"chain": "Tron",
"network": "Nile",
"token": "JST",
"contract": "TF17BgPaZYbz8oxbjhriubPDsA7ArKoLX3"
}
}

🖼️ 9. Статический QR-код оплаты

  • Описание интерфейса: Подайте заявку на независимый статический адрес платежа через API. Он перезвонит на адрес интерфейса CallBack соответствующего APPID.
  • Адрес интерфейса: POST /api/payment-qr-code/create

Параметры запроса

ПолеТипОбязательноОписание
namestringДаНазвание QR-кода
currency_idintДаГлобальный уникальный ID валюты
amountstringНетСумма платежа по умолчанию (может быть "0")

Описание полей ответа

ПолеТипОписаниеПример
idintУникальный ID QR-кода115
addressstringСтатический адрес оплаты"TXd8UKLtLqk5V15v7e3W43ZdNw6berp6DP"

Пример успешного ответа

{
"code": 0,
"msg": "success",
"data": {
"id": 115,
"address": "TXd8UKLtLqk5V15v7e3W43ZdNw5berp6DP"
}
}
💡

Для этого требуется APPID приложения QR-кода, чтобы сделать запрос к этому API.


📌 Просмотреть код ошибки