Je n'arrive pas à trouver un moyen de préremplir l'adresse e-mail dans la fenêtre contextuelle de paiement par bandes. Cependant, ce week-end, je me suis inscrit à deux comptes sur des sites Web qui utilisent des paiements par bande et j'ai réalisé que ces sites Web avaient pré-rempli mon e-mail dans la boîte de dialogue iframe de la bande. Je sais donc qu'il doit y avoir un moyen, mais je ne sais pas comment procéder. Les documents ne définissent pas cette propriété. Quelqu'un peut-il expliquer comment cela se fait en utilisant l'API javascript et la boîte de dialogue Stripe de base?
Si vous utilisez Simple Checkout vous passez l'e-mail dans data-email
Comme ceci:
<form action="/charge" method="POST">
<script
src="https://checkout.stripe.com/checkout.js" class="stripe-button"
data-key="pk_test_6pRNASCoBOKtIshFeQd4XMUh"
data-image="/img/documentation/checkout/marketplace.png"
data-name="Stripe.com"
data-description="2 widgets"
data-amount="2000"
data-email="[email protected]"
data-locale="auto">
</script>
</form>
Si vous utilisez Custom Checkout vous passez l'e-mail dans le paramètre email
à handler.open()
:
handler.open({
name: 'Stripe.com',
description: '2 widgets',
amount: 2000,
email: "[email protected]"
});
Si vous souhaitez définir dynamiquement l'e-mail (pour Simple Checkout) à l'aide de js, vous devez créer dynamiquement l'élément de script entier pour vous assurer qu'il se charge correctement. Cela peut être fait comme ceci:
//create our stipe script element
var stripescript = document.createElement('script'); //create script element
//dynamicaly load stripe checkout attributes
stripescript.setAttribute('src','https://checkout.stripe.com/checkout.js');
stripescript.setAttribute("data-key","[YOUR STRIPE TOKEN]" )
stripescript.setAttribute("data-amount","90" )
stripescript.setAttribute("data-locale","auto")
stripescript.setAttribute("class","stripe-button")
stripescript.setAttribute("data-billing-address",true)
stripescript.setAttribute("data-panel-label","Update")
stripescript.setAttribute("data-currency","gbp")
// any other attributes you want to add stripescript.setAttribute("[name]","[value]")
//insert script element inside of div or an other element
document.getElementById('[ID OF ELEMENT YOU WANT TO PUT THE FORM INTO]').appendChild(stripescript);