Paiements Multibanco avec SourcesBêta
Utilisez Sources pour accepter des paiements Multibanco, le moyen de paiement le plus répandu au Portugal.
Avertissement
L’API Sources est obsolète, et nous prévoyons de ne plus prendre en charge les moyens de paiement locaux. Si votre intégration Multibanco utilise l’API Sources, vous devez migrer vers l’API Payment Methods.
Pour plus d’informations sur l’intégration de Multibanco avec les API actuelles, voir Paiements Multibanco.
Les utilisateurs de Stripe en Europe et aux États-Unis peuvent accepter des paiements Multibanco de leurs clients situés au Portugal à l’aide de Sources, un chemin d’intégration unique pour la création de paiements à l’aide de toute méthode prise en charge.
Lors du processus de paiement, un objet Source est créé, puis votre client est redirigé vers le site Web de Multibanco, vers votre propre site Web ou vers un distributeur automatique de billets Multibanco afin d’envoyer les fonds. Une fois l’opération effectuée, votre intégration utilise la source pour envoyer une demande de paiement et effectuer le paiement.
Multibanco est un moyen de paiement de type push, à usage unique et synchrone. Cela signifie qu’une action de votre client est requise pour que le montant vous soit envoyé par le biais d’un destinataire. Le virement de fonds peut prendre de quelques minutes à 7 jours, car votre client doit vous envoyer les fonds en dehors de votre tunnel de paiement. Une fois les fonds reçus, le montant peut être débité immédiatement. Ce débit est suivi d’une confirmation immédiate de la réussite ou de l’échec du paiement.
Créer un objet Source
Un objet Source
est créé soit côté client à l’aide de Stripe.js, soit côté serveur avec l’endpoint de création de source, en utilisant les paramètres suivants :
Paramètre | Valeur |
---|---|
type | multibanco |
amount | Entier positif exprimé dans la plus petite unité monétaire représentant le montant à facturer au client (par exemple, 1099 pour un paiement de 10,99 EUR). |
currency | eur (Les paiements Multibanco doivent toujours être exprimés en euros). |
redirect[return_ | L’URL vers laquelle le client doit être redirigé après le processus d’autorisation. |
owner[email] | L’adresse e-mail complète du client. |
Pour créer une source avec Stripe.js, commencez par intégrer la bibliothèque sur votre site Web et configurez votre clé API publiable. Après cela, utilisez la méthode createSource
suivante pour créer une source côté client :
stripe.createSource({ type: 'multibanco', amount: 1099, currency: 'eur', owner: { name: 'Jenny Rosen', email: 'jenny.rosen@example.com', }, redirect: { return_url: '__TOKEN_PLACEHOLDER_0__', }, }).then(function(result) { // handle result.error or result.source });
Quelle que soit la méthode utilisée, Stripe renvoie un objet Source
contenant les informations pertinentes pour le moyen de paiement utilisé. Les informations propres à Multibanco sont fournies dans le sous-hachage multibanco
.
{ "id": "src_16xhynE8WzK49JbAs9M21jaR", "object": "source", "amount": 1099, "client_secret": "src_client_secret_UfwvW2WHpZ0s3QEn9g5x7waU", "created": 1445277809, "currency": "eur", "flow": "receiver", "livemode": true, "owner": {
Création de sources dans les applications mobiles
Si vous développez une application iOS ou Android, vous pouvez implémenter des sources à l’aide de nos SDK mobiles. Pour en savoir plus, consultez notre documentation sur les sources pour iOS ou Android.
Demander au client d'envoyer les fonds
Lorsque vous créez une source, son état initial est pending
(en attente). À ce stade, la source ne peut pas être utilisée pour effectuer une demande de paiement. Pour régler par Multibanco, votre client doit autoriser un transfert de fonds en provenance de son compte bancaire. Il lui faudra pour cela utiliser un ordinateur, un téléphone ou un distributeur automatique de billets et fournir les numéros de référence et d’entité que vous lui aurez indiqués.
Les marchands portugais affichent souvent ces informations dans leur tunnel de paiement après la confirmation d’achat du client et les indiquent généralement dans un e-mail de confirmation de commande.
En utilisant l’attribut redirect[url]
de l’objet Source
, vous pouvez également rediriger votre client vers une page hébergée par Multibanco qui affichera ces détails pour vous. Multibanco redirigera ensuite votre client vers l’URL indiquée sous redirect[return_
, que les fonds aient été envoyés ou non.
Une fois les fonds envoyés par le client, l’état de l’objet Source
passe à chargeable
(débitable). Vous pouvez alors débiter la source et finaliser la transaction. Faute de quoi, au bout de six heures, l’état de la source passera à canceled
(annulé).
Lors de la redirection de votre client vers votre site Web, Stripe renseigne automatiquement les paramètres GET suivants dans l’URL redirect[return_
:
source
: une chaîne indiquant l’ID initial de l’objetSource
livemode
: indique s’il s’agit d’un paiement réel (true
) ou non (false
)client_
: permet au retour du client de confirmer qu’il s’agit bien du client ayant déclenché la création de la source (les ID de source ne sont pas considérés comme secrets)secret
Quand vous spécifiez l’URL redirect[return_
, vous pouvez inclure tout autre paramètre dont vous avez besoin. Dans ce cas, n’utilisez pas les noms de paramètres ci-dessus, car les valeurs de vos paramètres seraient alors remplacées par celles que nous générons automatiquement.
Applications mobiles
Pour intégrer Multibanco dans une application mobile, renseignez la valeur redirect[return_
comme schéma d’URI de votre application. Vos clients seront ainsi redirigés vers votre application après avoir donné leur autorisation. Pour en savoir plus, consultez notre documentation sur les Sources pour iOS ou Android.
Tester la redirection et le paiement
Lorsque vous créez un objet Source
à l’aide de vos clés API de test, le paiement test est réalisé au bout de trois secondes. Vous pouvez utiliser les adresses e-mail suivantes pour tester les paiements Multibanco dans différentes conditions.
Adresse e-mail | Description |
---|---|
{any_ | Les fonds ne sont jamais envoyés à l’adresse du destinataire. |
{any_ | Une fois la source créée, le bénéficiaire sera de nouveau extrait lorsqu’il aura reçu l’intégralité du montant. |
L’URL renvoyée dans le champ redirect[url]
vous envoie vers un exemple de page de paiement. En revenant de cette page, vous serez redirigé vers l’URL spécifiée dans le champ redirect[return_
.
Débiter la source
Une fois que le client a viré les fonds, le status
de la source passe à chargeable
. Vous pouvez alors l’utiliser pour effectuer une demande de paiement. Cette transition s’effectue de manière asynchrone et peut donc se produire après que le client a été redirigé vers votre site Web.
Une fois que le client a été dirigé vers Multibanco puis redirigé vers votre site Web, il peut envoyer les fonds en quelques minutes, quelques heures ou quelques jours.
Pour ces raisons, il est essentiel que votre intégration s’appuie sur des webhooks pour déterminer à quel moment la source devient débitable et ainsi créer le paiement. Pour découvrir comment intégrer au mieux des moyens de paiement à l’aide de webhooks, veuillez consulter nos bonnes pratiques.
Webhooks
Les événements de webhook suivants sont envoyés pour vous informer des changements d’état d’une source :
Événement | Description |
---|---|
source. | Un objet Source devient chargeable une fois qu’un client a authentifié et vérifié un paiement. |
source. | Un objet Source n’est pas devenu débitable, car le client n’a pas authentifié le paiement. |
source. | Un objet Source a expiré et ne peut plus être utilisé pour créer un paiement. |
Effectuer une demande de paiement à partir de la source
Une fois que la source est débitable, vous pouvez effectuer une demande de paiement à partir de votre gestionnaire de webhook source.
, en renseignant l’ID de la source dans le paramètre source
afin de finaliser le paiement.
Les objets Source Multibanco sont à usage unique et ne peuvent donc pas être utilisées pour des paiements ultérieurs ou récurrents. Pour en savoir plus sur l’interaction des objets Source à usage unique avec les objets Customer, consultez notre guide Sources et clients.
Confirmer la réussite du paiement
Étant donné que Multibanco est un moyen de paiement synchrone et que le client a déjà envoyé les fonds, le paiement réussira immédiatement, sauf en cas d’erreur inattendue.
Vous recevrez également le webhook suivant à la création du paiement :
Événement | Description |
---|---|
charge. | Le paiement a réussi ; le processus est terminé. |
Nous vous recommandons d’utiliser l’événement de webhook charge.
pour informer votre client que le processus de paiement a abouti et que sa commande est confirmée. Pour plus d’informations sur la meilleure façon d’intégrer des moyens de paiement à l’aide de webhooks, reportez-vous à nos bonnes pratiques.
Paiements contestés
Avec Multibanco, le risque de fraude ou de paiements non reconnus est extrêmement faible, car le client doit virer lui-même les fonds à partir de son compte bancaire. Par conséquent, il n’existe avec ce moyen de paiement aucun processus de litige susceptible d’entraîner des contestations de paiement avec retrait des fonds de votre compte Stripe.
Paiements incorrects
Étant donné que les clients peuvent effectuer un paiement à tout moment à l’aide d’un distributeur automatique de billets, il peut arriver, bien que ce soit rare, qu’un client envoie des fonds vers une source annulée ou expirée. Dans ce cas de figure, Stripe lance automatiquement un processus de remboursement pour le montant du paiement incorrect tel que décrit ci-dessus.
Remboursements
Les paiements effectués avec Multibanco ne peuvent faire l’objet d’un remboursement que dans les 180 jours suivant le paiement initial. Passé ce délai, le remboursement n’est plus possible.
Les paiements Multibanco peuvent être remboursés par le biais du Dashboard ou de l’API. Multibanco ne proposant pas de solution de remboursement, Stripe gère ce processus en créant un virement bancaire IBAN. Nous contactons le client à l’adresse e-mail fournie lors de la création de la source pour lui demander ses coordonnées bancaires, puis nous le créditons. Une fois sa demande de remboursement envoyée, le marchand n’a donc plus aucune action à effectuer.
Certains utilisateurs souhaitent demander les coordonnées bancaires de leurs clients eux-mêmes. Les remboursements Multibanco nécessitent le numéro IBAN du client, le nom du titulaire du compte ainsi que son adresse complète (rue, ville, pays et code postal). Pour en savoir plus sur cette solution, veuillez nous contacter.
Expiration de la source
Une source Multibanco chargeable
doit être débitée au plus tard six heures après être devenue chargeable
. Faute de quoi, son état passe automatiquement à canceled
et votre intégration reçoit un événement webhook source.
. Une fois qu’une source débitable est annulée, le paiement Multibanco authentifié par le client est automatiquement remboursé, donc aucune somme n’est transférée sur votre compte. Pour cette raison, lorsque vous recevez l’événement source.
, veillez à ce que la commande soit annulée de votre côté et que le client soit informé.
De plus, les sources pending
qui ne sont pas utilisées pour recevoir des fonds sont annulées au bout de sept jours. De cette manière, toutes les sources non utilisées finissent par passer de l’état pending
à l’état canceled
.