決済
Stripe を本番に載せるまでと、載せたあとに起きたこと。
StripeのList Customers APIをメールだけで照合すると、第三者が既存顧客を上書きできる2026-10-26ステータス不変のunconditional updateがcurrent dateをresetし、deadlineが動く2026-10-25PostgreSQLのunique constraintがhash keyのdirection欠落でdedup衝突2026-10-22Stripe webhookが500で再送されても領収書は二度と送られない2026-10-21入金消込のreconcilePaymentは入金額を照合せず入金済にしていた2026-10-18広告枠のcompany_idは契約終了後も残留し、自社枠チェックだけでは元顧客が終了枠に無審査で掲載できていた2026-10-17Supabase Authのemail_existsはメール重複でユーザー作成に失敗、救済できず無音の穴に2026-10-16durationSec上限300秒を入力時に見ておらず、合計時間上限を超えても保存後の配信時に恒久400エラー2026-10-15StripeのfallbackToInvoiceがメール送信失敗を送付済みと誤って数えた2026-10-15一括申込みでbundleUnavailableを足すまで、一部だけ失敗した原因がユーザーに伝わらなかった2026-10-14snapshotSignedPoliciesはSupabaseのupdateがnullの時だけ効き、二度目は効かない2026-10-13署名済み申込書が、signed_terms_source_versionを見ず現行規約を同意済みと表示2026-10-09Stripe Checkoutの二重セッションで、負けたPaymentIntentがholdを巻き戻す2026-10-07招待のcompany_idで重複申込みをチェックすると、共有リンク経由では常にnullになる2026-10-05契約月数を延長すると、term_monthsを見た帳票表示だけ金額とズレる2026-09-25Stripe Checkout amount_unsetで「7日で自動切替」が永久に発動しない2026-09-24招待経路の申込ページがsp.unitsをそのまま表示し、確定枚数と食い違い2026-09-23直接申込に入れたfail-closedガードが、団体配分と招待発行の別経路には無かった2026-09-19掲載枠のstart_monthが未設定だと、契約periodがNULLで満了処理が止まる2026-09-172タブで完了した2本のPaymentIntent、負けた側のwebhookが与信を巻き戻す2026-09-09空文字のcontractIdがinvalid input syntax for type uuidを起こす2026-09-07Stripe webhook冪等台帳のINSERT失敗、23505以外も200で握り潰していた2026-09-03規約改定の再同意フォームがauto_renewをリセットしない2026-08-30決済成功後のDB反映失敗をカード失敗と誤認し、二重請求になりかけた2026-08-28契約更新のたびに枠を複製し、旧行を終了し忘れると在庫定員が二重に消費される2026-08-26セット割引の判定を「保有しているか」だけにすると、買い増すたびに再発する2026-08-24Checkout Session の期限を省くと、離脱した予約が24時間分の席を占有する2026-08-22CHECK 制約を張り替えるたび、別ブランチが足した値が消えていた2026-08-18supabase-js の条件付き UPDATE は error を見ないと処理済み判定を誤る2026-08-16