我有一个与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,
}
)
有没有办法让客户选择单笔付款,同时允许他们选择不保存付款信息?