Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取条带支付意图方法错误_Javascript_Php_Stripe Payments - Fatal编程技术网

Javascript 获取条带支付意图方法错误

Javascript 获取条带支付意图方法错误,javascript,php,stripe-payments,Javascript,Php,Stripe Payments,下面的代码在javascript中工作,它使用付款方式返回响应,例如“pm_1HZDptHMQMk5h2YU0kai****”,我使用此付款方式收集付款,下面是条带的响应 “提供的PaymentMethod以前与PaymentIntent一起使用,没有客户附件,与连接的帐户共享,没有客户附件,或者与客户分离。它可能不再使用。要多次使用PaymentMethod,必须先将其附加到客户。” 问题是我不知道我在哪里都没有使用paymentMethod。但它仍然给了我上述信息 顺便说一下,我尝试了set

下面的代码在javascript中工作,它使用付款方式返回响应,例如“pm_1HZDptHMQMk5h2YU0kai****”,我使用此付款方式收集付款,下面是条带的响应

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

问题是我不知道我在哪里都没有使用paymentMethod。但它仍然给了我上述信息

顺便说一下,我尝试了
setup\u future\u用法:“on\u session”和“off\u 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.
      }
    }
  });
});

如果单独创建PaymentMethod(在实际将其用于PaymentIntent之前),则应遵循

如果您想创建PaymentMethod并通过PaymentIntent在一次swing中对其收费,您应该遵循

顺便说一句,我尝试使用setup\u future\u用法:“on\u session”和“off\u session”值


如果您遵循上面的第二个链接,但不是使用已经存在并以某种方式消费的PaymentMethod,那么这是可行的。

我遵循了确切的链接第一个链接,您可以具体到具体的行吗。您需要确保的一个关键问题是,您为设置意图提供了一个
客户。