После таймаута мобильное приложение повторило запрос и создало два платежа
Мобильное приложение отправляет запрос на создание платежа. Сеть подтормаживает, клиент получает таймаут и автоматически повторяет запрос с тем же телом.
В результате в системе два платежа на одну и ту же сумму, у клиента списано дважды.
Как вы это оформите?
- Дефект интеграции: при повторе с тем же ключом идемпотентности сервис должен вернуть уже созданный платёж
- Дефекта нет: таймаут — сетевая проблема, дубли разбирает поддержка вручную по обращению клиента
- Дефект на стороне клиента: мобильному приложению нельзя автоматически повторять запрос после таймаута, повтор должен запускать сам пользователь
- Нужно проверять только время ответа: если сервис укладывается в таймаут, дублей не возникнет
