開発者ツール
テスト用クレジットカード番号一覧
Stripe・PayPal・Square・Braintree のテスト用カード番号を一覧表示。ブランド別・成功 / 失敗パターン別に整理し、ワンクリックでコピーできます。決済実装・テスト時にご利用ください。
[[ labels.stripe_hint ]]
| Service | [[ labels.col_number ]] | [[ labels.col_brand ]] | [[ labels.col_behavior ]] | |
|---|---|---|---|---|
| [[ card.service ]] | [[ formatNumber(card.number) ]] | [[ card.brand ]] [[ labels['subtype_' + card.subtype] ]] | [[ behaviorLabel(card.behavior) ]] |
Tips
- Stripe のテストモードでは、CVC は任意の 3 桁(Amex は 4 桁)、有効期限は未来の任意の日付、郵便番号は任意の 5 桁で通過します。本番キーを使わない限り実際に請求は発生しません。
- テスト番号はすべて Luhn チェック(カード番号の検証アルゴリズム)をパスするよう設計されています。フロントエンドのバリデーションで弾かれることなく、ゲートウェイ側でテストシナリオを再現できます。
- 3D Secure(3DS) のテストには専用カードを使います。
4000002500003155は認証ダイアログが表示されるシナリオ、4000000000003220は 3DS 2 フローのテストに使います。 - 本番環境でテスト番号を使うと処理が拒否されます。テストキーとテスト番号はセットで使うことを必ず守ってください。Stripe の場合、テストキーは
sk_test_で始まります。
よくある質問
テストキー(
sk_test_ など)と組み合わせて使う限り、実際の請求は一切発生しません。本番キーを使った場合はテスト番号でも処理が試みられるため、誤って本番キーを使わないよう注意してください。Stripe の場合、CVC は任意の数字(Visa・Mastercard は 3 桁、Amex は 4 桁)、有効期限は未来の任意の日付(例: 12/34)、郵便番号は任意の 5 桁で通過します。PayPal・Square・Braintree も同様にサンドボックス環境では入力値の厳密なチェックは行われません。
カード番号の桁数・並びが有効かどうかを確認する計算式です。右から 1 桁おきの数字を 2 倍にして各桁を足し合わせ、合計が 10 の倍数になれば有効と判定します。タイプミスの大半を弾けますが、実在するカードかどうかは判定できません。
「4242...」はゾロ目で覚えやすく、かつ Luhn チェックを通過するよう設計されているためです。Stripe がこの番号を公式ドキュメントで長年使い続けたことで、決済開発者の間でデファクトスタンダードとなりました。
余談ですが ― Luhn アルゴリズム ― 1954 年に生まれたカード番号の守護者
クレジットカード番号の末尾に付く「チェックディジット」は、1954 年に IBM のエンジニア Hans Peter Luhn が考案したアルゴリズムで検証されます。右端から 2 桁ずつの数字を 2 倍にして各桁を合計し、10 で割り切れれば有効という単純な計算です。このアルゴリズムは現在も Visa・Mastercard・Amex を含む主要ブランドで採用されており、タイプミスによる誤入力の大半を弾くことができます。
ただし Luhn チェックはあくまで「桁の誤り検出」に特化しており、実在するカードかどうかは判定しません。フォームのクライアントサイドバリデーションで Luhn チェックを使うのはあくまで UX の改善(即時エラー通知)であり、不正利用の防止にはなりません。実際の与信確認は必ずサーバーサイドで決済ゲートウェイを通じて行う必要があります。
テスト用カード番号は、各決済サービスが 意図的に Luhn チェックを通過するよう設計した固定番号です。例えば Stripe の 4242424242424242 はゾロ目で覚えやすい上に Luhn 検証も通過します。番号自体に意味はなく、Stripe のシステム内で「成功」「失敗」などの動作にマッピングされているにすぎません。