Accepter un paiement Przelewy24
Découvrez comment accepter Przelewy24 (P24), le moyen de paiement le plus populaire en Pologne.
Mise en garde
Nous vous recommandons de suivre le guide Accepter un paiement, sauf si vous devez exécuter la confirmation manuelle côté serveur, ou si votre intégration requiert la présentation de moyens de paiement de manière distincte. Si vous avez déjà intégré Elements, consultez le Guide de migration du Payment Element.
Avec le moyen de paiement à usage unique Przelewy24, le client doit authentifier son paiement. Pour effectuer un paiement avec Przelewy24, votre client quitte votre site Web, autorise le paiement sur le site de Przelewy24, puis est redirigé vers votre site Web. Vous recevez alors une notification immédiate vous indiquant si le paiement a abouti ou s’il a é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.
Créer un PaymentIntentCôté serveurCôté client
Un PaymentIntent représente votre intention d’encaisser un paiement auprès d’un client et suit le cycle de vie du processus de paiement.
Côté serveur
Créez un PaymentIntent
sur votre serveur et précisez le montant à encaisser et la devise dans les paramètres amount
, eur
ou pln
. Si vous avez déjà une intégration Payment Intents, ajoutez p24
à la liste des types de moyens de paiement.
Au lieu de transmettre à l’application la totalité de l’objet PaymentIntent, renvoyez sa clé secrète du client. Il s’agit d’une clé unique qui vous permet de confirmer le paiement et d’actualiser les informations de paiement côté client, le tout sans autoriser la manipulation d’informations sensibles comme le montant du paiement.
Côté client
Côté client, demandez un PaymentIntent depuis votre serveur et sauvegardez sa clé secrète du client.
Libellés de relevé bancaire avec Przelewy24
Vous pouvez définir un libellé de relevé bancaire personnalisé avant de confirmer le PaymentIntent. Pour Przelewy24, le libellé de relevé bancaire est limité à 14 caractères. Il apparaît dans les documents bancaires de votre client dans la description du paiement, au format /OPT/X/////P24-XXX-XXX-XXX {statement_
, où /OPT/X/////P24-XXX-XXX-XXX
constitue la référence unique du paiement généré par Przelewy24.
Collecter les informations du moyen de paiementCôté client
Dans votre application, recueillez l’adresse e-mail de votre client. Créez un objet PaymentMethodCreateParams
à l’aide des informations de facturation.
Envoyer le paiement à StripeCôté client
Récupérez la clé secrète du client auprès du PaymentIntent que vous avez créé, puis appelez la fonction confirm de PaymentLauncher. Une page Web s’affiche dans laquelle le client peut finaliser le paiement. Une fois l’opération terminée, onPaymentResult
est appelé avec le résultat du paiement.