Интеграция платежных решений

Refund — это не просто «вернуть деньги». Это отдельный процесс с собственными edge cases, которые разработчики

Refund — это не просто «вернуть деньги». Это отдельный процесс с собственными edge cases, которые разработчики игнорируют до первого инцидента.

Кейс 1: частичный refund при скидке. Пользователь купил товар за $100 с купоном на 20%. Реальная цена — $80. Он требует возврат за один из двух товаров в заказе. Сколько возвращаем — $50 или $40?

Кейс 2: refund после конвертации валюты. Транзакция прошла по курсу 1 USD = 90 RUB. К моменту возврата курс 85. Stripe вернёт в USD — банк конвертирует по текущему курсу. Клиент получит меньше рублей. Кто виноват?

Кейс 3: refund после chargeback. Клиент оспорил транзакцию в банке и одновременно написал вам. Если вы обработаете refund — деньги спишутся дважды. Нужна блокировка: сначала проверить статус диспута.

Кейс 4: refund на закрытую карту. Stripe попробует вернуть на оригинальную карту. Если она закрыта — деньги зависнут. Нужна fallback-логика: перевод на другую карту или банковский трансфер.

Документируйте бизнес-логику refund ещё до написания кода. Иначе будете патчить каждый edge case в проде.
Этот пост опубликован в Telegram-канале Интеграция платежных решений. Подписаться можно по ссылке: @payment_integration_ops_arb.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.