Paiement sécurisé sur Internet Service TPE Virtuel (sécurisé par le protocole SSL)



Documents pareils
FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET. Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date :

Paiement sécurisé sur Internet. Documentation Technique

Manuel d'installation

Paiement sécurisé sur Internet

Les solutions de paiement CyberMUT (Crédit Mutuel) et CIC. Qui contacter pour commencer la mise en place d une configuration de test?

Plateforme Systempay. Correspondance entre SP PLUS et SYSTEMPAY Paiement Simple et en plusieurs fois

Guide d implémentation. Réussir l intégration de Systempay

Plateforme PAYZEN. Intégration du module de paiement pour la plateforme Magento version 1.3.x.x. Paiement en plusieurs fois. Version 1.

Paiement sécurisé sur Internet. Tableau de bord Commerçant

Ajouter le moyen de paiement e-chèque-vacances (ANCV) Systempay 2.3

Plateforme PAYZEN. Intégration du module de paiement pour la plateforme Magento 1.4 et supérieur. Version 1.5.1

Guide d utilisation de PayPal e-terminal. Informations à usage professionnel uniquement

V 8.2. Vous allez utiliser les services en ligne de la plate forme de dématérialisation de la Salle des Marchés achatpublic.com.

Documentation utilisateur "OK-MARCHE" Historique des modifications. 3.0 Mise à jour complète suite à version OK-MARCHE V2.2. de marchés publics

Sécurisation avancée des données de cartes bancaires Guide Hôtel v1.0 SECURISATION AVANCEE DES DONNEES BANCAIRES. Guide Hôtel

Définition des Webservices Ordre de paiement par . Version 1.0

Plateforme PAYZEN. Définition de Web-services

DOSSIER D INSCRIPTION au service de paiement sécurisé sur Internet PAYBOX SYSTEM

Achetez en toute sécurité sur Internet sans communiquer votre numéro de carte bancaire!

Standard. Manuel d installation

Paiement sécurisé sur Internet. Fonctionnalités du Pack Factures

Création, analyse de questionnaires et d'entretiens pour Windows 2008, 7, 8 et MacOs 10

plateforme de paiements sécurisés sur internet Groupe Crédit Mutuel-CIC La carte d identité 2009

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

Réaliser des achats en ligne

Guide de l Administrateur

Processus de commande en ligne des produits répertoriés sur notre site Web

e)services - Guide de l utilisateur e)carpa

MANUEL D UTILISATION DE LA SALLE DES MARCHES APPEL D OFFRES OUVERT ACCES ENTREPRISES. Version 8.2

Manuel fournisseur : procédure pour prendre connaissance d une consultation en ligne et soumettre une offre. Version de février 2014 SNCF

Option site e-commerce

Manuel d utilisation du module Liste de cadeaux PRO par Alize Web

Elle supporte entièrement la gestion de réseau sans fil sous Windows 98SE/ME/2000/XP.

Instructions et spécifications pour la transmission en format XML de déclarations par lots. 30 mai 2015 MODULE 1

ACCUEIL - P. 5 DEMANDES DE PAIEMENT - P. 8

SAGEM Wi-Fi 11g USB ADAPTER Guide de mise en route rapide

Saisissez le login et le mot de passe (attention aux minuscules et majuscules) qui vous ont

Guide d utilisation. Version 1.1

FileMaker Server 14. Guide de démarrage

Guide d implémentation

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

Guide d implémentation. Gestion des paiements par identifiant Gestion des paiements par abonnement

Faites confiance à la première solution française de paiement sur Internet.

PayPal Intégral. Guide de démarrage. Acceptez les paiements en ligne grâce à une plateforme complète. Leader mondial des paiements en ligne

14.1. Paiements et achats en ligne

Module http MMS AllMySMS.com Manuel d intégration

Manuel d utilisation de l outil collaboratif

Publication dans le Back Office

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées

CONDITIONS GENERALES DU SERVICE BANQUE EN LIGNE ECOBANK

E-TRANSACTIONS. Guide du programmeur API Plug-in. Version 1.1

Paiement sécurisé sur Internet. Pack Factures Documentation générale sur le paiement de factures par carte bancaire sur apayer.fr

DOSSIER D INSCRIPTION au service de paiement sécurisé sur Internet PAYBOX SYSTEM

AIDE MEMOIRE. Forprev. De l habilitation à la gestion de sessions. Page 1 sur 55

Direction générale statistique et information économique. Manuel d usage : l application web pour l enquête sur la structure des entreprises

Cours CCNA 1. Exercices

Mieux comprendre les certificats SSL THAWTE EST L UN DES PRINCIPAUX FOURNISSEURS DE CERTIFICATS SSL DANS LE MONDE

ENVOYEZ ET RECEVEZ VOS FAX ET SMS PAR !

TNT Express. Magento

GUIDE MEMBRE ESPACE COLLABORATIF. Février 2012

FileSender par RENATER - Guide utilisateur

Service de certificat

Documentation. Manuel Utilisateur. E-Shop

GUIDE DE L UTILISATEUR. SERVICE EN LIGNE DE PRISE DE RENDEZ-VOUS Page 1 LIV_PRJ_RDL_DEV914_APP_ENLIGNE_GUIDE_UTILISATEUR_1,1_ docx/.

Documentation. Manuel Utilisateur. E-Shop

PERSONNALISATION DE LA PAGE DE PAIEMENT & TICKET DE PAIEMENT

FedEx Ship Manager. Guide de l utilisateur. Solutions de surface FedEx International DirectDistribution. FedEx Transborder Distribution

GUIDE UTILISATEUR ENVOYEZ ET RECEVEZ VOS FAX ET SMS PAR

Gestion des documents avec ALFRESCO

Plate-forme de tests des fichiers XML virements SEPA et prélèvements SEPA. Guide d'utilisation

Guide Numériser vers FTP

Paiements, les paiements échelonnés, le calcul des intérêts et la facturation mensuelle

