J'essaie d'utiliser Stripe v3 pour le paiement. Le guide est ici https://stripe.com/docs/elements
Je ne veux pas collecter le code postal. Cependant, je ne peux pas comprendre comment. Mon HTML est:
<form>
<label>
<div id="card-element" class="field is-empty"></div>
<span><span>Credit or debit card</span></span>
</label>
<button type="submit">Pay</button>
<div class="outcome">
<div class="error" role="alert"></div>
<div class="success">
Success! Your Stripe token is <span class="token"></span>
</div>
</div>
</form>
Et javascript c'est:
var card = elements.create('card', {
style: {
hidePostalCode: true,
base: {
iconColor: '#666EE8',
color: '#31325F',
lineHeight: '40px',
fontWeight: 300,
fontFamily: '"Helvetica Neue", Helvetica, sans-serif',
fontSize: '15px',
'::placeholder': {
color: '#CFD7E0',
},
},
}
});
card.mount('#card-element');
Mais il demande toujours le code postal:
Vous trouverez un guide de la balise Element ici https://stripe.com/docs/stripe.js#element-types . Mais je ne vois pas où je pourrais récupérer le numéro de carte, le CVC et l'expiration de la carte, mais PAS le code postal ...
Heureusement, cela devrait être une solution assez simple! hidePostalCode: true
devrait être une propriété de niveau supérieur dans votre options
, plutôt que d'être imbriqué sous style
ici.
https://stripe.com/docs/stripe.js#element-options
var card = elements.create('card', {
hidePostalCode: true,
style: {
base: {
iconColor: '#666EE8',
color: '#31325F',
lineHeight: '40px',
fontWeight: 300,
fontFamily: '"Helvetica Neue", Helvetica, sans-serif',
fontSize: '15px',
'::placeholder': {
color: '#CFD7E0',
},
},
}
});
card.mount('#card-element');
Pour supprimer la collection de code postal, procédez comme suit dans l'extrait de code javascript:
var style = {//styling
//lots of style stuff
};
var card = elements.create('card', {hidePostalCode: true, style: style});