测试用信用卡号大全【2026年最新】— Braintree/Stripe/PayPal/Square

汇总 Braintree、Stripe、PayPal、Square 最新测试卡号(虚拟卡号),按品牌及成功/失败模式分类,支持一键复制,方便快速完成支付功能开发与测试。

[[ 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) ]]

什么是测试用信用卡号

开发支付功能时,需要在不使用真实卡片的情况下重现"成功"、"余额不足"、"卡片被盗"等各种结果。为此,各大支付服务商都提供了一组固定卡号,服务器端会将其与特定结果绑定。本页汇总了 Stripe、PayPal、Square、Braintree 当前的测试卡号,按品牌与结果分类,方便按需筛选并一键复制。

这些号码只在沙盒环境中才有意义。只要搭配测试密钥使用,就绝不会产生真实扣款;若误配生产密钥,交易只会被直接拒绝,因为生产系统不会将这些号码识别为真实卡片。请务必将密钥与卡号成对切换,并留意各服务商会不定期更新测试号码,如遇行为异常,请查阅对应服务商的最新官方文档。

使用方法

  1. 选择支付服务标签页 选择正在对接的服务(Stripe、PayPal、Square 或 Braintree),表格便只显示该服务的卡号。
  2. 按所需结果筛选 使用"成功"、"失败"或"3D Secure"筛选器,锁定正在测试的场景,例如错误处理流程。
  3. 复制卡号 点击对应行的"复制"按钮,即可将卡号存入剪贴板,直接粘贴到支付表单中使用。
  4. 填写 CVC 与有效期 CVC 填任意数字(Amex 为 4 位),有效期填未来任意日期即可,无需精确的数值。

用好本工具的小技巧

  • Stripe 测试模式下,CVC 填写任意 3 位数字(Amex 为 4 位),有效期填写未来任意日期,邮政编码填写任意 5 位数字即可通过。使用测试密钥不会产生真实扣款。
  • 所有测试卡号均经过专门设计,可通过 Luhn 校验(卡号验证算法)。因此不会被前端验证拦截,可直接在网关端复现测试场景。
  • 3D Secure(3DS) 测试需使用专用卡号。4000002500003155 会触发认证弹窗,4000000000003220 用于测试 3DS 2 流程。
  • 在生产环境中使用测试卡号会导致交易被拒。请务必将测试密钥与测试卡号配套使用。Stripe 的测试密钥以 sk_test_ 开头。

常见应用场景

验证新接入的支付流程

刚接入支付表单后,先用一个成功卡号跑通一次,可以最快确认密钥配置和请求结构是否正确。

完善错误处理逻辑

利用对应余额不足、卡片过期、CVC 错误等结果的卡号,可以逐一检查每种失败情况下展示给用户的提示是否恰当。

测试 3D Secure 流程

使用专用的 3DS 卡号,可以完整走通认证弹窗到返回应用的跳转流程,这是实现时容易遗漏的环节。

编写 QA 测试用例文档

把卡号与结果的对应关系直接写进测试脚本,测试人员就无需每次都重新查找。

为自动化测试套件生成固定数据

相同的固定卡号也可以作为测试夹具接入持续集成,让支付流程在每次构建时都能得到一致的验证。

支付测试术语表

测试密钥
仅在沙盒环境中有效的 API 密钥。Stripe 的测试密钥以 sk_test_ 开头,使用它可以确保不会产生真实资金变动。
沙盒环境
与生产环境完全隔离的验证环境,可以自由重现成功与失败,而不会影响真实资金。
Luhn 校验
一种校验和算法,用于判断卡号的数字排列是否有效。能识别输入错误,但无法确认该卡片是否真实存在。
BIN / IIN
卡号开头的 6 至 8 位数字,用于在校验其余号码之前先识别发卡银行和卡组织。
CVC / CVV
印在卡片上的 3 位(Amex 为 4 位)安全码。沙盒环境下填写任意数字即可通过。
3D Secure
结账过程中额外的身份验证步骤。专用的测试卡号会触发该弹窗,方便测试完整流程。
预授权
为确认卡片是否有可用额度而进行的临时冻结操作。实际扣款要等到后续的"入账"环节才会完成。

常见问题

只要与测试密钥(如 sk_test_)配合使用,就不会产生任何真实扣款。如果误用了生产密钥,即使是测试卡号也会尝试处理交易,请务必注意不要混用。

在 Stripe 中,CVC 填写任意数字(Visa/Mastercard 为 3 位,Amex 为 4 位),有效期填写未来任意日期(如 12/34),邮政编码填写任意 5 位数字即可通过。PayPal、Square、Braintree 的沙盒环境同样不会严格验证这些输入值。

这是一种用于验证卡号位数和排列是否有效的计算公式。从右端起每隔一位数字乘以 2,将所有位数之和相加,若结果能被 10 整除则判定为有效。此算法能识别大多数手误,但无法判断卡片是否真实存在。

"4242..." 因重复数字而便于记忆,且经过专门设计可通过 Luhn 校验。由于 Stripe 多年来在官方文档中持续使用该号码,它已成为支付开发者之间的事实标准。
工具君

闲话 ― Luhn 算法 ― 自 1954 年守护卡号的校验机制

信用卡号末尾的"校验位"由 IBM 工程师 Hans Peter Luhn 于 1954 年设计的算法进行验证。从右端起每隔一位数字乘以 2,将所有位数之和相加,结果能被 10 整除即为有效。这一简单算法至今仍被 Visa、Mastercard、Amex 等主要品牌采用,能有效识别大多数因手误造成的输入错误。

但 Luhn 校验仅用于检测数字输入错误,无法判断卡片是否真实存在。在前端表单中使用 Luhn 校验仅是 UX 优化(即时错误提示),无法防止欺诈。真正的授权验证必须通过服务端的支付网关来完成。

测试卡号是各支付服务刻意设计为能通过 Luhn 校验的固定号码。例如 Stripe 的 4242424242424242 不仅便于记忆,也能通过 Luhn 验证。卡号本身没有实际意义,只是在 Stripe 系统内被映射到特定行为(如"成功"或"失败")。