当前位置: 首页 > 知识库问答 >
问题:

获取条带支付意向方法错误

屠晟睿
2023-03-14

下面的代码在javascript工作,它返回的响应的付款方式,例如'PM_1HZDPTHMQMK5H2YU0KAI****',我用这个付款方式收取付款,下面是条带的响应。

“提供的PaymentMethod以前与没有客户附件的PaymentIntent一起使用,与没有客户附件的连接帐户共享,或者与客户分离。它不能再次使用。若要多次使用PaymentMethod,必须先将其附加到客户”。

问题是,我不知道我没有在任何地方使用支付方法。但它仍然在给我上面的信息。

顺便说一下,我尝试使用setup_future_usage:'on_session'和'off_session'值

  var stripe = Stripe('pk_test_51H1xOmHMQMk5h2YUX7ShAMdjy9************************');
var elements = stripe.elements();
var style = {
  base: {
    color: "#32325d",
  }
};

var card = elements.create("card", { style: style });
card.mount("#card-element");
card.on('change', ({error}) => {
  const displayError = document.getElementById('card-errors');
  if (error) {
    displayError.textContent = error.message;
  } else {
    displayError.textContent = '';
  }
});

var form = document.getElementById('payment-form');

form.addEventListener('submit', function(ev) {
  ev.preventDefault();
  stripe.confirmCardPayment('pi_1HZDaPHMQMk5h2YUga3QwB2E******************', {
    payment_method: {
      card: card,
      billing_details: {
        name: 'Jony',
      }
    },
    setup_future_usage: 'on_session'
  }).then(function(result) {
    if (result.error) {
        console.log(result);
      // Show error to your customer (e.g., insufficient funds)
      console.log(result.error.message);
    } else {
      // The payment has been processed!
      if (result.paymentIntent.status === 'succeeded') {
          alert('success');
        // Show a success message to your customer
        // There's a risk of the customer closing the window before callback
        // execution. Set up a webhook or plugin to listen for the
        // payment_intent.succeeded event that handles any business critical
        // post-payment actions.
      }
    }
  });
});

共有1个答案

佴保臣
2023-03-14

如果您要单独创建PaymentMethod(在实际将其用于PaymentIntent之前),则应遵循https://stripe.com/docs/payments/save-and-reuse

如果您希望创建PaymentMethod并通过PaymentIntent一次性对其收费,则应遵循https://stripe.com/docs/payments/save-dimer-payment

顺便说一下,我尝试使用setup_future_usage:'on_session'和'off_session'值。

 类似资料:
  • 我正在尝试使用PaymentIntent执行带区支付。我在stripe网站上读到了以下内容(链接) 在服务器上使用金额和货币创建PaymentIntent。始终要决定在服务器端(一个受信任的环境)而不是客户端收取多少费用。这就防止了恶意客户能够自行选择价格。 我不明白如何决定在服务器端收取多少费用。我的应用程序有一系列的项目要买,每一个项目都有价格应用程序是一个市场和价格清单在客户端,所以我决定多

  • 对不起,我对编码很陌生,所以我不知道很多缩写/速记的东西。所以我正在使用React和C#尝试使用Stripe来处理付款,我已经到了取回、和付款方式Id的地步,但是当我运行代码时: 我得到了一个错误: 没有这样的支付意图。这是一个404,用于/v1/payment\u intent/confirm 我猜这意味着支付意图实际上没有被创建,因为它也没有出现在Stripe仪表板上。我不知道该怎么解决这个问

  • 使用此方法确认付款意图时,我收到以下错误

  • 我正在尝试按照本教程集成Stripe的自定义支付流:https://stripe.com/docs/payments/integration-builder 电子邮件和user_id仍然没有被传递,并且在Stripe Dashboard上返回为空。但是,正如我所说的,付款是成功的。但是,我需要将它链接到一个user_id,电子邮件。来使用它。请帮帮忙。提前道谢。

  • 我试图通过firebase函数将添加到条带的最后一张卡设置为默认卡,尽管我似乎无法让它工作。

  • 我想这可能是由于虚拟卡的详细信息,但我注入了我的真实卡的详细信息,但仍然相同的错误。 谁能帮我查一下,让我知道我在这里遗漏了什么吗?