小编Edu*_*pez的帖子

Stripe v3 - SetupIntents 和订阅

我正在尝试使用 SetupIntents 来验证和保存付款方式,然后使用它创建订阅以向客户收取所需金额(立即然后每月)。

这似乎工作正常:

  • 该卡已验证(如果需要,包括 SCA)
  • 付款方式已创建,默认附加到客户并启用以供将来使用,状态为 SUCEEDED。
  • 订阅已创建并使用上述付款方式

问题是,当提供的卡需要安全客户授权 (SCA) 时,Stripe 然后生成相应的发票和付款意图,但后者的状态为“requires_action”,即使正在使用正确的付款方式(为将来使用启用)并且已执行卡验证。

我认为使用 SetupIntents 的全部意义在于事先验证付款方式,然后能够向客户收费。

我的假设是否完全错误,或者这实际上是可能的,我可能只是遗漏了什么?

提前致谢

编辑:这是后端的订阅创建代码:

# Set the default payment method on the customer
      Stripe::Customer.update(
        stripe_customer_id,
        invoice_settings: {
          default_payment_method: @requested_source
        }
      )

subscription = Stripe::Subscription.create({
       "customer" => stripe_customer_id,
       "proration_behavior" => 'create_prorations',
       "items" => [
         [
           "plan" => "#{@stripe_plan_api_id}",
         ],
       ],
       'default_tax_rates' => [
         "#{@stripe_tax_rate_id}",
       ],
       "expand" => ["latest_invoice.payment_intent"]
     });
Run Code Online (Sandbox Code Playgroud)

stripe-payments stripe-subscriptions

8
推荐指数
1
解决办法
1917
查看次数