Почему платёжный callback создаёт второй заказ

Callback должен обновлять существующий заказ по стабильному ID, а не повторно выполнять сценарий оформления. Учитывают повторные уведомления.

Почему платёжный callback создаёт второй заказ — рабочая ситуация по теме статьи

Платёжные системы часто повторяют callback-уведомление об оплате, если не получили быстрое подтверждение от вашего сервера — без защиты от повтора это создаёт второй заказ на ту же оплату.

Используйте ID транзакции как идемпотентный ключ

Каждая оплата имеет уникальный ID транзакции от платёжной системы. Перед созданием заказа проверяйте, не был ли этот ID уже обработан — если был, просто подтвердите получение повторного callback без повторного создания заказа.

Отвечайте платёжной системе быстро

Обработку заказа (отправку писем, обновление склада) стоит выносить в отдельный процесс после быстрого подтверждения получения callback — если платёжная система не получает ответ вовремя, повтор callback практически гарантирован по её собственной логике.

FAQ

Частые вопросы по теме

01Можно применить рекомендации из статьи к существующему проекту?

Да. Если сайт, реклама или интеграция уже работают, сначала проверяем текущую реализацию и предлагаем изменения без обязательной полной переделки.

02Сколько стоит связанная работа?

Стартовая стоимость услуги «Вебхуки и событийные интеграции» — От 15 000 ₽. Точная оценка зависит от текущего проекта и объёма изменений.

03Что прислать для оценки?

Ссылку на сайт или сервис, короткое описание проблемы и пример ожидаемого результата. Доступы и подробное ТЗ для первого ответа обычно не нужны.

Дальше

Ещё материалы по теме

Вопрос по проекту

Покажите текущую ситуацию

Ссылка и короткое описание обычно полезнее длинного ТЗ. Мы увидим тему статьи в источнике заявки и не заставим повторять контекст.

Связаться

Старт

Можно прийти
просто с задачей.

Без готового ТЗ. Достаточно описать, что нужно запустить, исправить или связать.

Получить оценку

Коротко опишите задачу