【问题标题】:Stripe with PaymentIntents. Following subscription makes new charge带有 PaymentIntents 的条纹。订阅后产生新费用
【发布时间】:2019-07-07 09:11:50
【问题描述】:

我刚刚将我的代码更新为 Stripe Payment Intents API,我想在付款后立即订阅一个计划。

  • 当客户安装应用程序时,会创建一个带有试用期的订阅
  • 当他想支付更长的时间时,他会进入一个页面,首先选择他想要的计划,然后填写他的客户信息(姓名、邮件等)。

    李>
  • 然后我用这四个信息向/payment_intents发出一个post请求:

    • 金额(计划金额)

    • 货币

    • payment_method_type[]

    • 客户

  • 然后我将请求返回的 client_secret 发送到我的 js 脚本以处理付款。

如果付款成功,我会在 POST /subscription/id 上更新订阅 并设置 trial_end=now

但在仪表板上,我在客户页面上看到有两笔付款:

我(我想我)知道第二笔费用是由订阅支付的,但是我如何在不创建新费用的情况下进行订阅?

感谢您的帮助!

【问题讨论】:

    标签: stripe-payments


    【解决方案1】:

    如果付款成功,我会在 POST /subscription/id 上更新订阅并设置 trial_end=now

    这会立即结束订阅的试用期并立即尝试向客户收费。这就是为什么您有两项指控 - 一项来自付款意图,一项来自结束试用期。

    不过,我不太了解您的流程。通常你会以相反的方式这样做:

    1. 创建付款意图并处理付款。
    2. 成功后,然后创建订阅并设置 trial_end=now+30days(例如,如果您使用 30 天的计费周期),因为客户已经通过付款意图。

    编辑:对于最近阅读此内容的任何人,Billing 现在原生支持 PaymentIntents(每张发票都使用一个 PaymentIntent),因此您无需使用此试用期方法。 https://stripe.com/docs/billing/subscriptions/payment有当前的使用方法!

    【讨论】:

    • 谢谢,我不是很了解 trial_end 的用法,但现在清楚了。解决了我的问题,谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-20
    • 2018-10-17
    • 2015-11-12
    • 1970-01-01
    • 2021-04-01
    相关资源
    最近更新 更多