Accepter un paiement Alipay
Découvrez comment accepter des paiements par Alipay, un portefeuille électronique très répandu en Chine.
Alipay est un moyen de paiement à usage unique qui nécessite l’authentification du paiement par le client. Pour effectuer un paiement, les clients sont redirigés depuis votre site Web ou application, autorisent le paiement via Alipay, puis reviennent vers votre site Web ou application. Vous recevez alors une notification immédiate indiquant si le paiement a abouti ou échoué.
Configurer StripeCôté serveurCôté client
Tout d’abord, il vous faut un compte Stripe. Inscrivez-vous.
Côté serveur
Pour cette intégration, votre serveur doit être doté d’endpoints qui communiquent avec l’API Stripe. Utilisez les bibliothèques officielles pour accéder à l’API Stripe depuis votre serveur :
Côté client
Le SDK Stripe Android est disponible en open source et fait l’objet d’une documentation complète.
Pour installer le SDK, ajoutez stripe-android
au bloc dependencies
de votre fichier app/build.gradle :
Remarque
Pour obtenir de plus amples informations sur la version la plus récente du SDK et ses versions antérieures, consultez la page des versions sur GitHub. Pour savoir quand une nouvelle version est disponible, surveillez les versions du référentiel.
Configurez le SDK avec votre clé publique Stripe de façon à ce qu’il puisse envoyer des requêtes à l’API Stripe, par exemple à la sous-classe Application
:
Remarque
Utilisez vos clés de test lors de vos activités de test et de développement et vos clés du mode production pour la publication de votre application.
Les échantillons de code de Stripe utilisent également OkHttp et GSON pour envoyer des requêtes HTTP à un serveur.
Intégrer le SDK AlipayCôté client
Pour les paiements dans l’application qui utilisent le flux de redirection d’application à application d’Alipay, vous devez intégrer le SDK Alipay. Si vous ne souhaitez pas intégrer le SDK Alipay, le SDK Stripe utilise une vue Web pour rediriger votre client vers Alipay. L’intégration du SDK Alipay permet une expérience plus transparente pour vos clients, mais augmente le poids total de votre application. Pour en savoir plus, consultez la page Utiliser une vue Web.
Une fois le fichier d’archive décompressé, ajoutez alipaySdk-{version}.
au répertoire libs
de votre application. Ajoutez le dossier libs
à la liste référentielle des dépendances de votre projet :
allprojects { repositories { flatDir { dirs 'libs' } } }
Ajoutez la dépendance à votre application :
dependencies { // ... // Replace {version} with the version number of the Alipay SDK that you downloaded above implementation(name:"alipaySdk-{version}", ext:"aar") }
Créer un PaymentIntentCôté serveur
Un PaymentIntent est un objet qui représente votre intention d’encaisser un paiement auprès de votre client et suit le cycle de vie du processus de paiement. Créez un PaymentIntent
sur votre serveur et précisez le montant à encaisser ainsi qu’une devise prise en charge. Si vous avez une intégration Payment Intents existante, ajoutez alipay
à la liste des types de moyens de paiement.
Rediriger l'utilisateur vers le portefeuille AlipayCôté client
Demandez un PaymentIntent depuis votre serveur et stockez sa clé secrète du client.
Lorsque votre client appuie sur le bouton pour payer via Alipay, confirmez le PaymentIntent à l’aide du confirmAlipayPayment
de Stripe. Vous devez également fournir un AlipayAuthenticator pour transmettre les données du SDK Stripe au SDK Alipay. L’authentificateur appelle la méthode payV2
d’Alipay avec la chaîne de données fournie. Le SDK Alipay ouvre l’application Alipay (si elle est installée) ou affiche sa propre interface utilisateur et communique automatiquement le résultat au SDK Stripe.
Remarque
Le SDK Android Alipay ne prend pas en charge les paiements de test. Pour tester pleinement cette intégration, utilisez le mode production.
Devises prises en charge
Vous pouvez créer des paiements Alipay dans les devises correspondant à votre pays. La devise locale par défaut pour Alipay est le cny
. Les clients voient également le montant de leurs achats s’afficher en cny
.
Devise | Pays |
---|---|
cny | Tous les pays |
aud | Australie |
cad | Canada |
eur | Allemagne, Autriche, Belgique, Bulgarie, Chypre, Danemark, Espagne, Estonie, Finlande, France, Grèce, Irlande, Italie, Lettonie, Lituanie, Luxembourg, Malte, Norvège, Pays-Bas, Portugal, République tchèque, Roumanie, Slovaquie, Slovénie, Suède, Suisse |
gbp | Royaume-Uni |
hkd | Hong Kong |
jpy | Japon |
myr | Malaisie |
nzd | Nouvelle-Zélande |
sgd | Singapour |
usd | États-Unis |
Si vous détenez un compte bancaire dans une autre devise et souhaitez créer un paiement Alipay dans cette devise, veuillez contacter le service Support. Les devises supplémentaires sont prises en charge au cas par cas.