curl --request POST \
--url https://api.example.com/v1/public/deposits/{uuid}/refresh \
--header 'X-Signature: <api-key>'import requests
url = "https://api.example.com/v1/public/deposits/{uuid}/refresh"
headers = {"X-Signature": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'X-Signature': '<api-key>'}};
fetch('https://api.example.com/v1/public/deposits/{uuid}/refresh', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/v1/public/deposits/{uuid}/refresh",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"X-Signature: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/public/deposits/{uuid}/refresh"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("X-Signature", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/v1/public/deposits/{uuid}/refresh")
.header("X-Signature", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/public/deposits/{uuid}/refresh")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Signature"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"orderId": "order_42_abc",
"address": "TXYZ...abcd",
"memo": "WP-1A2B3C4D",
"assetCode": "USDT_TRC20",
"expectedAmount": "100.50",
"status": "check",
"expiresAt": "2023-11-07T05:31:56Z",
"explorerAddressUrl": "https://tronscan.org/#/address/TXYZ",
"transaction": {
"networkStatus": "confirmed",
"receivedAmount": "100.500000",
"txhash": "a1b2c3...e9f0",
"confirmations": 12,
"requiredConfirmations": 19,
"blockNumber": "65123456",
"explorerTxUrl": "https://tronscan.org/#/transaction/a1b2c3",
"detectedAt": "2023-11-07T05:31:56Z",
"paidAt": "2023-11-07T05:31:56Z",
"fromAddress": "<string>"
},
"network": "TRON",
"isFinal": false,
"amountUsd": "100.50",
"rateUsd": "1.00",
"commission": "0.50",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"accuracyPaymentPercent": "1.00",
"allowTopUp": false,
"topUp": {
"enabled": true,
"waiting": true,
"remainingAmount": "39.5",
"closedAt": "2023-11-07T05:31:56Z",
"txs": [
{
"txhash": "<string>",
"amount": "10.5",
"fromAddress": "<string>",
"confirmations": 3,
"requiredConfirmations": 19,
"confirmed": false,
"detectedAt": "2023-11-07T05:31:56Z",
"confirmedAt": "2023-11-07T05:31:56Z"
}
]
},
"staticAddress": {
"uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"orderId": "customer-42",
"label": "Ivan"
},
"refund": {
"payoutUuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "pending_approval",
"amount": "95.5",
"destinationAddress": "TXYZ…",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
}Refresh deposit (force on-chain recheck)
1.4.0: принудительная перепроверка адреса депозита в сети — когда клиент говорит «я оплатил», а tx ещё не замечена. Просроченный депозит (expired) с найденной входящей tx оживляется. Не чаще раза в 30 с на депозит (429 RATE_LIMITED). Возвращает актуальное состояние депозита.
curl --request POST \
--url https://api.example.com/v1/public/deposits/{uuid}/refresh \
--header 'X-Signature: <api-key>'import requests
url = "https://api.example.com/v1/public/deposits/{uuid}/refresh"
headers = {"X-Signature": "<api-key>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {'X-Signature': '<api-key>'}};
fetch('https://api.example.com/v1/public/deposits/{uuid}/refresh', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/v1/public/deposits/{uuid}/refresh",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"X-Signature: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/public/deposits/{uuid}/refresh"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("X-Signature", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/v1/public/deposits/{uuid}/refresh")
.header("X-Signature", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/public/deposits/{uuid}/refresh")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Signature"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"orderId": "order_42_abc",
"address": "TXYZ...abcd",
"memo": "WP-1A2B3C4D",
"assetCode": "USDT_TRC20",
"expectedAmount": "100.50",
"status": "check",
"expiresAt": "2023-11-07T05:31:56Z",
"explorerAddressUrl": "https://tronscan.org/#/address/TXYZ",
"transaction": {
"networkStatus": "confirmed",
"receivedAmount": "100.500000",
"txhash": "a1b2c3...e9f0",
"confirmations": 12,
"requiredConfirmations": 19,
"blockNumber": "65123456",
"explorerTxUrl": "https://tronscan.org/#/transaction/a1b2c3",
"detectedAt": "2023-11-07T05:31:56Z",
"paidAt": "2023-11-07T05:31:56Z",
"fromAddress": "<string>"
},
"network": "TRON",
"isFinal": false,
"amountUsd": "100.50",
"rateUsd": "1.00",
"commission": "0.50",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"accuracyPaymentPercent": "1.00",
"allowTopUp": false,
"topUp": {
"enabled": true,
"waiting": true,
"remainingAmount": "39.5",
"closedAt": "2023-11-07T05:31:56Z",
"txs": [
{
"txhash": "<string>",
"amount": "10.5",
"fromAddress": "<string>",
"confirmations": 3,
"requiredConfirmations": 19,
"confirmed": false,
"detectedAt": "2023-11-07T05:31:56Z",
"confirmedAt": "2023-11-07T05:31:56Z"
}
]
},
"staticAddress": {
"uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"orderId": "customer-42",
"label": "Ivan"
},
"refund": {
"payoutUuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "pending_approval",
"amount": "95.5",
"destinationAddress": "TXYZ…",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z"
}
}Authorizations
HMAC-SHA256-Hex(timestamp + "." + raw_body, api_secret)
Path Parameters
Response
Публичный идентификатор депозита (используйте в GET /{uuid}).
Ваш order_id (label), переданный при создании.
"order_42_abc"
Адрес для оплаты. Для memo-based сетей (TON) — общий приёмный адрес + memo.
"TXYZ...abcd"
Memo/comment (ОБЯЗАТЕЛЕН для memo-based сетей, иначе null).
"WP-1A2B3C4D"
"USDT_TRC20"
Ожидаемая сумма (string). 0 = принимаем любую сумму.
"100.50"
Бизнес-статус депозита (полный набор). Поток: check → process → confirm_check → paid | paid_over | wrong_amount. Терминальные/прочие: expired (окно мониторинга истекло), cancel, fail, system_fail, refund_process → refund_paid | refund_fail.
check, process, confirm_check, paid, paid_over, wrong_amount, expired, cancel, fail, system_fail, refund_process, refund_paid, refund_fail "check"
До какого момента сеть мониторится на оплату.
Ссылка на адрес в explorer.
"https://tronscan.org/#/address/TXYZ"
On-chain данные incoming-транзакции. null пока депозит не получил ни одной tx.
Show child attributes
Show child attributes
1.4.0: сеть актива.
"TRON"
1.4.0: терминальный ли статус — можно прекращать поллинг.
false
1.4.0: оценка суммы в USD (полученной, иначе ожидаемой).
"100.50"
1.4.0: курс актива к USD на момент ответа.
"1.00"
1.4.0: комиссия обменника (если учёт включён и депозит финализирован).
"0.50"
1.4.0: время создания депозита.
1.4.0: время последнего изменения статуса.
1.4.0: допуск недоплаты (%) для этого депозита; null — по настройкам сайта/платформы.
"1.00"
1.4.0: режим доплаты включён.
false
1.4.0: состояние режима доплаты (null, если выключен).
Show child attributes
Show child attributes
1.4.0: платёж на статический адрес — ссылка на родительский адрес (null для обычных депозитов).
Show child attributes
Show child attributes
1.4.0: последняя выплата-возврат депозита (null — возврат не запрашивался).
Show child attributes
Show child attributes