Stripe payments 条带支付意图:更新并确认支付金额的变化

Stripe payments 条带支付意图:更新并确认支付金额的变化,stripe-payments,e-commerce,Stripe Payments,E Commerce,我正在为一个在线购物网站实施stripe,该网站在“余额”系统上运行,用户在该系统中输入他们想在其交易余额中存入的金额,并提交信用卡信息以进行存款 我不知道如何避免在支付确认时对stripe进行两个连续的api调用:一个是用html表单中的存款当前值更新支付金额,另一个是 以下是我理解的约束条件: 条带需要,以便用其信用卡表单填充iframe 为了简化存款体验,我希望用户在我的网站上输入存款金额的处于活动状态,并与条带iframe同时以相同的模式显示 stripe api似乎不允许您在确认时发送

我正在为一个在线购物网站实施stripe,该网站在“余额”系统上运行,用户在该系统中输入他们想在其交易余额中存入的金额,并提交信用卡信息以进行存款

我不知道如何避免在支付确认时对stripe进行两个连续的api调用:一个是用html表单中的存款当前值更新支付金额,另一个是

以下是我理解的约束条件:

  • 条带需要,以便用其信用卡表单填充iframe
  • 为了简化存款体验,我希望用户在我的网站上输入存款金额的
    处于活动状态,并与条带iframe同时以相同的模式显示
  • stripe api似乎不允许您在确认时发送新的付款“金额”。当我从客户端发送一个新的金额参数时,如:
    stripe.confirmCardPayment(clientSecret,{payment\u method:{card:stripeCardeElement},amount:depositAmount})
    ,我收到一个错误:
    {code:“参数未知”,文档url:https://stripe.com/docs/error-codes/parameter-unknown,消息:“接收到未知参数:金额”,参数:“金额”,付款意图:对象{id:“pi_1IV21CGYTBSx8jHSRsJ1bLls”,对象:“付款意图”,金额:2000,…},类型:“无效的请求错误”}
    。请注意,“amount”参数对于更新支付api调用很有效(请参见下面的第4页)
  • api要求您在更新完成后确认支付意图,并将响应发送回客户端。在stripe文档中:“根据您更新的属性,您可能需要再次确认PaymentIntent。例如,更新PaymentIntent方法将始终要求您再次确认PaymentIntent。如果您希望同时更新和确认,我们建议改为通过confirm API更新属性。”

  • 如果是这样,则需要我的支付确认工作流涉及到两次到stripe api的同步行程:第一次更新金额,第二次确认支付。有什么办法可以避免这种情况吗?

    amount
    不是
    confirmCardPayment
    的可接受参数。创建
    PaymentIntent
    服务器时,必须指定
    金额。如您所述,它也不可通过
    PaymentIntent
    confirm
    进行更新。但是,根据您的流量,您可以在确认之前,通过更新
    PaymentIntent
    更新
    金额。您可以通过webhook同步或异步地执行此操作