paymentRequest Local

Uses local stripe.js

by Atty Eleti

HTML

<script src="https://atty.ngrok.io/fingerprinted/js/stripe.bundle.js"></script>
<div id="payment-request"></div>

JavaScript

const stripe = Stripe('pk_test_XakUmadAhww1gsag7dfdmnD9');
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) {
    const prButton = elements.create('paymentRequestButton', {
      paymentRequest,
    });
    prButton.mount('#payment-request');
  } else {
    document.querySelector('#payment-request').style.display = 'none';
  }
});