Stripe如何优先从客户Credit balance扣款,不足部分从银行卡补扣?
Stripe客户信用余额抵扣支付问题解答
核心疑问答复
你之前了解到的「Stripe会优先从客户Credit balance扣款,不足部分再从支付方式补扣」的规则仅适用于Stripe Billing发票场景,你直接创建普通Charge的场景不会触发该自动逻辑,这就是你目前操作时始终优先扣银行卡的核心原因。
两种实现方案
方案1:使用Stripe内置自动抵扣机制(推荐)
无需手动计算抵扣差额,完全由Stripe系统完成逻辑:
- 走Stripe Billing发票流程,针对60美元的订单创建对应金额的发票
- 系统会自动识别客户账户内的50美元信用余额,先行抵扣该部分金额,剩余10美元自动从客户默认支付方式/结账时提交的支付方式扣款
- 核心调用API为
Invoice Create API,无需额外配置抵扣规则,只要客户账户有对应币种的正信用余额即可自动生效
方案2:手动实现抵扣逻辑
如果你的业务流程不支持使用Stripe发票体系,需要自行完成全流程逻辑:
- 第一步:调用客户信息查询接口,获取客户当前可用信用余额
- 第二步:计算本次订单可抵扣的信用余额额度,调用
Customer Balance Update API扣减对应金额,留存操作凭证 - 第三步:针对剩余待支付的差额,单独创建Charge从客户指定支付方式扣款即可
注意事项
- 客户信用余额按币种独立存储,订单币种与信用余额币种不一致时无法完成抵扣
- 手动调整客户信用余额时建议添加明确的交易备注,方便后续对账核对
内容的提问来源于stack exchange,提问作者Faran Khan
相关产品推荐
相关产品推荐