Documentation RBS Change E-Commerce Core

Plateforme Systempay Descriptif de l interface avec la page de paiement

Manuel Utilisateur Version 1.6 Décembre 2001

SOLUTION D ENVOI DE SMS POUR PROFESSIONNELS

1 ) L élaboration des factures, des bordereaux de livraison et des factures proforma.

Protocoles DHCP et DNS

FAIRE UN PAIEMENT TIPI

Administration en Ligne e-démarches. Console du gestionnaire. Guide utilisateur. Aout 2014, version 2.1

Tutoriel BLOGGER. Pour vous donner une idée, voici un exemple de blog :

NAMEBAY PRO. votre site de revente de noms de domaine en marque blanche. Documentation technique

INTRODUCTION. Intégration d un système de paiement en ligne dans votre site internet

Configuration du nouveau Bureau Virtuel (BV) collaboratif de Lyon I

Erreurs les plus fréquentes Guide de dépannage

1. Le service, en bref Avantages Contexte Clients actuels et cibles Description du service

Guide d implémentation Interface avec la plateforme de paiement

Guide utilisateur du prélèvement bancaire SEPA

Guide de l utilisateur Communauté virtuelle de pratique en gestion intégrée des risques

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

Documentation pour l envoi de SMS

Un exemple d'authentification sécurisée utilisant les outils du Web : CAS. P-F. Bonnefoi

1) Information sur le logiciel et la notice 2) Le tableau de bord 3) Les devis 4) Les factures 5) Les factures d acompte 6) Les avoirs sur facture

Sauvegarde des données d affaires de Bell Guide de démarrage. Vous effectuez le travail Nous le sauvegarderons. Automatiquement

INSTALLATION D UN CERTIFICAT FIDUCIO LOGICIEL

Secure Card Data. Spécifications. Version SIX Payment Services

CTIconnect PRO. Guide Rapide

Microsoft Hosted Exchange 2010 DOCUMENT D EXPLOITATION

Transcription:

https://paiement.creditmutuel.fr Paiement sécurisé sur Internet Service TPE Virtuel (sécurisé par le protocole SSL) - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 1 / 27

SOMMAIRE 1 1.1 Mise en place du service «TPE Virtuel Via Internet» 3 2 Spécifications des messages échangés 5 3 2.1 2.2 Phase aller du paiement (interface «Aller») 6 Création du formulaire 6 Exemple de formulaire de paiement 7 Messages d erreur 8 2. 3 Phase retour du paiement (interface «Retour») 9 Paramètres renvoyés par la banque 10 Complément «retourplus» 11 Validation du sceau 12 Création de l accusé de réception 13 2. 4 Spécification des formats 14 Contraintes générales de codage HTML des champs 14 Contraintes particulières selon le champ 14 3.1 4 Configuration pour les boutiques e-pages 17 5.1 Open Kits : exemples d intégration 3 1.2 Open Tools : prise en charge des paramètres 3 1.3 Clé de sécurité commerçant 4 Rappel de la cinématique 5 URLs des serveurs de paiement 15 En Test 15 3.2 En Production 16 5 Aides à l installation 20 Utilisation de l outil «Open Tools» de configuration 20 5.2 Foire aux questions 22 5.3 Les problèmes les plus fréquents 25 Problème de calcul du sceau de sécurité 25 Le commerçant ne peut pas être identifié 26 5. 4 Assistance technique 27 - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 2 / 27

1 Mise en place du service «TPE Virtuel Via Internet» Les éléments nécessaires à la mise en place du paiement sécurisé sur votre Terminal de Paiement Electronique Virtuel (TPEV) vous seront fournis par notre centre de support (boîte aux lettres centrecom@e-i.com) sous forme de liens de téléchargement sur le site sécurisé de votre banque. Vous recevrez ces informations par e-mail lors des différentes phases d installation et de test. Vous devrez utiliser la documentation fournie pour créer les deux programmes d interface : Interface «Aller» : génération du formulaire de demande de paiement Interface «Retour» : réception de la confirmation du paiement Le travail à réaliser nécessite des compétences avancées en programmation : recevoir et contrôler des paramètres en méthode POST manipuler des chaînes de caractères utiliser une fonction ou une classe conforme à la RFC2104 implémentant le HMAC SHA1 ou MD5 sauvegarder le contexte de paiement en fichier ou base de données suivre le déroulement pas à pas d un programme dans un outil de débogage ou en programmant des traces. 1.1 Open Kits : exemples d intégration A titre d information, des exemples en PHP, ASPX, ASP, Python, Java et C de chacun des deux programmes d interface avec notre solution vous sont fournis avec la documentation. Vous pourrez utiliser ces exemples comme point de départ et vous devrez les modifier selon les spécificités de votre environnement et de votre application. En particulier, le stockage des clés devra être revu pour exploiter les meilleurs outils de confidentialité disponibles dans votre environnement. Les exemples proposent un stockage en base de données ou en 2 fichiers textes complémentaires de manière à ce que la compromission accidentelle d un seul fichier ne compromette pas la clé. 1.2 Open Tools : prise en charge des paramètres Cet outil s exécute en local et génère, à partir des paramètres du terminal (clé, numéro de TPE, code société, etc.), les sections de code de personnalisation correspondant à chacun des exemples proposés. Les blocs de code générés sont à revoir, comme il a été dit plus haut, pour exploiter au mieux les outils de sécurisation de données dont vous disposez pour protéger les secrets et, de façon générale, pour exploiter au mieux les possibilités de votre environnement. - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 3 / 27

