Автоматический POSTBACK
После успешного выполнения платежа на указанный в настройках проекта URL для уведомлений отправляется POST запрос с информацией о платеже.
Параметры запроса
status
string
success
success
Статус выполнения запроса
invoice_id
string
id
DZLF4212
Уникальный идентификатор платежа
amount_crypto
decimal
sum
0.4567
Сумма платежа в криптовалюте
currency
string
BTC, LTC, TRX, USDT_TRC20, USDD_TRC20 , ETH, USDT_ERC20, USDC_ERC20, TUSD_ERC20, SHIB_ERC20, ETH_ARB, USDT_ARB, USDC_ARB, ETH_OPT, USDT_OPT, USDC_OPT, ETH_BASE, USDC_BASE, BNB, USDT_BSC, USDC_BSC, TUSD_BSC, TON, USDT_TON, SOL, USDT_SOL, USDC_SOL
BTC
Код валюты
order_id
string
id
ORD99999
Идентификатор заказа магазина
token
string
token
eyJ0eXAiOiJKV1QiLCJhbGciOiJIAcI1NiJ9.eyJpZCI6MTMsImV4cCI6MTYzMTc4NjQyNn0.HQavV3z8dFnk56bX3MSY5X9lR6qVa9YhAoeTEHkaAzs
JWT токен
Пример ответа
{
"status": "success",
"invoice_id": "XXXXXXXX",
"amount_crypto": 100,
"currency": "USDT_TRC20",
"order_id": "order_id",
"token": b"token",
"invoice_info": {
"uuid": "INV-XXXXXXXX",
"created": "2024-08-22 11:49:59.756692",
"address": "address",
"currency": {
"id": 4,
"code": "USDT",
"fullcode": "USDT_TRC20",
"network": {
"code": "TRC20",
"id": 4,
"icon": "https://cdn.cryptocloud.plus/currency/crypto/TRX.svg",
"fullname": "Tron"
},
"name": "Tether",
"is_email_required": false,
"stablecoin": true,
"icon_base": "https://cdn.cryptocloud.plus/currency/icons/main/usdt.svg",
"icon_network": "https://cdn.cryptocloud.plus/icons-currency/USDT-TRC20.svg",
"icon_qr": "https://cdn.cryptocloud.plus/currency/icons/stroke/usdt.svg",
"order": 1
},
"date_finished": "2024-08-22 11:51:53.753528",
"expiry_date": "2024-08-23 11:49:59.746385",
"side_commission": "client",
"type_payments": "crypto",
"amount": 100,
"amount_": 100,
"status": "overpaid",
"invoice_status": "success",
"is_email_required": false,
"project": {
"id": 0,
"name": "My Project",
"fail": "",
"success": "",
"logo": ""
},
"tx_list": [
""
],
"amount_in_crypto": null,
"amount_in_fiat": 0.0,
"amount_usd": 100.0,
"amount_to_pay": 102.0,
"amount_to_pay_usd": 102.0,
"amount_paid": 102.0,
"amount_paid_usd": 102.0,
"fee": 1.4,
"fee_usd": 1.4,
"service_fee": 0.8048,
"service_fee_usd": 0.8,
"received": 99.7952,
"received_usd": 99.8,
"to_surcharge": 0.0,
"to_surcharge_usd": 0.0,
"total_rub": 0,
"step": 3,
"test_mode": false,
"type": "up",
"aml_enabled": false,
"aml_side": "merchant",
"aml_checks": [],
"links_invoice": null
}
}
Пример обработчика POSTBACK
from flask import Flask, request, jsonify
app = Flask(__name__)
@app.route('/postback', methods=['POST'])
def handle_postback():
# Изменено на request.form для обработки данных в формате x-www-form-urlencoded
status = request.form.get('status')
invoice_id = request.form.get('invoice_id')
amount_crypto = request.form.get('amount_crypto')
currency = request.form.get('currency')
order_id = request.form.get('order_id')
token = request.form.get('token')
# ... ваш код для обработки postback ...
return jsonify({'message': 'Postback received'}), 200
if __name__ == '__main__':
app.run(port=5000)
Мы регулярно работаем над улучшением документации сервиса для разработчиков. Пожалуйста, оцените качество и полезность материалов по ссылке.
Last updated
Was this helpful?