CardOnFile 交易规则
约 708 字大约 2 分钟
2025-05-29
什么是 CardOnFile
CardOnFile 是国际信用卡已存卡场景下的一种交易模式,用于标识商户在持卡人授权后保存并复用卡信息的交易链路。
需要区分以下三个概念:
保存卡/记住卡号:一种能力,用于提升后续支付体验Tokenization:一种凭证化实现方式,用于保存或引用支付凭证CardOnFile:一种交易模式,用于标识已存卡交易
什么时候使用
以下场景适合使用 CardOnFile:
- 首笔支付时需要同时完成绑卡,并将该交易明确标识为已存卡交易
- 后续复购、按次扣费、不固定时间的后续扣款,希望沿用同一条已存卡交易链路
- 商户后续计划基于首笔生成的 token 发起保存卡复购,并需要保持
CardOnFile模式一致性
什么时候不需要使用
以下场景通常无需传 bizType=CardOnFile:
- 仅希望保存卡信息、后续按普通一次性交易处理
- 仅校验卡号或卡要素
- 仅绑卡获取凭证,不在同一笔请求中完成支付
关键规则
1. 首笔绑卡并支付
如果首笔交易既要完成支付,又要将该链路按 CardOnFile 交易处理,以下仅展示请求中与保存卡相关的关键字段。
Hosted(prePay)
bizContent 关键字段
{
"merchantUserId": "USER_12345",
"bizType": "CardOnFile"
}Non-Hosted(unifiedPay)
bizContent 关键字段
{
"merchantUserId": "USER_12345",
"createToken": "Y",
"bizType": "CardOnFile"
}2. 后续 token 复购
如果首次生成 token 的那笔交易传入了 bizType=CardOnFile,则后续使用该 token 发起复购时,也需继续传入 bizType=CardOnFile。以下示例仅展示与规则相关的关键字段:
Non-Hosted(token 复购)
bizContent 关键字段
{
"merchantUserId": "USER_12345",
"token": "TOKEN_123456",
"bizType": "CardOnFile"
}3. 普通保存卡交易
如果首笔保存卡交易未按 CardOnFile 模式处理,则后续支付也无需因为“已经保存卡”而默认传入该参数。无论 Hosted 还是 Non-Hosted,只要需要保存卡并关联同一持卡人,都应传 merchantUserId。以下仅展示请求中与保存卡相关的关键字段。
Hosted(prePay)
bizContent 关键字段
{
"merchantUserId": "USER_12345"
}Non-Hosted(unifiedPay)
bizContent 关键字段
{
"merchantUserId": "USER_12345",
"createToken": "Y"
}无需传 bizType=CardOnFile。
4. 仅校验卡信息
如果只校验卡的有效性或卡要素,无需传 bizType=CardOnFile。