1.3 Clé de sécurité commerçant Une clé de sécurité, propre au terminal, destinée à certifier les données échangées entre le serveur du commerçant et le serveur de paiement sécurisé de la banque, est attribuée par la banque à chaque TPE virtuel. Cette clé, associée au TPE virtuel du commerçant, est indispensable pour utiliser le service de paiement par carte bancaire. Un lien de téléchargement sécurisé (lien codé, protocole SSL, authentification du souscripteur de contrat par son identifiant/mot de passe) est envoyé par notre centre de support. Le commerçant, après authentification, téléchargera cette clé sous forme d un fichier texte scellé de 4 lignes à conserver sur un support externe. Le nom proposé par défaut au téléchargement est <numéro de TPE>.key (par exemple : 1234567.key), mais il n y a pas de contrainte de nom. Le commerçant peut demander la régénération d une nouvelle clé, périodiquement ou à l occasion d évènements tels qu une mise en production, un changement d hébergeur, un changement de prestataire, etc.. Il est de la responsabilité du commerçant de conserver cette clé de façon sûre et confidentielle en exploitant les meilleurs outils disponibles dans son environnement. La valeur de clé utilisée dans les fonctions de HMAC est une chaîne de 20 octets représentée de façon externe par 40 chiffres hexadécimaux (par exemple : 0123456789ABCDEF0123456789ABCDEF01234567). Cette représentation externe doit être convertie en une chaîne de 20 octets (représentation opérationnelle) avant utilisation. L outil «Open Tools» construit les différentes représentations opérationnelles de la clé, selon les langages et les met en situation dans les exemples, à partir du fichier clé unique. - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 4 / 27

2 Spécifications des messages échangés 2.1 Rappel de la cinématique Action Le serveur commerçant obtient l accord de l internaute sur la chose et le prix Le serveur du commerçant rassemble les données du paiement à effectuer puis créé le formulaire de paiement scellé : fonction creer_formulaire() puis met en page ce formulaire de paiement à destination de l internaute L internaute clique sur le bouton correspondant au formulaire de paiement et accède au serveur de paiement Le serveur bancaire vérifie la validité du sceau et entame le dialogue de paiement avec l internaute L internaute dialogue avec le serveur bancaire et paye (ou ne paye pas) par carte bancaire Le serveur bancaire renvoie un résultat de paiement scellé au serveur du commerçant sur son interface «Retour» Le serveur du commerçant vérifie la validité du sceau : fonction tester_hmac() puis prend en compte le résultat de paiement puis répond au serveur bancaire : fonction creer_accuse_reception() Le serveur affiche le résultat du paiement (avec le numéro d autorisation si autorisation) L internaute peut imprimer (ou sauvegarder) cette page Le serveur propose à l internaute de revenir sur le site du commerçant via un lien hypertexte S il suit ce lien, l internaute quitte le serveur de paiement et revient sur le site du commerçant Le serveur du commerçant adapte son dialogue en fonction du résultat de paiement reçu (ou non reçu) et sauvegardé par l interface «Retour» Intervenant Site web du commerçant Interface «Aller» sur le serveur du commerçant Serveur de paiement de la banque Interface «Retour» sur le serveur du commerçant Serveur de paiement de la banque Site web du commerçant - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 5 / 27

2.2 Phase aller du paiement (interface «Aller») Création du formulaire La fonction creer_formulaire() met en forme les paramètres du terminal et les données de la commande en un formulaire HTML scellé afin de transmettre la demande de paiement au serveur de la banque via le navigateur du client. Champs Description Remarque Action URL du service de paiement de la banque En test ou en production version Version du système de paiement utilisée Version actuelle 1.2open TPE Numéro de TPE Virtuel du commerçant exemple : 1234567 date montant (chaîne numérique sur 7 positions) Date de la commande au format JJ/MM/AAAA:HH:MM:SS Montant TTC de la commande formatée de la manière suivante : Un nombre entier Un point décimal (optionnel) Un nombre entier de 2 chiffres* (optionnel) Une devise sur 3 caractères alphabétiques ISO4217 ( EUR, USD, GBP, CHF, etc.) reference Référence unique de la commande sur 12 caractères alphanumériques (A..Z, a..z, 0..9) permettant d identifier de manière unique la commande texte-libre Zone de texte libre (taille maximale : 100 caractères) lgue Code langue (en majuscules), parmi FR, EN, DE, IT, ES, NL societe Code alphanumérique à usage interne uniquement permettant au commerçant d utiliser le même TPE Virtuel pour des sites différents (paramétrages distincts) se rapportant à la même activité url_retour url_retour_ok URL par laquelle l acheteur revient sur la page d accueil de la boutique URL de la page de retour de l acheteur sur le site du commerçant suite à un paiement accepté url_retour_err URL de la page de retour de l acheteur sur le site du commerçant suite à un paiement refusé MAC Bouton Sceau issu de la certification des données Texte du bouton de paiement Exemple : 05/12/2006:11:55:23 Exemples : 62.73EUR 10GBP * Attention : un arrondi est effectué automatiquement s il y a plus de 2 décimales. Exemple : ABERTYP00145 Exemple : monsite1 Attention : à ne pas confondre avec l URL de l interface «Retour», aussi appelée URL de confirmation des paiements Le sceau (à mettre dans le champs MAC) est calculé à l aide de la fonction - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 6 / 27

