Сначала проверьте уведомление
Обработчик принимает запрос только по защищённому соединению, проверяет подпись провайдера и сопоставляет заказ, сумму и валюту. Данные из адресной строки страницы успеха для активации подписки не подходят.
Один платёж изменяет срок один раз
У каждого события есть уникальный идентификатор. Перед продлением система проверяет, не обработано ли оно ранее. После успешного изменения подписки идентификатор сохраняется вместе с результатом.
Если провайдер повторит вебхук пять раз, клиент всё равно получит только тот срок, который оплатил.
Отвечайте быстро, тяжёлую работу повторяйте
Если внешний сервис временно недоступен, событие сохраняется для повторной обработки. Интервалы между попытками увеличиваются, а после нескольких ошибок задача попадает в список для проверки.
Повторять нужно операцию с тем же идентификатором, а не создавать новый заказ.
Проверяйте оплаты автоматически
Даже надёжные вебхуки полезно дополнять сверкой: сервис запрашивает у провайдера незавершённые заказы и сравнивает их с локальными статусами. Это закрывает редкие случаи длительного сбоя доставки.
Для владельца сервиса результат должен выглядеть просто: один платёж, один понятный статус и правильная дата окончания подписки.
Быстрый доступ
на ваших устройствах
Откройте AiVi VPN или узнайте, как запустить сервис под своим брендом