EC compliance

Stripe SAQ-A 準拠 の EC 統合 チェックリスト 2026 — 法令 + 冪等 + Webhook

PCI DSS SAQ-A とは

PCI DSS の 自己 質問票 の 中で最も 軽い 24 質問。 前提: カード情報 を 自社 で 一切 保管 / 処理しない (Stripe Checkout redirect 型 のみ 該当)。 EC-Autopilot は 標準 で SAQ-A 型、 iframe embed 版 (SAQ-A-EP) は非採用。

Stripe Checkout の 実装 5 step

Step 1: server で Session 発行 (customer_email / line_items / mode)。 Step 2: 顧客 を Session URL に redirect。 Step 3: 顧客 が Stripe UI で 決済。 Step 4: success_url / cancel_url で 顧客 が 戻る。 Step 5: Webhook で 決済完了 検知 → 注文 状態 更新。

Webhook 冪等化 の 6 パターン

同一 event.id を 2 度 受信、 event 順序 逆転、 payload 一部欠損、 signature mismatch、 network timeout、 replay attack。 EC-Autopilot の Webhook consumer は これら 6 パターン を testcontainers で 網羅 テスト、 副作用 は 必ず 1 度 のみ (idempotency_key + DB unique constraint)。

Stripe Radar (不正検知)

Stripe Radar は ML 型 不正検知、 追加費用 なし で AI が 自動判定。 高リスク 判定 = block、 中リスク = review queue。 EC-Autopilot は Radar 判定 + 独自加点 (¥30,000 以上 は自動 hold、 短時間 連続注文 は hold) の 2 段構え。

特商法 表記 の 必須 9 項目

販売者名 / 住所 / 電話 / メール / 販売価格 / 送料 / 支払方法 / 引渡時期 / 返品条件。 これら は 商品ページ から 1 click で 到達可能 でなければ 特商法違反。 EC-Autopilot は テナント 登録時 に 9 項目 を強制 入力、 各 商品 ページ footer に 自動 埋込。

返金 flow (人の承認 gate)

¥10,000 以上 の 返金 は 必ず 人 (owner ロール) の 承認 gate。 Stripe Refund API は 冪等 (idempotency_key 必須)、 partial refund 対応、 返金理由 は 監査ログ に必ず記録 (未記録 の 返金 は Stripe が 30 日後 に 自動 refund 拒否 する 可能性)。

SAQ-A 24 質問 の 対応 例

「Q1: カード会員データ を 自社 で保管していない?」= 「はい」(Stripe Checkout redirect 型)。 「Q7: 攻撃者 が cardholder data 環境 に 入 込む 経路 は?」= 「該当 なし (自社 では 一切扱わない)」。 EC-Autopilot は 全 24 質問 の 回答テンプレ を 標準 提供。

Stripe monthly cost 試算

決済手数料 3.6 % (カード) / 3.4 % (JCB 除く) / 2.4 % (デビット) / ¥170 / 件 (コンビニ払い)。 月商 100 万円 = 決済手数料 3.6 万円 = Shopify Payments 相当。 EC-Autopilot は Stripe のみ、 Shopify Payments / PAY.JP 等 は Phase 2 で 追加検討。

References