HMAC-SHA1 ( <données à certifier>, <clé de sécurité commerçant sous forme opérationnelle> ) fournie dans les exemples d implémentation (ou à l aide de toute autre fonction respectant les spécifications de la RFC 2104). Les données à certifier seront présentées sous la forme d une concaténation dans un ordre précis des informations du formulaire : <TPE>*<date>*<montant>*<reference>*<texte-libre>* <version> * <lgue>*<societe> * Exemple : 1234567* 05/12/2006:11:55:23*62.73EUR*ABERTYP00145*Exemple TexteLibre*1.2open*FR*monSite1* Exemple de formulaire de paiement <form method="post" name="formulaireencodeconforme" target="_top" action="https: //paiement.creditmutuel. fr/paiement.cgi"> <input type="hidden" name="version" value="1.2open"> <input type="hidden" name="tpe" value="1234567"> <input type="hidden" n ame="date" value="05/12/2006:11& #x3a;55:23"> <input type="hidden" name="montant" value="62.73eur"> < input type="hidden" name="reference" value="abertpy00145"> < input type="hidden" name="mac" value="78bc376c5b192f1c48844794cbdb0050f156b9a2"> <input type="hidden" name="url_retour" value="http://url.retour.com/ko.cgi?order_ref=votrerf12345"> <input type="hidden" name="url_retour_ok" value ="http& #x3a;//url.retour.com/ok.cgi?order_ref=votrerf12345"> < input type="hidden" name="url_retour_err" value ="http://url.retour.com/err.cgi?order_ref=votrerf12345"> < input type="hidden" name="lgue" value="fr"> <input type="hidden" name="societe" value="monsite1"> < input type=" hidden" n ame="texte-libre" value="exempletextelibre"> < input type=" submit" n ame="bouton" value="paiement CB "> </form> La seule partie visible de ce formulaire est le bouton de paiement : Les champs de ce formulaire doivent tous être encodés en HTML. Les spécifications d encodage son t décrites en fin de document. Cet encodage est préconisé pour la sécurité du site commerçant. En effet, le code qui doit réaliser la fonction creer_formulaire() recevra dans la pratique l essentiel des valeurs de ces champs depuis u n programme distinct, appartenant à la solution de commerce. Or, il est de bonne pratique de coder en HTML tout champ à afficher provenant d une source tierce, à commencer bien entendu par les champs - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 7 / 27

saisis par les utilisateurs. Le code creer_formulaire() n a pas d informations sur l origine première de ces champs, il doit donc les encoder tous. Notez bien que le formulaire suivant, dont les valeurs de champs ne sont pas codées en HTML, n est pas conforme à nos spécifications. <form method="post" name="formulaire_non_conforme" target="_top" action="https://paiement.creditmutuel.fr/paiement.cgi"> <input type="hidden" name="version" value="1.2open"> <input type="hidden" name="tpe" value="1234567"> <input type="hidden" name="date" value="05/12/2006:11:;55:23"> < input type="hidden" name="montant" value="62.73eur"> </form> Messages d erreur Voici les erreurs les plus courantes qui peuvent être renvoyées par le serveur de paiement suite à l envoi par le commerçant d un formulaire de paiement. Le site de votre commerçant n'a pas été ide ntifié par notre serveur. Les informations transmises par votre interface «Aller» ne sont pas reconnues par le serveur de la banque : vérifiez que vous avez bien répondu aux questions qui sont posées dans le mail de fourniture de la clé vérifiez que les paramètres {numéro de TPE ; code société (respectez les majuscules et les minuscules) ; langue} transmis par votre interface «Aller», correspondent aux informations que vous nous avez envoyées par courriel vérifiez que l URL d appel à la page de paiement est correcte (et correspond bien à celle de test) Les informations transmises par votre commerçant ont une signature non valide niveau de sécurité exigé n'est pas atteint. Le champ MAC transmis par votre interface «Aller» n'est pas valide ou n'a pas pu être calculé : affichez le code source du formulaire généré et vérifiez que le champ MAC est valorisé par une suite de chiffres hexadécimaux ; vérifiez que vous avez bien intégré la clé : comparez le champ de contrôle affiché par les exemples fournis, avec le champ de contrôle affiché dans l outil de prise en charge de clé ; Vérifiez que vous avez la bonne clé : transmettez le champ de contrôle produit par l outil de prise en charge de clé au centre de support (ne transmettez que ce champ et non la clé elle-même). : le - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 8 / 27

Si vous avez le moindre doute sur une action ou un oubli de votre part qui pourrait avoir porté la clé à la connaissance de personnes non autorisées, contactez le centre de support pour la génération d une nouvelle clé. Votre commande a déjà été traitée. Ce message signifie que vous passez une commande sur une référence déjà utilisée. La date de validité de votre commande est dépassée. Deux cas sont possibles : Soit la référence de commande est en instance de paiement depuis un délai trop important (typiquement plus d une heure) : dans ce cas, testez un formulaire mis à jour avec une nouvelle référence de commande Soit le formulaire de commande a été créé depuis un délai trop important, typiquement plus de 12 heures : dans ce cas, testez un nouveau formulaire et vérifiez la date système de votre machine Mode de paiement non disponible. Deux cas sont possibles : Soit il y a une erreur de syntaxe dans le formulaire soumis (par exemple «Societe=» à la place de «societe=») Demande d un mode de paiement non souscrit par le commerçant 2.3 Phase retour du paiement (interface «Retour») Après avoir traité la demande de paiement, en dialogue avec l internaute payant par carte, le serveur de la banque informe directement le serveur du commerçant du résultat de la demande de paiement en émettant une requête HTTP on-line, contenant le résultat de la demande de paiement, sur l URL de confirmation des paiements (interface «Retour») ; URL que vous devez nous indiquer au moment de la mise en place du système. L interface «Retour» est chargée de recevoir cette requête de confirmation du paiement, d en extraire les différentes informations, dont le résultat du paiement, de mettre à jour l état de la commande dans les bases commerçant, et de répondre par un accusé de réception. Pour cela il doit implémenter les fonctionnalités tester_hmac() (prise en compte des aspects de sécurisation des échanges) et creer_accuse_reception() (gé nération de l accusé de réception à renvoyer au serveur de la banque). - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 9 / 27

