Introduction
Mercanet est une solution de paiement de commerce électronique multicanale sécurisée conforme à la norme PCI DSS. Elle vous permet d’accepter et de gérer des transactions de paiement en prenant en compte les règles métier liées à votre activité (paiement à la livraison, paiement différé, paiement récurrent, paiement en plusieurs fois…).
L’objectif du présent document est d’expliquer l'intégration des moyens de paiement prépayés Cadhoc, Illicado, Spirit Of Cadeau et CadoCarte dans Mercanet.
À qui s’adresse ce document ?
Ce document a pour objectif de vous aider à implémenter les moyens de paiement prépayés Cadhoc, Illicado, Spirit Of Cadeau et CadoCarte sur votre site de commerce électronique.
Il comprend :
- des informations fonctionnelles à votre attention ;
- des instructions d'implémentation à destination de votre équipe technique.
Pour avoir une vue d’ensemble de la solution Mercanet, nous vous conseillons de consulter les documents suivants :
- Présentation fonctionnelle
- Guide de configuration des fonctionnalités
Comprendre les paiements prépayés avec complément CB sur Mercanet
Principes généraux
Mercanet propose plusieurs moyens de paiement prépayés (CADHOC, ILLICADO, SPIRITOFCADEAU ou CADOCARTE). Le principe est le suivant :
- Le client renseigne les données de son moyen de paiement prépayé (numéro de carte prépayée ou autre).
- Si le moyen de paiement prépayé ne couvre pas la totalité du montant du panier, le client paie le complément avec sa carte bancaire.
Le paiement CB complémentaire suit nécessairement une cinématique 3-D Secure. Si le complément carte n’est pas accepté ou que l'authentification 3-D Secure n'est pas réussie, la totalité de la transaction est annulée, et la somme du moyen de paiement prépayé n’est pas consommée.
Règles d’acceptation
Fonctionnalités disponibles
Canaux de paiement | ||
---|---|---|
Internet | V | Canal de paiement par défaut |
MOTO | X | |
Télécopie | X | |
SVI | X |
Typologies de paiement | ||
---|---|---|
Paiement immédiat | V | Méthode par défaut |
Paiement en fin de journée | X | |
Paiement différé | X | |
Paiement à l'expédition | X | |
Paiement en plusieurs fois | X | |
Paiement par abonnement | X | |
Paiement par fichier | X | |
Paiement OneClick | X |
Gestion des devises | ||
---|---|---|
Acceptation multidevise | X | |
Règlement en devise | X |
Vérification de paiement
Au cours de la cinématique de paiement, il est possible que nous ne recevions pas le retour escompté (timeout), l'état de la transaction est :
- TO_CONFIRM_CAPTURE
- TO_CONFIRM_CREDIT
Un traitement par fichier est exécuté quotidiennement pour mettre à jour ces transactions vers des états finaux :
- REFUSED
- CAPTURED
- CREDITED
Le diagramme du paragraphe Effectuer un paiement schématise ces états ainsi que les transitions.
Le statut final apparaîtra dans vos journaux des transactions pour vous permettre de continuer le traitement de la commande.
Ouvrir votre contrat d'acceptation des moyens de paiement prépayés avec complément CB
Afin de proposer un des moyens de paiement prépayés sur votre site Web, vous devez souscrire un contrat d'acceptation auprès du distributeur du moyen de paiement prépayé choisi. Vous nous transmettez par la suite le numéro de contrat afin de l’enregistrer dans notre système d’information.
Afin que le complément CB soit proposé au client, vous devez aussi nous transmettre votre numéro de contrat CB VADS souscrit avec votre banque.
Effectuer un paiement
Mercanet vous offre deux solutions pour intégrer les moyens de paiement prépayés Cadhoc, Illicado, Spirit Of Cadeau et CadoCarte :
- Paypage qui assure l’interface de paiement directement avec le client via son navigateur Web.
- Office (M2M) qui vous laisse la possibilité d’afficher vous-même vos pages de paiement et qui fonctionne par un dialogue de serveur à serveur.
Le seul mode de remise disponible pour une transaction effectuée avec un moyen de paiement prépayé est le mode immédiat (la remise de la transaction est réalisée au moment de l’acceptation du paiement en ligne).
Le diagramme ci-dessous explique les différents états par lesquels peuvent passer la transaction:
Effectuer un paiement avec Paypage
La cinématique de paiement pour Paypage est décrite ci-dessous :
Paramétrer la requête de paiement
Les champs suivants ont un comportement particulier :
Nom du champ | Remarques / règles |
---|---|
captureMode | La valeur envoyée dans la requête est ignorée. Le mode
de capture est forcé à IMMEDIATE. |
captureDay | La valeur envoyée dans la requête est ignorée. Le délai
de capture est forcé à 0. |
customerLanguage | Permet de choisir la langue utilisée sur les pages Mercanet et celles du paiement CB complémentaire. |
paymentPattern | La valeur envoyée dans la requête est ignorée. Le type
de paiement est forcé à ONE_SHOT. |
orderId | Obligatoire |
customerContact.email | Obligatoire |
Analyser la réponse
Le tableau suivant récapitule les différents cas de réponse à traiter :
État | Champs de la réponse | Action à réaliser |
---|---|---|
Paiement accepté | acquirerResponseCode = 00
authorisationId = (voir le
Dictionnaire des données).paymentMeanBrand = CADHOC, ILLICADO, SPIRITOFCADEAU ou
CADOCARTEpaymentMeanType =
VOUCHERresponseCode =
00 |
Vous pouvez livrer la commande. |
Transaction en attente | acquirerResponseCode = (voir
le Dictionnaire des données).responseCode =
60 |
La transaction est toujours en cours de
traitement. Vous recevrez une nouvelle réponse avec un statut
définitif dans 30 minutes. |
Refus acquéreur | acquirerResponseCode = (voir
le Dictionnaire des données).responseCode =
05 |
L’autorisation est refusée pour un motif non lié à la
fraude. Si vous n’avez pas opté pour l’option « nouvelle
tentative de paiement » (pour plus de détails veuillez consulter
le Guide de configuration des
fonctionnalités), vous pouvez proposer à votre
client de payer avec un autre moyen de paiement en générant une
nouvelle requête. |
Refus nombre max essais atteint | responseCode = 75 |
Le client a fait plusieurs tentatives qui ont toutes échoué. |
Refus suite problème technique | acquirerResponseCode = 90-98
responseCode = 90, 99
|
Problème technique temporaire lors du traitement de la transaction. Proposez à votre client de refaire un paiement ultérieurement. |
Pour connaître l'intégralité des codes réponses (responseCode
) et codes réponses
acquéreur (acquirerResponseCode
), veuillez vous
référer au Dictionnaire des
données.
Effectuer un paiement avec Office (M2M)
Le processus de paiement pour Office (M2M) est décrit ci-dessous :
Initialiser un paiement (paymentProviderInitialize)
L’initialisation d’un paiement est effectuée en appelant la méthode paymentProviderInitialize.
Requête d’initialisation du paiement
Les champs génériques suivants sont définis dans le cas d’une initialisation de paiement :
Nom du champ | Remarques / règles |
---|---|
merchantReturnUrl | URL de retour du commerçant |
paymentMeanBrand | Doit être valorisé avec CADHOC, ILLICADO, SPIRITOFCADEAU ou CADOCARTE. |
Vous devez valoriser les champs spécifiques suivants dans la requête d'initialisation pour un paiement CADHOC, ILLICADO, SPIRITOFCADEAU ou CADOCARTE :
Nom du champ | Remarques / règles |
---|---|
captureMode | La valeur envoyée dans la requête est ignorée. Le mode
de capture est forcé à IMMEDIATE. |
captureDay | La valeur envoyée dans la requête est ignorée. Le délai
de capture est forcé à 0. |
customerLanguage | Permet de choisir la langue utilisée sur les pages Mercanet et CB complémentaire. |
paymentPattern | La valeur envoyée dans la requête est ignorée. Le type
de paiement est forcé à ONE_SHOT. |
orderId | Obligatoire |
CustomerContact.email | Obligatoire |
Réponse d’initialisation du paiement
Le tableau suivant récapitule les différents cas de réponse à traiter :
État | Champs de la réponse | Action à réaliser |
---|---|---|
Initialisation de paiement acceptée | acquirerNativeResponseCode =
00messageVersion = version du
message récupérée en réponse à l’initialisation du
paiement.responseCode =
00redirectionData = données de
redirection récupérées en réponse à l’initialisation du
paiement.redirectionUrl = URL de
redirection vers le site Web du moyen de paiement. |
Redirigez le client vers redirectionUrl . |
Initialisation de paiement rejetée | responseCode <>
00 |
Consultez le champ errorFieldName , puis corrigez
la requête.En cas d’erreur persistante, contactez
l'assistance technique. |
Refus acquéreur | acquirerResponseCode = (voir
le Dictionnaire des données).responseCode =
05 |
L’autorisation est refusée pour un motif non lié à la fraude, vous pouvez proposer à votre client de payer avec un autre moyen de paiement en générant une nouvelle requête. |
Refus suite problème technique | acquirerResponseCode = 90-98
responseCode = 90, 99
|
Problème technique temporaire lors du traitement de la transaction. Proposez à votre client de refaire un paiement ultérieurement. |
Pour connaître l'intégralité des codes réponses (responseCode
) et codes réponses
acquéreur (acquirerResponseCode
), veuillez vous
référer au Dictionnaire des
données.
Rediriger le client vers le site Web du moyen de paiement
Le client doit être redirigé vers l’URL redirectionUrl fournie en réponse de la méthode paymentProviderInitialize. Cette redirection consiste à effectuer un appel POST sur l’URL redirectionUrl obtenue dans la réponse à l’initialisation de paiement. Les paramètres POST à transmettre sont redirectionData et messageVersion obtenus également dans la réponse à l’initialisation de paiement.
A la fin de la cinématique de paiement, le client est redirigé sur l’URL fournie dans la requête d’initialisation, merchantReturnUrl. Les champs suivants sont transmis en POST et doivent être récupérés pour finaliser le paiement :
Nom du champ | Remarques / règles |
---|---|
responseCode | Code réponse du processus |
redirectionData | Données de redirection récupérées en réponse à l’initialisation du paiement. |
messageVersion | Version du message récupérée en réponse à l’initialisation du paiement. |
amount | Montant de la transaction en centimes |
merchantId | Identifiant de la boutique |
transactionReference | Référence de la transaction |
transactionId | Identifiant de la transaction |
transactionDate | Date de la transaction |
Finaliser un paiement (PaymentProviderFinalize)
Cette dernière étape vous permet d’obtenir le statut du paiement. Les paramètres obtenus lors de la redirection après la cinématique de paiement sur le site Web du moyen de paiement sont à transmettre lors de cet appel. La méthode utilisée pour finaliser un paiement est paymentProviderFinalize.
Requête de finalisation du paiement
Vous devez fournir les champs spécifiques suivants dans la requête de finalisation pour un paiement CADHOC, ILLICADO, SPIRITOFCADEAU ou CADOCARTE.
Nom du champ | Remarques / règles |
---|---|
redirectionData | Données de redirection récupérées au retour du client vers votre site Web (voir Rediriger le client vers le site Web du moyen de paiement). |
messageVersion | Version du message récupérée au retour du client vers votre site Web (voir Rediriger le client vers le site Web du moyen de paiement). |
Réponse de finalisation du paiement
The following table summarises the different response cases to be processed:
État | Champs de la réponse | Action à réaliser |
---|---|---|
Paiement accepté | acquirerResponseCode =
00authorisationId = (voir le
Dictionnaire des données).acquirerResponseMessage =
informations sur les montants payés par chacun des moyens de
paiement.Format = champ1:champ2:[...]champ7 champ1
= SPLIT champ2 = nom du moyen de paiement
prépayé champ3 = référence partenaire du paiement
prépayé champ4 = montant payé avec le moyen de paiement
prépayé champ5 = moyen de paiement
complémentaire champ6 = PAN masqué champ7 =
montant payé avec le moyen de paiement
complémentaire paymentMeanBrand = CADHOC, ILLICADO, SPIRITOFCADEAU ou
CADOCARTEresponseCode =
00transactionStatus = (voir le
Dictionnaire des données). |
Vous pouvez livrer la commande. |
Refus acquéreur | acquirerResponseCode = (voir
le Dictionnaire des données).responseCode =
05 |
L’autorisation est refusée pour un motif non lié à la fraude, vous pouvez proposer à votre client de payer avec un autre moyen de paiement en générant une nouvelle requête. |
Refus suite problème technique | acquirerResponseCode = 90-98
responseCode = 90, 99
|
Problème technique temporaire lors du traitement de la transaction. Proposez à votre client de refaire un paiement ultérieurement. |
Pour connaître l'intégralité des codes réponses (responseCode
) et codes réponses
acquéreur (acquirerResponseCode
), veuillez vous
référer au Dictionnaire des
données.
Gérer vos transactions
Opérations de caisse disponibles
Les opérations suivantes sont disponibles sur les transactions :
Gestion de caisse | ||
---|---|---|
Annulation | X | |
Validation | X | |
Remboursement | V | En cas de remboursement, c'est la partie CB qui est
remboursée en priorité. Pour les moyens de paiement prépayés
remboursables, il est précisé dans l'email de confirmation de
transaction envoyé aux clients de conserver leurs cartes cadeaux
qui seront recréditées en cas de remboursement. |
Duplication | X |
Le diagramme ci-dessous vous permet de savoir quelle opération de gestion de caisse est disponible lorsqu'une transaction est dans un état donné :
Consulter vos transactions
Journaux
Les journaux mis à disposition par Mercanet vous permettent d’avoir une vision exhaustive et consolidée de vos transactions, opérations de caisse, situation comptable et impayés. Vous pouvez utiliser ces informations pour enrichir votre système d’information.
La disponibilité des transactions pour chaque type de journal est récapitulée dans le tableau ci-dessous :
Disponibilité des journaux | ||
---|---|---|
Journal des transactions | V | |
Journal des opérations | V | |
Journal de rapprochement des transactions | V | Sauf CADHOC. |
Journal de rapprochement des impayés | V | Sauf CADHOC. |
Le champ acquirerReconciliationDetail est présenté sur les journaux de rapprochement des moyens de paiement prépayé.
Cette donnée est générée au moment de la réconciliation à partir des informations fournies par l'acquéreur pour des moyens de paiement Prépayés.
La valeur de cette donnée est la concaténation de sept champs séparés par le caractère ":" qui contiennent les informations détaillées sur les montants payés par chacun des moyens de paiement.
- champ 1 = SPLIT
- champ 2 = nom du moyen de paiement prépayé
- Champ 3 = PAN masqué du moyen de paiement prépayé
- champ 4 = montant payé avec le moyen de paiement prépayé (avec 2 décimales)
- champ 5 = moyen de paiement complémentaire
- Champ 6 = PAN masqué du moyen de paiement complémentaire
- champ 7 = montant payé avec le moyen de paiement complémentaire (avec 2 décimales)
Mercanet Back Office
Vous pouvez consulter vos transactions et effectuer différentes opérations de gestion de caisse grâce à Mercanet Back Office.
Voici le détail d'une transaction