如何让Stripe订阅改用客户默认付款方式(无需重建订阅)
解决Stripe订阅改用客户默认付款方法的问题
- 问题根源:订阅创建时指定了具体的
default_payment_method,导致订阅不再自动使用客户的默认付款方式——即便客户后续更新了默认付款方法,订阅仍会绑定旧的付款方法。 - 原代码无效原因:Stripe API不会处理
undefined类型的参数,因此设置default_payment_method: undefined无法清除订阅绑定的付款方法。
正确的解决方案
将订阅的default_payment_method设置为null,这会触发Stripe清除订阅绑定的特定付款方法,让订阅后续自动使用客户的默认付款方式:
const subscription = await stripe.subscriptions.update( subscriptionId, { default_payment_method: null } );
验证操作是否生效
更新完成后,可通过Stripe Dashboard或API查询该订阅:
- 确认订阅的
default_payment_method字段已变为null - 测试下一次自动扣费是否使用客户当前的默认付款方法
内容的提问来源于stack exchange,提问作者Dave
相关产品推荐
相关产品推荐

