条纹式收费客户,但不保存付款方式

时间:2019-10-03 14:22:12

标签: stripe-payments

我有一个与Stripe集成的付款系统,允许重复付款和一次性付款。默认情况下,我们将信用卡信息保存在客户身上,以方便后续付款,但对于一次性付款,我希望允许客户选择退出保存付款信息,同时仍将付款与Stripe::Customer关联。

保存付款方式并附加到客户后,我们可以使用以下方式一次性收费:

Stripe::Charge.create(
  {
    source: payment_card_id,
    customer: customer.id,
    amount: total,
  }
)

另外,我们可以通过与客户相关的一次性费用,而无需通过以下方式保存卡:

Stripe::Charge.create(
  {
    source: stripe_token,
    amount: total,
  }
)

但是,尽管这笔费用不能保存付款方式,但也不会将这笔费用附加到客户身上。与客户和stripe_token进行收费会导致错误*** Stripe::InvalidRequestError Exception: Customer {customer.id} does not have a linked source with ID #{token_id}.

Stripe::Charge.create(
  {
    source: stripe_token,
    customer: customer.id,
    amount: total,
  }
)

有没有办法让客户选择单笔付款,同时允许他们选择不保存付款信息?

0 个答案:

没有答案