Выполнение заказа
Настройка вебхуков
Если вы хотите получать уведомления о событиях (например, о статусе оплаты товара), настройте вебхуки в Личном кабинете:
- Откройте ваш проект в Личном кабинете.
- Нажмите Настройки проекта в боковом меню и перейдите в раздел Вебхуки.
- Установите переключатель Вебхуки в положение Вкл.
- Укажите URL-адрес, на который вы хотите получать вебхуки.
- Секретный ключ проекта для подписи вебхуков генерируется по умолчанию. Если вы хотите изменить его, нажмите значок обновления.
- Нажмите Сохранить настройки.
Рекомендуется реализовать обработку основных типов вебхуков:
Вебхук | Описание |
---|---|
Проверка существования пользователя | Отправляется на разных этапах оплаты, чтобы удостовериться, что пользователь зарегистрирован в игре. |
Успешный платеж | Отправляется, когда заказ оплачен, и содержит информацию о данных платежа и детали транзакции. |
Успешная оплата заказа | Отправляется, когда был получен ответ об успешной обработке вебхука Успешный платеж. Содержит информацию о купленных товарах и идентификатор транзакции. Используйте данные вебхука для начисления товаров пользователю. |
Возврат платежа | Отправляется, когда заказ был отменен, и содержит информацию о данных отмененного платежа и детали транзакции. |
Частичный возврат платежа | Отправляется, когда заказ был частично отменен, и содержит информацию о данных отмененного платежа и детали транзакции. |
Обработчик вебхуков
Обработчик вебхуков – это программный код, который позволяет принимать поступающие вебхуки на указанный URL-адрес, генерировать подпись и отправлять ответ на вебхук на сервер Иксоллы.
Генерация подписи
При получении вебхука необходимо обеспечить безопасность передачи данных. Для этого из данных вебхука необходимо сгенерировать подпись и проверить, что она совпадает с подписью, отправленной в заголовке HTTP-запроса.
Чтобы сгенерировать подпись:
- Осуществите конкатенацию JSON из тела запроса и секретного ключа проекта.
- Примените SHA-1 криптографическую хэш-функцию к получившейся на первом шаге строке.
Отправка ответов на вебхук
Чтобы подтвердить получение вебхука, ваш сервер должен вернуть:
204
HTTP-код без тела сообщения в случае успешного ответа.400
HTTP-код с описанием проблемы, если указанный пользователь не был найден или если передана недействительная подпись.
Ваш обработчик вебхуков также может возвращать код 5xx
при временных проблемах на вашем сервере.
Если на вебхуки Успешная оплата заказа и Отмена заказа не был получен ответ или получен ответ с кодом 5xx
, осуществляется повторная отправка вебхуков по следующему расписанию:
- 2 попытки с интервалом 5 минут;
- 7 попыток с интервалом 15 минут;
- 10 попыток с интервалом 60 минут.
Максимально осуществляется 20 попыток отправки вебхуков в течение 12 часов с момента первой попытки.
Если на вебхук Успешный платеж не был получен ответ или получен ответ с кодом 5xx
, также осуществляется повторная отправка вебхуков через увеличивающийся временной интервал. Максимально осуществляется 12 попыток в течение 12 часов.
Если на вебхук Проверка существования пользователя не был получен ответ или получен ответ с кодом 400
или 5xx
, повторная отправка вебхука Проверка существования пользователя не осуществляется.
Пользователь увидит ошибку, вебхуки Успешный платеж и Успешная оплата заказа отправлены не будут.
Начисление покупки пользователю
После успешного завершения оплаты реализуйте начисление покупки пользователю в игре на вашей стороне. Чтобы получать оповещения об успешных платежах и детали заказа, настройте следующие вебхуки:
Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.