【问题标题】:Stripe: Make transfers from a user's card and not from my account balanceStripe:从用户卡而不是我的账户余额进行转账
【发布时间】:2021-05-24 03:07:46
【问题描述】:

我已经关注了 Stripe 的documentation to make transfers。我收到一条错误消息,告诉我我的余额中没有足够的资金。就我而言,我不想从我的帐户中转帐,而是从进行购买的用户的卡中转帐。我指定我需要进行转帐,因为我可以连接多个帐户以进行一次付款。

这是我遵循的步骤:

  1. 在客户端(Flutter),我要求用户输入他的银行卡信息。然后,我生成一个 PaymentMethod 对象,并将其发送到我的服务器 (Node.js)。
  2. (服务器端),我执行paymentIntent.create方法
const paymentIntent = await stripe.paymentIntents.create({
      amount: amount,
      currency: "eur",
      payment_method: paym,// id get from client side
      payment_method_types: ["card"],
      transfer_group: "{ORDER1}",
    });
  1. (服务器端),创建传输
        const transfer1 = await stripe.transfers.create({
          amount: amount / 2,
          currency: "eur",
          destination: "acct_###########",
          transfer_group: "{ORDER1}",
          source_transaction: ?,
        });

我知道我必须填写 source_transaction 字段才能在 PaymentIntent 和 Transfer 之间建立链接。我可以使用 charge 字段在 PaymentIntent 对象中检索此信息,但它是空的。这意味着我必须先在客户端验证付款,然后才能进行转账。

仅当我在客户端验证它时,我在执行时收到以下错误No such payment_intent

StripePayment.confirmPaymentIntent(PaymentIntent(
                paymentMethodId: result.data['paymentIntent']['payment_method'],
                clientSecret: result.data['paymentIntent']['client_secret']))

我做错了什么或遗漏了什么?你有一个简单实现的例子吗? 感谢您的宝贵时间。

【问题讨论】:

  • 您需要指定来源。
  • @Wils 你能解释一下吗?

标签: node.js flutter stripe-payments


【解决方案1】:

您应该能够将支付意图 ID 用作 source_transaction 值。

【讨论】:

  • 不,我必须注明费用
猜你喜欢
  • 2021-09-24
  • 2018-08-06
  • 2019-08-22
  • 2015-03-14
  • 1970-01-01
  • 2021-03-03
  • 2016-09-23
  • 1970-01-01
  • 2021-10-09
相关资源
最近更新 更多