案件概要
稼働中のECサイトで決済の重複請求・注文不整合が発生していた事象に緊急対応。原因の切り分けから恒久対策までを短期間で実施し、決済フローの信頼性を回復しました。障害対応と並行して再発防止の仕組みを整え、運用が継続できる状態に立て直しました。
課題
- ・決済処理と注文確定が非同期で整合を取れておらず、重複請求・注文欠落が断続的に発生していた
- ・ログ・監視が不足しており、事象の再現と原因特定に時間がかかっていた
- ・決済代行APIのエラーハンドリングが不十分で、通信失敗時に不整合が残る設計だった
実施内容
- ・決済〜注文確定を冪等性のある設計に見直し、決済トランザクションと注文状態の整合を担保する仕組みを実装
- ・決済フローの全ステップに構造化ログと監視・アラートを導入し、異常を即時検知できる体制を構築
- ・決済代行APIのリトライ/タイムアウト/補償処理を整備し、通信失敗時も不整合が残らないフローへ改修
成果
- 重複請求・注文不整合の発生をゼロに抑制し、返金・問い合わせ対応の工数を大幅に削減
- 監視導入により決済異常の検知時間を数時間から数分に短縮
- 冪等性設計により、以降のキャンペーン等アクセス急増時も決済処理を安定稼働
技術情報
言語
PHP / TypeScript / Python
フレームワーク
Laravel / Next.js
インフラ
AWS (ECS / RDS / SQS / CloudFront)
データベース
MySQL / Aurora
CMS
CI / CD
GitHub Actions / Docker
監視・運用
CloudWatch / Datadog / Sentry
その他
Stripe / SQS / 冪等キー / Webhook



