Автоматический POSTBACK

После успешного выполнения платежа на указанный в настройках проекта URL для уведомлений отправляется POST запрос с информацией о платеже.

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

Название параметраТип данныхЗначенияПримерОписание

status

string

success

success

Статус выполнения запроса

invoice_id

string

id

DZLF4212

Уникальный идентификатор платежа

amount_crypto

decimal

sum

0.4567

Сумма платежа в криптовалюте

currency

string

BTC

LTC

ETH

USDT_TRC20 USDT_ERC20 USDC_TRC20 USDC_ERC20 TUSD_TRC20 TUSD_ERC20

BTC

Код валюты

order_id

string

id

ORD99999

Идентификатор заказа магазина

token

string

token

eyJ0eXAiOiJKV1QiLCJhbGciOiJIAcI1NiJ9.eyJpZCI6MTMsImV4cCI6MTYzMTc4NjQyNn0.HQavV3z8dFnk56bX3MSY5X9lR6qVa9YhAoeTEHkaAzs

JWT токен

JWT Токен — подпись ответа от сервера. Подписывается секретным ключом (SECRET KEY), который генерируется в настройках проекта. Дополнительно в токен добавлен UUID счета. Действует токен в течение 5 минут после создания уведомления. Генерируется каждый раз при отправке уведомления об оплате.

Алгоритм шифрования — HS256.

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

{
   "status": "success",
   "invoice_id": “DZLF4212,
   "amount_crypto": 0.4567,
   "currency": “BTC“,
}

Пример обработчика POSTBACK

from flask import Flask, request, jsonify

app = Flask(__name__)

@app.route('/postback', methods=['POST'])
def handle_postback():
    data = request.json
    status = data.get('status')
    invoice_id = data.get('invoice_id')
    amount_crypto = data.get('amount_crypto')
    currency = data.get('currency')
    order_id = data.get('order_id')
    token = data.get('token')
    
    # ... your code for processing postback ...
    
    return jsonify({'message': 'Postback received'}), 200

if __name__ == '__main__':
    app.run(port=5000)

Last updated