Назад к руководствам
Команда Pulse2Pay8 января 2025 г.2 мин чтения

Понимание процесса криптоплатежей

Изучите полный жизненный цикл платежа от создания счёта до подтверждения через webhook.

Понимание процесса криптоплатежей важно для построения надёжной интеграции.

Обзор жизненного цикла платежа

┌─────────────┐    ┌──────────────┐    ┌─────────────┐    ┌───────────┐

│ Создание │───▶│ Клиент │───▶│ Блокчейн │───▶│ Webhook │

│ платежа │ │ платит │ │ подтверждает│ │ отправлен│

└─────────────┘ └──────────────┘ └─────────────┘ └───────────┘

PENDING PENDING CONFIRMED CONFIRMED

Этап 1: Создание платежа

При оформлении заказа ваш сервер создаёт платёж:

POST /api/merchant/v1/payments

{

"amount": "50.00",

"currency": "USDT",

"network": "TRON",

"tokenStandard": "TRC20"

}

API возвращает уникальный TRON адрес:

{

"paymentId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",

"status": "pending",

"amount": "50.00",

"currency": "USDT",

"network": "TRON",

"generatedAddress": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",

"expiresAt": "2025-01-15T10:30:00.000Z"

}

Этап 2: Страница оплаты

Отобразите понятный интерфейс:

  • Сумма: Точная сумма USDT
  • Адрес: TRON адрес с кнопкой копирования
  • QR-код: Сканируемый мобильными кошельками
  • Таймер: Оставшееся время (30 минут)
  • Сеть: Укажите "TRON (TRC-20)"
  • Этап 3: Мониторинг блокчейна

    После отправки USDT клиентом:

  • Обнаружение: Сканер обнаруживает транзакцию (~30 секунд)
  • Проверка: Сумма соответствует с допуском (0.01 USDT)
  • Подтверждение: Ожидание 19 подтверждений (~1 минута)
  • Этап 4: Webhook уведомление

    При подтверждении отправляется webhook:

    {
    

    "id": "evt_a1b2c3d4_1705320600000",

    "type": "payment.confirmed",

    "createdAt": "2025-01-15T10:10:00.000Z",

    "data": {

    "paymentId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",

    "status": "confirmed",

    "amount": "50.00",

    "currency": "USDT",

    "network": "TRON",

    "netAmount": "49.50",

    "feeAmount": "0.50",

    "txHash": "a1b2c3d4...",

    "generatedAddress": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",

    "confirmations": 19

    }

    }

    Обработка особых случаев

    Недоплата

    Если клиент отправил меньше требуемой суммы:

  • Платёж помечается как underpaid
  • Отправляется webhook payment.underpaid
  • Поля receivedAmount, expectedAmount и underpaidAmount показывают детали
  • Переплата

    Если клиент отправил больше требуемой суммы:

  • Платёж помечается как overpaid
  • Отправляется webhook payment.overpaid
  • Поля receivedAmount, expectedAmount и overpaidAmount показывают детали
  • Истечение срока

    После 30 минут без достаточной оплаты:

  • Статус меняется на expired
  • Отправляется webhook payment.expired
  • Связанные руководства

  • Приём USDT платежей
  • Безопасность Webhook
  • Тарифы и комиссии
  • #checkout#процесс-платежа#интеграция

    Готовы начать?

    Создайте аккаунт мерчанта и начните принимать криптоплатежи уже сегодня.