Как сообщить по SMS о неудачной оплате и не подтвердить заказ

Как сообщить по SMS о неудачной оплате и не подтвердить заказ

После неудачной онлайн-оплаты интернет-магазину нужно сообщить клиенту, что платёж не подтверждён, и сохранить заказ в корректном статусе. Для этого SMS отправляют по результату проверки платежа, а не сразу после нажатия кнопки «Оплатить». В статье разобраны статусы, безопасная логика отправки, текст уведомления и действия, которые помогут не принять неоплаченный заказ за оплаченный.

Когда отправлять SMS о неудачной оплате?

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

Если платёж отклонён или не завершён, заказу присваивают соответствующий статус, например «Ожидает оплаты» или «Оплата не прошла». Конкретные названия зависят от настроек магазина. SMS в этом случае сообщает о проблеме и подсказывает, как вернуться к оплате или связаться с магазином.

Если ответ от платёжной системы задерживается, не отправляйте сообщение «Оплата не прошла» только из-за паузы. Платёж ещё проверяется. Лучше оставить заказ в ожидании и отправить нейтральное уведомление о том, что подтверждение пока не получено.

Для оплат через ЕРИП может пригодиться отдельная схема уведомлений: в статье о SMS-уведомлениях об оплате счёта через ЕРИП разобран этот способ оплаты.

Как связать статус платежа и отправку сообщения?

Настройте отправку так, чтобы система проверяла статус заказа перед каждой SMS. В простом варианте логика выглядит так: магазин получает результат платежа, обновляет статус заказа и только затем выбирает подходящий текст. Если результат не пришёл, система оставляет заказ на проверке и не сообщает клиенту, что деньги не поступили.

  1. После оформления заказа сохраните его номер и статус «Ожидает оплаты».
  2. Получите ответ платёжного сервиса или дождитесь плановой повторной проверки.
  3. При подтверждённой оплате переведите заказ в статус «Оплачен» и отправьте подтверждение.
  4. При отказе или незавершённой оплате отправьте сообщение с подходящим объяснением.
  5. Если платёж не получил окончательный статус, не меняйте заказ на «Оплачен» или «Оплата не прошла» без проверки.

Для интеграции через API важно сопоставить события платёжной системы со статусами магазина. Отдельно проверьте повторные уведомления: если одна и та же информация приходит несколько раз, система не должна отправлять клиенту несколько одинаковых SMS или повторно создавать уже обработанный заказ.

Уведомление об оплате и сообщение о неудачной попытке должны запускаться разными событиями. Так проще проверить, почему клиент получил конкретный текст: в журнале видно событие, статус заказа и время отправки.

Что написать клиенту при незавершённой оплате?

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

Пример для отклонённой оплаты: «Заказ №{{номер}} пока не оплачен: платёж не подтверждён. Попробуйте оплатить заказ повторно в личном кабинете или свяжитесь с магазином».

Пример при задержке подтверждения: «Заказ №{{номер}} оформлен. Мы проверяем статус оплаты и сообщим результат отдельно. Если деньги уже списались, не оплачивайте заказ повторно до подтверждения».

Перед отправкой проверьте, что номер заказа подставляется правильно, а ссылка, если она есть, ведёт именно к оплате этого заказа. Если повторная оплата недоступна, не предлагайте её в SMS: укажите рабочий способ обратиться в магазин.

Какие ошибки приводят к неверному подтверждению заказа?

  • Отправлять SMS об успешной оплате сразу после возврата клиента на сайт, не проверив статус платежа.
  • Считать отсутствие ответа подтверждением отказа или списания денег.
  • Повторять отправку уведомления при каждом техническом обновлении одного и того же статуса.
  • Предлагать оплатить заказ повторно, пока первый платёж ещё проверяется.
  • Не проверять статус перед передачей заказа в сборку или доставку.

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

Начните с карты событий: запишите, какой статус приходит от платёжной системы, какой статус ставит магазин и какое SMS отправляется в каждом случае. Затем проверьте тестовый заказ с задержкой подтверждения. Такая проверка покажет, не уходит ли сообщение об отказе раньше результата.