Paramètres renvoyés par la banque L interface «Retour» sera appelée par le serveur de la banque avec la méthode POST. Les données envoyées par le serveur de la banque sont décrites ci-dessous : Champs Description Remarque MAC Sceau résultant de la certification des données (voir plus bas) TPE Numéro de TPE Virtuel du commerçant (chaîne numérique sur 7 positions) date Date de la commande au format JJ/MM/AAAA_a_HH:MM:SS montant Montant TTC de la commande formatée de la manière suivante : Un nombre entier Un point décimal (optionnel) Un nombre entier (optionnel) Une devise sur 3 caractères alphabétiques ISO4217 (EUR, USD, GBP, CHF, etc.) reference Référence unique de la commande sur 12 caractères alphanumériques (A..Z, a..z, 0..9) permettant d identifier de manière unique la commande texte-libre Zone de texte libre (taille maximale : 100 caractères) code-retour Le résultat du paiement, parmi : payetest paiement accepté (en TEST uniquement) paiement paiement accepté (en Production uniquement) retourplus Annulation paiement refusé Liste d informations complémentaires, séparées par «--» Le serveur de la banque renvoie ici les données telles qu elles ont été reçues lors de la phase aller du paiement Exemple : --optiona--optionb Exemple de données envoyées par le serveur de paiement de la banque à l interface «Retour» : TPE=1234567&date=05%2f12%2f2006%5fa%5f11%3a55%3a23&montant=62% 2e75EUR&reference=ABERTYP00145&MAC=e4359a2c18d86cf2e4b0e646016 c202e89947b04&texte-libre=reference+commande+tres+tres+longue& code-retour=paiement&retourplus=--optiona--optionb - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 10 / 27

Complément «retourplus» Sur la version actuelle de la solution de paiement (1.2open), un champ «retourplus» est ajouté aux informations que le serveur de paiement de la banque transmet à l interface «Retour» du commerçant. Selon la méthode utilisée pour appeler l interfac e «Retour» (en http ou en HTTPS), ce champ peut contenir diverses informations : Info Description Si HTTP --cvx oui si le cryptogramme visuel (obligatoire pour les cartes Visa et MasterCard) a été saisi non sinon --hpan Hachage irréversible (HMAC-SHA1) du numéro de la carte de crédit utilisée pour effectuer le paiement (identifiant de manière unique une carte de crédit pour un commerçant donné) --vld Date de validité de la carte de crédit utilisée pour effectuer le paiement --bin Code BIN de la banque du porteur de la carte de crédit --3Dve Y La carte de crédit utilisée pour le paiement est également adossée au programme «3DSecure» N La carte de crédit utilisée pour le paiement n est pas adossée à ce programme --3Dpa Y La banque émettrice de la carte utilisée pour le paiement a validé que votre client est bien le propriétaire de la carte N La banque émettrice de la carte utilisée pour le paiement suspecte que votre client utilise une carte qui n est pas la sienne, ou n est pas en mesure de le déterminer Rema rque : cette option n a de signification que si l option 3Dve vaut Y Si HTTPS Exemple : retourplus=--cvxoui--hpan1a2b3c4d5e6f70819203a2b3c4d5e6f708192031 - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 11 / 27

Validation du sceau Le message de confirmation reçu est scellé par un sceau MAC qui a été calculé par le serveur de paiement de la banque à l aide de la clé de sécurité commerçant attribuée à votre terminal de paiement. La fonctionnalité tester_hmac() de validation du sceau doit être implémentée dans l interface «Retour» pour s assurer qu il n y a pas eu de falsification des données contenues dans le message de confirmation du paiement reçu. Pour cela, elle doi t recalculer le code MAC associé au message et le comparer à celui transmis dans le message : si les deux codes sont identiques, l information reçue est fiable (intégrité des informations et authentification de l émetteur). Pour calculer le MAC on pourra s aider de la fonction HMAC-SHA1 ( <données à certifier>, <clé de sécurité commerçant sous forme opérati onnelle> ) fournie dans les exemples d implémentation (ou de toute autre fonction respectant les spécifications de la RFC 2104). Les données à certifier seront présentées sous la forme d une concaténation dans un ordre précis des informations envoyées par le serveur de la banque : <retourpl US ><TPE>+<date>+<montant>+<reference>+ <textelibre> +1. 2open+<code-retour>+ Exemple : --optiona--optionb1234567+05/12/2006:11:55:23+62.73eur+abe RTYP00 145+ExempleTexteLibre+1.2open+paiement+ - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 12 / 27

Création de l accusé de réception La réponse renvoyée par l interface «Retour» au serveur de paiement de la banque doit être un des deux messages présentés dans le tableau ci-dessous, dépendant seulement de la vérification du sceau MAC reçu, sans tenir compte de la valeur du code-retour de paiement, dès lors que cette valeur fait partie de la liste des valeurs énumérées pour le champ code-retour. Sceau validé Oui Non Accusé de réception à renvoyer Pragma: no-cache<lf> Content-type : text/plain<lf> Version: 1<LF> OK<LF> Pragma: no-cache<lf> Content-type : text/plain<lf> Version: 1<LF> Document falsifie<lf> Lorsque le serveur de la banque ne reçoit pas d accusé de réception «OK» (time out, erreur, ), il envoie un courriel d alerte sur une boîte aux lettres électronique de surveillance indiquée par le commerçant et refait une seconde tentative. Pour cela, dès la phase de test, le commerçant doit nous fournir l adresse d une boîte aux lettres électronique régulièrement relevée. Pour passer en production, le serveur commerçant doit avoir fait au moins un test complet avec accusé de réception «OK». - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 13 / 27

2.4 Spécification des formats Contraintes générales de codage HTML des champs Tous les champs de formulaire (interface «Aller») doivent être codés en HTML avant la mise en forme dans le formulaire (c est à dire immédiatement après le calcul du MAC). Les caractères à coder impérativement sont les codes ASCII de 0 à 127 réputés risqués : Nom Symbole Remplacement Signe Commercial & & Signe inférieur < < Signe supérieur > > Guillemets " " ou " Apostrophe &#x27; Les fonctions de type «HTML_ENCODE» des langages conviennent parfaitement, elles encodent beaucoup plus de caractères, typiquement tout ce qui n est pas : ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789 _. - (souligné, point, tiret) Si vous utilisez dans le champ «texte-libre» des caractères hors de la plage ascii commune imprimable (31<ascii<127), vous devez coder ce champ avant tout traitement relatif au paiement pour éviter tout problème de calcul du sceau MAC. Contraintes particulières selon le champ Champs Contenu / format avant codage HTML Taille maximale après codage HTML tpe A-Z a-z 0-9 7 Version 1.2open Fixe Date 50 Montant 20 Référence A-Z a-z 0-9 12 MAC 0-9 A-F a-f 40 Lgue A-Z 2 Societe A-Z a-z 0-9 20 Texte-libre Base 64 3200 retourplus A-Z a-z 0-9 _. - 2048 URLs 1024 - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 14 / 27

