Offline Bank Transfer
Introduction
En phase piloteOffline Bank Transfer est un système bancaire hors ligne européen, permettant à vos clients de transférer des fonds depuis leurs comptes bancaires vers des marchands via le schéma SEPA Credit Transfer (SCT).
Le virement bancaire est un moyen de paiement très accessible pour vos clients dans toute l’Europe, vous permettant de recevoir vos fonds sous 2 à 5 jours ouvrés.
Vous invitez vos clients à ouvrir leur application de banque en ligne. Ils s’authentifient et saisissent les informations du virement, ou scannent le QR code avec des données préremplies. Dès réception des fonds sur notre compte de collecte, nous effectuons le rapprochement et vous confirmons la transaction via une notification dédiée. Le reversement intervient le lendemain de l’encaissement des fonds.
L’intégration est très simple, car elle est déjà incluse dans la Hosted Checkout Page pour les marchands Collect/Full Service. L’activation se fait via votre contrat Full Service/Collect.
Les coordonnées bancaires du client (nom et IBAN) sont enregistrées une fois la transaction réussie. Pour respecter le RGPD, vous devez informer votre client de cette collecte de données si vous conservez ces informations dans votre système.
Activation
Pour utiliser le virement bancaire hors ligne dans notre environnement de production, signez un contrat Full Service ou Collect avec Worldline S.A./N.V. Nous serons ravis de vous aider à démarrer.
Intégration
Redirigez vos clients vers un formulaire de paiement via notre Hosted Checkout Page. Vous trouverez une vue d'ensemble dans le chapitre "Cinématique".
Ajoutez les propriétés suivantes à une requête standard de CreateHostedCheckout :
{
"order": {
"amountOfMoney": {
"amount": 100,
"currencyCode": "EUR"
},
"references":{
"descriptor":"MerchantDescriptor"
},
"customer": {
"contactDetails": {
"emailAddress": "wile.e.coyote@acmelabs.com"
}
},
"redirectPaymentMethodSpecificInput":{
"paymentProductId":11,
"redirectionData":{
"returnUrl":"https://yourReturnUrl.com"
}
}
}
}
| Property | Remarks |
|---|---|
|
order.amountOfMoney |
amount: The gross amount you want to charge for this order. currencyCode: The ISO 4217 currency code for this amount. |
|
order.references.descriptor |
Un libellé (descripteur) dynamique apparaissant sur le relevé bancaire de vos clients. Bien que non obligatoire, nous vous recommandons vivement de l’ajouter à votre commande pour une transparence maximale. |
|
order.customer.contactDetails.emailAddress |
L'adresse e-mail de votre client. Notre plateforme enverra des notifications à votre client concernant le statut de la commande. |
|
redirectPaymentMethodSpecificInput |
paymentProductId: L'identifiant numérique de la méthode de paiement sur notre plateforme. Vous trouverez cet identifiant dans le chapitre "Aperçu". Cela indique à notre plateforme d'envoyer vos clients directement vers le formulaire de paiement. Si omis, notre plateforme envoie vos clients vers la Hosted Checkout Page avec la possibilité de choisir cette méthode ou toute autre méthode de paiement active sur votre compte. returnUrl: L'URL vers laquelle nous redirigeons vos clients une fois le paiement finalisé.
|
Retrouvez des informations détaillées sur cet objet et ses propriétés dans notre documentation CreateHostedCheckoutAPI.
Cinématique
- Vos clients finalisent une commande dans votre boutique et sélectionnent le virement bancaire hors ligne.
- Vous envoyez cette requête CreateHostedCheckout à notre plateforme.
- Vous redirigez vos clients via la redirectUrl vers un écran de confirmation affichant un champ de saisie d’adresse e-mail.
- Vos clients saisissent leur adresse e-mail et cliquent sur « Proceed to pay ». Nous mettons à jour la transaction au statusOutput.statusCode=46.
- Notre plateforme redirige votre client vers l’écran de paiement, affichant vos coordonnées bancaires et les données de commande sous forme de QR code et en texte clair.
- Vos clients effectuent le virement via leur application bancaire, soit en scannant le QR code, soit en saisissant manuellement les coordonnées bancaires et les données de commande. Ils confirment le virement en cliquant sur « Payment is done » sur l’écran de paiement.
- Nous redirigeons votre client vers votre returnUrl et mettons à jour la transaction au statusOutput.statusCode=4.
- Vous récupérez le résultat intermédiaire de la transaction (statusOutput.statusCode=4) depuis notre plateforme via GetPaymentDetails/GetHostedCheckout ou recevez le résultat via webhooks.
- La banque de vos clients transfère les fonds sur notre compte de collecte via un virement standard (sous 1 à 2 jours) ou un virement instantané (en quelques minutes). Nous mettons à jour la transaction au statusOutput.statusCode=9. Si notre compte de collecte ne reçoit pas les fonds sous 5 jours calendaires, nous mettrons à jour la transaction au statusOutput.statusCode=2.
- Vous récupérez le résultat final de la transaction depuis notre plateforme via GetPaymentDetails/GetHostedCheckout ou recevez le résultat via webhooks.
- Si la transaction a réussi, vous pouvez livrer les biens / services.
Test
Consultez nos Cas de test pour des données de test et des instructions détaillées.
- Assurez-vous d'utiliser le bon endpoint et de renseigner l'URL de production dès que vous avez terminé vos tests.
- Les données dans notre chapitre Cas de test fonctionnent UNIQUEMENT pour les demandes de paiement dans notre environnement de test. Utiliser ces données dans notre environnement de production entraînera des résultats de test indésirables.