paymentRequest

HTML

<script src="https://js.stripe.com/v3/"></script>
<div id="payment-request"></div>

JavaScript

const stripe = Stripe('pk_test_AMooxRgDCR1uJdtZ8VtP2ohB');
const elements = stripe.elements({locale: 'auto'});

const paymentRequest = stripe.paymentRequest({
  country: 'US',
  currency: 'usd',
  total: {
    label: 'Demo total',
    amount: 1000,
  },
});

console.log(paymentRequest);

paymentRequest.on('token', ({complete, token}) => {
  /*fetch('/charges', {
    method: 'POST',
    body: JSON.stringify({token: token.id}),
  })
    .then(() => complete('success'))
    .catch(() => complete('fail'));*/
  complete('success');
});

// Check the availability of the Payment Request API first.
paymentRequest.canMakePayment().then((result) => {
  if (result.available) {
    const prButton = elements.create('paymentRequestButton', {
      paymentRequest,
    });
    prButton.mount('#payment-request');
  } else {
    document.querySelector('#payment-request').style.display = 'none';
  }
});