3 URLs des serveurs de paiement 3.1 En Test Le rôle de notre serveur de test est de vous permettre de tester et de valider vos développements. Sur ce serveur, le seul contrôle effectué est un contrôle de structure du numéro de carte. Il n'y a pas d'autres contrôles effectués : date d'expiration, contrôle du fichier des cartes en opposition, etc., comme cela existe sur notre serveur de paiement de production. Bien sûr, aucun paieme nt accepté par notre serveur de paiement de test ne donne lieu à une mise en recouvrement. Afin de tester les différ ents codes de retour du serveur bancaire, vous avez la possibilité d utiliser plusieurs cartes de tests dont les coordonnées sont affichables en cliquant sur l icône «Carte de Test» de la page de paiement bancaire. Les environnements de test sont disponibles aux adresses suivantes : Pour les banques et fédérations du Crédit Mutuel : https://paiement.creditmutuel.fr/test/p aiement.cgi Pour les banques du Groupe CIC : https://ssl.paiement.cic-banque s.fr/test/paiement.cgi Pour la banque OBC : https://ssl.paiement.banque-obc.fr/test/paiement.cgi Le tableau de bord commerçant de test vous permet de gérer et contrôler les paiements effectués dans l environnement de test. Les tableaux de bord commerçants des environnements de test sont disponibles aux adresses suivantes : Pour les banques et fédérations du Crédit Mutuel : https: //paiement.creditmutuel.fr/bo/test/ Pour les banques du Groupe CIC : https://ssl.paiement.cic-banques.fr/bo/test/ Pour la banque OBC : ht tps://ssl.paiement.banque-obc.fr/bo/test/ - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 15 / 27

3.2 En Production Après avoir validé vos développements, vous pourrez vous adresser au serveur de production, disponible à l adresse suivante : Pour les banques et fédérations du Crédit Mutuel : https://paiement.creditmutuel.fr/paiement.cgi Pour les banques du Groupe CIC : https://ssl.paiement.cic-banques.fr/paiement.cgi Pour la banque OBC : https://ssl.paiement.banque-obc.fr/paiement.cgi Vous pouvez consulter les paiements opérés sur votre TPE via les tableaux de bord commerçants disponibles aux adresses suivantes : Pour les banques et fédérations du Crédit Mutuel : https://paiement.creditmutuel.fr/bo/ Pour les banques du Groupe CIC : https://ssl.paiement.cic-banques.fr/bo/ Pour la banque OBC : https://ssl.paiement.banque-obc.fr/bo/ Nous attirons votre attention sur le fait que les formulaires de paiement adressés au serveur de production seront des paiements réels. - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 16 / 27

4 Configuration pour les boutiques e-pages Pour utiliser votre TPE avec votre boutique e-pages, vous devez paramétrer le mode de paiement «CyberMUT Paiement / Paiement CIC» dans votre back-office e- pages. Sur la page d accueil de celui-ci, vous pouvez cliquer sur le lien «Livraison et paiement» dans la partie paramètres : Ensuite, sous l onglet «Modes de paiement» vous devez ajouter le mode de paiement «CyberMUT Paiement / Paiement CIC» à votre boutique : Une fois le mode de paiement ajouté à votre boutique, vous devez cliquer sur le lien ci-dessous pour le configurer. - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 17 / 27

Le premier onglet «Général» vous permet de paramétrer l utilisation de votre mode de paiement ; vous pouvez entre autres (reportez-vous à votre documentation e- pages pour plus de détails) : rendre visible ou non aux clients ce mode de paiement, sélectionner ce mode de paiement comme celui par défaut, choisir les pays pouvant utiliser ce mode etc. Vous pouvez également personnaliser le nom affiché dans le panier et ajouter un commentaire lié au mode de paiement : - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 18 / 27

Le second onglet, «Paramètres», vous permet de configurer votre TPE. Vous avez simplement à fournir quelques renseignements et votre mode de paiement sera opérationnel (sous condition d acceptation du contrat). Ces renseignements sont : Votre numéro de TPE Votre code société Votre clé secrète Vous devez également préciser votre mode de fonctionnement : si vous êtes en paiement différé, choisissez «le paiement est recouvré via votre tableau de bord» si vous êtes en paiement immédiat, choisissez «le paiement est recouvert immédiatement» Si vous êtes en phase de test, merci de le préciser via le paramètre «environnement utilisé» ; attention : si vous basculez en production, tous les paiements effectués seront réellement débités. Enfin, vous pouvez choisir votre passerelle de paiement (CyberMUT Paiement ou Paiement CIC) ainsi que les cartes de crédit utilisées que vous souhaitez accepter. L URL d appel à votre interface retour sera à fournir à commerce électronique (centrecom@e-i.com) en précisant votre numéro de TPE et votre code société. Votre tableau de bord CyberMUT Paiement est également accessible via les liens au dessus de la page paramètres. - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 19 / 27

5 Aides à l installation 5.1 Utilisation de l outil «Open Tools» de configuration Cet outil, nommé «Extract HMAC», vous aide à mettre en place la clé de cryptage dans votre environnement. Cet outil est disponible pour les clés SHA1 et MD5. Avant de commencer la configuration, veuillez prendre note des recommandations suivantes : Lisez attentivement toutes les documentations et licences Prenez les meilleures dispositions pour protéger et stocker de manière sécurisée les deux parties de la clé Vous pouvez évaluer le processus complet d intégration avec l option «clef fictive», mais cela ne vous permettra pas d interagir avec nos serveurs L utilisation de l outil est détaillée étape par étape ci-dessous : 1 2 3 4 5 6 5 9 8 1. Remplacez le contenu de ce cadre par le contenu du fichier clé que nous vous avons fourni (<numéro de TPE>.key) - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 20 / 27

