Перейти к содержимому
Карточка требования
Все требования
FR-022MVPНадёжностьТребование источникаПоказано в приложении

Идемпотентность платежей, команд и событий

Повтор одной логической операции возвращает прежний результат и не создаёт второй финансовый эффект, вторую бронь или вторую команду.

Исходный смысл и ценность

Идемпотентность платежей, команд и событий. Повторы не создают второй финансовый эффект или команду.

Защищает деньги и оборудование от повторных действий пользователя и сети.

Акторы и предусловия

Акторы

СистемаПлатёжный провайдерCSMS

Предусловия

  • Есть ключ идемпотентности
  • Событие имеет стабильный внешний ID

Основной поток

  1. 1Система получает запрос или событие.
  2. 2Проверяет ключ идемпотентности и предыдущий результат.
  3. 3При повторе возвращает существующий результат.
  4. 4При новом событии выполняет операцию один раз и сохраняет след.

Альтернативные потоки

  • Тот же ключ с другими параметрами — конфликт и безопасная ошибка.
  • При неизвестном исходе повтор не создаётся автоматически.
  • Поздний webhook — сопоставляется, при конфликте создаётся сверка.

Ключевая проверка

Повторы не создают второй финансовый эффект или команду.

Статус реализации: Кнопка повтора webhook в админке не создаёт новых проводок; финализация повторно не списывает.

Трассировка