My Stripe Element doesn't load (not showing) in Android WebView during live mode, it work during test.
Here is some code :
HTML
<form action="stripe_element.php" method="post" id="payment-form">
<div class="form-row">
<hr/>
<div id="card-element">
<!-- a Stripe Element will be inserted here. -->
</div>
<!-- Used to display form errors -->
<div id="card-errors" role="alert"></div>
</div>
<button>Submit</button>
</form>
JS
var stripe = Stripe('pk_live_XXXXXXXXXXX');
var elements = stripe.elements();
var style = {
base: {
color: '#32325d',
'::placeholder': {
color: '#aab7c4'
}
}
};
// Create an instance of the card Element
var card = elements.create('card', {style: style, hidePostalCode: true});
// Add an instance of the card Element into the card-element <div>
card.mount('#card-element');
// Handle form submission
var form = document.getElementById('payment-form');
form.addEventListener('submit', function(event) {
event.preventDefault();
stripe.createToken(card).then(function(result) {
if (result.error) {
// Inform the user if there was an error
var errorElement = document.getElementById('card-errors');
errorElement.textContent = result.error.message;
} else {
stripeTokenHandler(result.token);
}
});
});
Check the first line of my JS code : var stripe = Stripe('pk_live_XXXXXXXXXXX');
, it's my publishable live key.
If I use var stripe = Stripe('pk_test_XXXXXXXXXXX');
, my publishable test key, the test work fine.
Any ideas ?
Thanks