Проверить Stripe state
Смотрите не только Checkout Session, но и Payment Intent. Иногда session canceled, а пользователь повторил оплату позже.
- succeeded, failed, processing, canceled.
- duplicate payments by email and amount.
- receipt email status.
монеты и webhook
Сценарий для двойных списаний, failed payments, processing payments, canceled checkout и задержек webhook.
Цель: не запускать платный результат без подтверждения оплаты и не оставлять оплатившего клиента без доступа.
что спросить сначала
Смотрите не только Checkout Session, но и Payment Intent. Иногда session canceled, а пользователь повторил оплату позже.
Если Stripe succeeded, но Supabase не обновился, это webhook gap. Не заставляйте клиента платить снова.
После подтверждения оплаты восстановите reading access, отправьте письмо и добавьте внутренний note.
шаблоны ответов
Stripe показывает processing.
Проверяем статус оплаты
Ваш платёж сейчас отображается как обрабатываемый. Пожалуйста, не оплачивайте повторно, пока мы проверяем статус. Если оплата подтвердится, мы восстановим доступ к свитку; если нет, подскажем следующий безопасный шаг.
Есть два succeeded payment по одному сценарию.
Проверяем возможное двойное списание
Я вижу, что могла возникнуть повторная попытка оплаты. Мы проверим платежи по вашему email и, если подтвердится двойное списание за один и тот же свиток, оформим корректировку согласно Refund Policy.
красные флаги
закрыто, когда
связанные двери