2. Renseignez ce champ avec une phrase clé ou cliquez sur le bouton pour en générer une de manière automatique 3. Saisissez le numéro de TPE puis cliquez sur le bouton «Calculer le HMAC de contrôle» 4. Renseignez le code société 5. Renseignez les URL «OK» et «Not OK» 6. Indiquez le kit choisi 7. Choisissez la banque concernée 8. Une fois les étapes précédentes réalisées, le bouton «Code Source» devient actif ; cliquez sur ce bouton 9. Du code est apparu dans un ou plusieurs de ces champs, sous chaque champ rempli, se trouve un bouton indiquant un nom de fichier ; pour chaque champ, copiez le contenu et insérez-le dans le fichier indiqué sur le bouton (voir l exemple ci-dessous) Ce code doit être inséré dans le fichier Ce code doit être inséré dans le fichier Ici il n y a rien à copier, le bouton est donc vide - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 21 / 27

5.2 Foire aux questions Peut-on personnaliser la page de paiement? Non, la page de paiement est une page spécifique au serveur de paiement de la banque, vous ne pouvez pas intervenir sur son aspect. Pour vous, le fait d être sur le serveur de la banque est aussi une façon de crédibiliser le paiement électronique vis- société peut être mis en à-vis des acheteurs. Seul le logo de votre place. Comment afficher mon logo sur votre page de paiement? Vo us devez nous transmettre par courriel au centre de support ( centrecom@ei.com) l'url d une image représentant votre logo. Cette image doit être au format GIF et d une taille de 120 pixels x 120 pixels maxi. Quel est le temps maximum dont dispose mon client pour effectuer le paiement (saisie du numéro de carte) suite à une commande sur mon site? L internaute dispose de 45 minutes, à partir de l arrivée sur la page de paiement, pour saisir les informations relatives à sa carte bancaire. Au-delà de ce délai, toute saisie sera refusée. Quel est le nombre d'essai pour saisir les numéros de carte bleue? Le nombre d'essai maximum pour un paiement est de 3. Ou peut-on trouver des numéros de carte pour effectuer des tests? Sur la page de paiement, vous trouverez une icône clignotante «TEST» ; en cliquant sur cette icône, une fenêtre présentant différents numéros de cartes de test s ouvre. Il vous suffit alors de sélectionner l une des cartes et le formulaire de la page de paiement se remplit automatiquement. Vous disposez de plusieurs cartes de test : 2 cartes 16 pan : l une pour provoquer un paiement accepté et l'autre pour provoquer un paiement refusé 2 cartes 15 pan (cartes étrangères) sur le même principe Quelles sont les langues prises en charge par la page de paiement? Français Anglais Allemand Espagnol Italien Néerlandais Peut-on être prévenu par courriel pour chaque demande de paiement? Une notification peut être envoyée par courriel à chaque fois qu'une demande d'autorisation est effectuée (une demande d'autorisation est effectuée si le format du numéro de carte a été validé). Il faut demander l activation de cette option en s adressant au centre de support (centrecom@e-i.com). - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 22 / 27

Comment connaitre le nom et l'adresse des porteurs de carte? Nous ne disposons pas des informations relatives aux coordonnées de l'acheteur sur notre serveur de paiement ; en effet, le client ne saisit que les informations concernant sa carte bancaire (numéro, date d expiration et cryptogramme visuel). Il n'est pas prévu dans le cadre de notre solution de paiement que le commerçant puisse nous transmettre des informations sur le client. Nous ne proposons pas de moyen de déduire l identité du porteur à partir des informations de la carte. Peut-on re-créditer un paiement? Oui, pour cela il faut demander l'option «re-crédit» à votre conseiller commercial. Cette fonction est ensuite disponible sur le tableau de bord commerçant. A quoi correspondent les différentes «URL_RETOUR» du paramétrage? url_retour : correspond au lien affiché en bas de notre page de paiement, avant que le client ne valide sa saisie ; ce lien permet à l acheteur de revenir sur une page de votre boutique sans avoir effectué de paiement url_retour_ok : correspond au lien (permettant à l acheteur de retourner sur une page de votre boutique) affiché en bas de notre page de paiement une fois le paiement effectué et accepté url_retour_err : correspond au lien (permettant à l acheteur de retourner sur une page de votre boutique) affiché en bas de notre page de paiement une fois le paiement effectué et refusé Il ne faut pas confondre ces URL avec l URL de l interface «Retour». A quoi sert l'«url de confirmation CGI2»? Cette URL est celle de votre interface «Retour», dont le rôle est de recevoir le message de confirmation du paiement émis par le serveur banque. Ou doit-on paramétrer l'«url de confirmation CGI2»? Cette URL est renseignée dans nos bases ; vous devez nous la fournir lors de la phase de mise en place de la solution. Vous devez également nous notifier de tout changement d adresse de votre interface «Retour» (en vous adressant au centre de support : centre com@e-i.com). Que faire lorsque je rencontre une erreur «CGI2 NOT OK»? Vous devez tout d abord effectuer les vérifications de base suivantes : L adresse de l interface «Retour» que vous nous avez fournie est-elle valide? Cette adresse est-elle accessible sur votre serveur depuis l extérieur? Le port sur lequel s adresser à votre interface «Retour» est-il bien 80 (http) ou 443 (https)? En effet, notre serveur de paiement n accepte de s adresser qu à ces deux ports Si le problème persiste, veuillez effectuer les vérifications supplémentaires suivantes : le traitement entre le retour de notre serveur et votre envoi d'accusé de réception ne doit pas durer trop longtemps (moins de 30 secondes) - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 23 / 27

il ne doit pas être fait de redirection à la réception du code retour paiement la vérification du MAC (fonctionnalité tester_hmac()) doit être faite avant la génération de l accusé de réception (fonctionnalité creer_accuse_reception()) J'obtiens le message «Ce TPE est fermé» lors d une demande de paiement sur le serveur de TEST? Les TPE de test non utilisés pendant 30 jours glissants sont automatiquement fermés par nos services. Il ne sont cependant pas supprimés : vous pouvez utiliser la fonctionnalité de réouverture d un TPE de TEST sur votre tableau de bord. Peut-on avoir un TPE pour plusieurs sites? Oui, mais cela nécessite en amont une demande auprès de votre conseiller commercial. Il faut cependant que les différents sites répondent à la même activité. Le paramétrage étant spécifique pour chaque site, il vous faut nous transmettre toutes les informations (URLs de retour, adresse de l interface «Retour», logo, etc.). Peut-on obtenir un fichier relevé des paiements? Une telle prestation peut vous être fournie par votre banque ; vous pouvez vous adresser à votre conseiller commercial. - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 24 / 27

5.3 Les problèmes les plus fréquents Problème de calcul du sceau de sécurité Message d erreur «Les informations transmises par votre commerçant ont une signature non valide : Le niveau de sécurité exigé n est pas atteint. Notre serveur n est pas en mesure de traiter la demande de paiement relative à votre commande». C auses possibles - Le formulaire que vous nous avez envoyé ne contient pas toutes les informations requises - Le calcul du sceau MAC est erroné - Le calcul du sceau MAC est effectué avec une mauvaise clé Résolution du problème Suivez scrupuleusement le cheminement décrit ci-dessous ; à la fin de chaque étape pour laquelle vous avez effectué des changements dans votre implémentation, effectuez de nouveaux tests de paiement. S ils ne sont pas fructueux, passez à l étape suivante. Attention : ne sautez pas d étape! Etape 1 : vérifiez que toutes les variables envoyées dans le formulaire sont présentes, correctement orthographiées, respectent la casse et respectent les éventuelles restrictions sur le format et les caractères autorisés. Ces variables sont : TPE, date, montant, reference, texte-libre, version, lgue et societe Etape 2 : vérifiez que vous avez réussi à éviter les erreurs inhérentes à certains champs particuliers : - la valeur de la version MAC correspond elle à une chaîne de 40 caractères hexadécimaux (valeurs autorisées : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F)? - la valeur de la variable version correspond elle à 1.2open - la valeur de la variable date est elle bien au format JJ/MM/AA:HH:MM:SS? - la valeur de la variable référence est elle bien une chaîne ne contenant que des lettres (non accentuées) et des chiffres pour une longueur maximale de 12 caractères? - la variable texte-libre est elle correctement orthographiée, en respectant la casse et avec le caractère tiret ( - ) et non le caractère ( _ )? Etape 3 : vérifiez que la chaîne sur laquelle vous calculez le sceau MAC respecte le formalisme décrit précédemment, à savoir : <TPE>*<date>*<montant>*<reference>*<texte-libre>*<version>*<lgue>*<societe>* Soyez particulièrement attentif au fait que les données utilisées doivent être les mêmes que celles que vous fournissez dans le formulaire de paiement ; le - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 25 / 27

meilleur moyen pour atteindre cet objectif est de stocker à l avance les différentes informations, puis d utiliser ce stockage pour le calcul du sceau MAC et pour la construction du formulaire. Au contraire, renseigner les données à la volée peut induire des différences entre celles utilisées pour le calcul du sceau et celles utilisées pour la construction du formulaire (par exemple, pour le champ date, il peut y avoir une différence de quelques secondes). Etape 4 : vérifiez que vous utilisez la bonne clé : - vous devez utiliser la dernière clé qui vous a été fournie par nos services, - vérifiez que la clé correspond à votre algorithme de calcul de sceau (SHA1 ou MD5), - Contactez notre service de support et demandez-leur de valider avec vous que vous utilisez bien la bonne clé Si malgré toutes ces vérifications vous obtenez toujours ce message d erreur, le problème réside dans l intégration de notre solution dans votre système d information. La grande diversité des langages et des spécificités liées à l environnement utilisés pour l implémentation de notre solution de paiement, sont autant de paramètres dont nous ne maîtrisons pas tous les aspects et par conséquent, ils ne nous permettent pas de vous fournir un support personnalisé plus ample. L e commerçant ne peut pas être identifié Message d erreur «Le site de votre commerçant n a pas été identifié par notre serveur. Nous ne sommes pas en mesure de traiter la demande de paiement relative à votre commande.» Causes possibles - le numéro de TPE est incorrect ou inexistant - le code société est incorrect ou inexistant - le code langue est incorrect ou inexistant Résolution du problème Vérifiez que les variables TPE, societe et lgue sont présents dans le formulaire, correctement orthographiées, respectent la casse et respectent les éventuelles restrictions sur le format et les caractères autorisés. - version 1.2open - Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 26 / 27

5.4 Assistance technique Euro Information propose une assistance à la compréhension générale de l utilisation de sa solution : Par mail : boîte aux lettres «Commerce Electronique» (centrecom@e-i.com) 1 Par téléphone : 0820 821 735 Cependant, Euro Information n assure pas de support concernant les problématiques d intégration technique de sa solution de paiement dans le système d information commerçant. 1 La boîte aux lettres ETS TPE VIRTUEL est désormais renvoyée sur la boîte aux lettres «Commerce Electronique» ; elle sera prochainement supprimée. La boîte aux lettres «Commerce Electronique» devient donc désormais le seul point d entrée pour le support de la solution. - version 1.2open Juillet 2008. Copyright: 2003 2008 Euro Information.All rights reserved. Page 27 / 27