Обработка колбека

V 2.0

Contents

Как только наш сервер обнаруживает транзакцию, мы делаем уведомление Интернет-магазину на указанную ссылку. Вам потребуется написать страницу обработки платежей в своем магазине, чтобы получать от нас информацию об оплатах и завершать заказы клиентов.

Наш сервис делает уведомления, начиная с 0 (не подтвержденная транзакция) и после 1 подтверждения в сети, криптовалюта будет мгновенно переведена на указанный адрес магазина, а в колбеке появятся поля хэш-транзакции и адрес получателя.

Чтобы подтвердить успешную обработку нашего колбека, Интернет-магазин должен ответить текстовым сообщением:

*ok*

После того, как мы получили *ok*, мы перестаем делать уведомления по этой транзакции.

В случае, если ответ от вашего сервера не был получен или не был верным, наш колбек-сервер будет делать новые попытки с выходом каждого блока в течение последующих трех дней.

Разница между колбеком v1 и v2 заключается в типе HTTP-метода (GET/POST) и в построении параметров в JSON. Если Вы используете процессинг v2, то следует использовать обработку колбека v2!

В этой версии колбек всегда отправляет POST запрос на указанный URL-адрес и содержит сведения об оплате и/или о форвардинге платежа.

Cloud Flare callbackПожалуйста, добавьте наш домен и/или IP адрес в белый список Cloudflare.
Иначе, мы не можем гарантировать доставку уведомлений о платежах.

Обязательно указывайте схему HTTP и HTTPS в URL-адресе для колбека. Мы также поддерживаем колбеки в TOR project logo сеть.

Параметры и переменные

В следующей таблице перечислены все POST-параметры, которые будут отправлены в запросе на сервер:

Параметры Описание Требование Поэкспериментируйте со значениями
{wallet} Идентификатор Кошелька Обязательное поле
{value}
целое число, диапазон 1-10^16

Сумма в сатоши
Сумма, которую оплатил клиент в сатоши (1 биткоин = 100 000 000 сатоши). Убедитесь, что вы все правильно обрабатываете на стороне магазина и, если нужно, разделите эту сумму на 100 000 000, чтобы получить результат в биткоинах.

Обязательное поле
{input_address}
string, 32 символа
Адрес для оплаты
Сгенерированный крипто адрес, на который клиент должен отправлять платеж.
Обязательное поле
{confirmations}
целое число, диапазон 0-1000

Количество подтверждений
Число принятых подтверждений в сети. Диапазон 0-6.

Обязательное поле
{input_transaction_hash}
строка, 32 символа

Хэш входной транзакции
Хэш транзакции клиента.

Обязательное поле
{data} Массив пользовательских параметров для платежа Опциональное поле  
  Сбросить значения Проверить колбек
Результат выполнения:
*ok*

Это неверный ответ сервера. Правильный ответ на колбек должен быть в текстовом формате без каких-либо тэгов или посторонних символов. Правильный ответ: *ok*

Спасибо. Вы сделали все правильно!
Пример колбека

Следующий блок показывает пример колбека:

{
  "wallet": "btc-83174f3721d62f0999c086b83e816ef4",
  "value" : 100000000,
  "input_address": "1E2VSRsaW3Kb1gDkdRUGDo6knAKfi9iYsb",
  "confirmations": 1,
  "input_transaction_hash": "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b",
  "data": 
  {
      "invoice_id": 1234,
      "secret": "7j0ap91o99cxj8k9"
  },
}

Пример кода обработки колбека

Если вы принимаете большие суммы, то пожалуйста, не завершайте оплату заказа по нулевому подтверждению. Потому что отправитель может создать вторую транзакцию на другой адрес, но с большей комиссией, а сеть подтвердит ее. Завершайте заказ только после 1-3 подтверждений сети.

Завершайте заказ или пополнение баланса клиентских аккаунтов только при подтвержденной транзакции, с рекомендуемыми тремя подтверждениями сети. В этом случае вы будете уверены, что платеж поступит к вам. Второй пример на языке PHP демонстрирует это.