Préambule

Les fonctionnalités et moyens de paiement décrits dans le présent guide correspondent à la solution WL Sips proposée par Worldline, sur laquelle l’offre Sogenactif repose techniquement. Elles ne sont pas toutes disponibles sur l’offre Sogenactif ; pour connaître l’exhaustivité des fonctionnalités et moyens de paiement disponibles sur cette offre, veuillez-vous référer au guide « Configuration des fonctionnalités ».

Introduction

Sogenactif 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étiers liées à votre activité (paiement à la livraison, paiement différé, paiement récurrent, paiement échelonné , …).

L’objectif du présent document est d’expliquer la mise en œuvre de la solution Sogenactif Office Server JSON jusqu’au démarrage en production.

A qui s’adresse ce document

Ce document s’adresse aux commerçants qui souhaitent souscrire à l’offre Sogenactif et avoir recours à un connecteur à base d’échanges JSON via le protocole REST, en mode machine à machine.

C’est un guide d’implémentation qui s’adresse à votre équipe technique.

Pour avoir une vue d’ensemble de la solution Sogenactif , nous vous conseillons de consulter les documents suivants :

  • Présentation fonctionnelle,
  • Configuration des fonctionnalités.

Prérequis

Une connaissance élémentaire des standards relatifs aux langages de programmation Web pratiqués aujourd’hui, tels que Java, PHP ou .Net, est nécessaire pour développer la connexion à Sogenactif Office Server JSON .

Note: toutes les portions de code de ce document sont fournies à titre d’exemple, il convient de les adapter à votre site Web afin qu’elles soient pleinement exploitables.

Gestion de la clé secrète

Lors de votre inscription, Société Générale met à disposition sur Sogenactif Téléchargement (voir l'annexe "Télécharger la clé secrète"), une clé secrète qui permet de sécuriser les échanges entre votre site et le serveur Sogenactif .

Vous êtes responsable de sa conservation et devez prendre toutes les mesures pour :

  • en restreindre l'accès ;
  • la sauvegarder de manière chiffrée ;
  • ne jamais la copier sur un disque non sécurisé ;
  • ne jamais l'envoyer (e-mail, courrier) de manière non sécurisée.

La compromission de la clé secrète (et son utilisation par un tiers malveillant) perturberait le fonctionnement normal de votre boutique, et pourrait notamment générer des transactions et des opérations de caisse injustifiées (des remboursements par exemple).

IMPORTANT: en cas de compromission d’une clé secrète, vous êtes tenu d’en demander au plus vite la révocation puis le renouvellement via Sogenactif Téléchargement (voir l'annexe « Révocation et demande de renouvellement de la clé secrète » du guide de démarrage rapide Paypage POST ).

C’est la même clé secrète qui est utilisée sur les différents connecteurs Sogenactif Paypage , Sogenactif Office Serveur , Sogenactif In-App et Sogenactif Walletpage .

IMPORTANT: une clé secrète est associée à une version. Après avoir obtenu une nouvelle clé secrète, vous devez impérativement modifier votre requête et indiquer la nouvelle version dans le champ keyVersion , sans quoi vous obtiendrez un code réponse 34 (suspicion de fraude).

Contacter l'assistance

Pour toute question technique ou demande d'assistance, nos services sont disponibles du lundi au vendredi, hors jours fériés, de 9 h à 19 h :

  • par téléphone au : +33 (0) 825 090 095 ;
  • par e-mail : supportsogenactif@worldline.com.

Pour faciliter le traitement de vos demandes, veuillez communiquer votre identifiant de commerçant : merchantId (numéro à 15 chiffres).

Comprendre le paiement avec Sogenactif Office Server JSON

Le principe général d’un processus de paiement est le suivant :

1. Lorsque le client procède au paiement sur votre site, il doit saisir les informations du moyen de paiement.

2. Vous envoyez les informations relatives au paiement vers le serveur de paiement Sogenactif pour qu’il prenne en charge la transaction. Le serveur envoie une réponse pour que vous puissiez afficher le résultat du paiement.

3. Vous affichez le ticket contenant le résultat du paiement.

Démarrer avec Sogenactif Office Serveur en 6 étapes

Étape 1 : inscrire la boutique

Afin d’inscrire votre boutique, vous devez remplir le contrat Sogenactif envoyé par Société Générale et le retourner à ce dernier.

Lors de la saisie du formulaire, vous désignez un contact administratif (qui accèdera à Sogenactif Gestion ) et un contact technique (qui accèdera à Sogenactif Téléchargement ) afin que Société Générale puisse vous communiquer les informations nécessaires pour démarrer votre boutique.

Société Générale procède alors à l’enregistrement de la boutique et vous retourne par e-mail votre identifiant commerçant (merchantId) ainsi que vos identifiants et les modalités de connexion au Portail Sogenactif et à Sogenactif Téléchargement .

Pour la connexion au Portail Sogenactif , le contact renseigné dans le contrat Sogenactif – rubrique « Portail Sogenactif » recevra un e-mail contenant l’identifiant et un lien pour générer lui-même son mot de passe. Pour la connexion à Sogenactif Téléchargement , le contact renseigné dans le contrat Sogenactif – rubrique « Sogenactif Téléchargement » recevra son mot de passe par e-mail, l’identifiant sera envoyé par mail séparé au contact renseigné pour le Portail Sogenactif .

Note: L’inscription de la boutique n’est pas nécessaire pour commencer à intégrer le connecteur et à tester la connexion sur l’environnement de simulation. Vous pouvez ne demander l’inscription de votre boutique qu’au moment de faire les tests en production.

Étape 2 : utiliser les fonctions disponibles

Les différentes fonctions possibles font l’objet de requêtes spécifiques.

Tip: avant d’utiliser une fonction, vérifiez que vous avez bien les droits pour utiliser cette fonction sur votre boutique en contactant l’assistance technique Sogenactif .

Une requête est composée de champs génériques et de champs de type container.

Un container est une structure utilisée afin de regrouper fonctionnellement les données.

Si le champ est de type container, cette précision est indiquée dans la colonne commentaire qui renvoie à la partie dédiée détaillant le contenu de tous les champs de ce type.

Une requête consiste en un appel vers un service Web  REST (JSON) situé sur la plateforme de paiement Sogenactif . Tous les champs nécessaires pour chaque requête doivent être fournis.

Attention: pour rappel, il est nécessaire d'indiquer, dans l'en-tête de votre message, que les données à traiter sont de type JSON. Vous devez pour cela préciser l'en-tête 'Content-Type: application/json' dans votre message JSON. À défaut vous risquez de recevoir un message d'erreur de ce type :
        <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html>
    <head>
        <title>415 Unsupported Media Type</title>
    </head>
    <body>
        <h1>Unsupported Media Type</h1>
        <p>The supplied request data is not in a format
acceptable for processing by this resource.</p>
    </body>
</html>
      
Note: dans les réponses, en fonction de l’état de la transaction et du moyen de paiement choisi, certains champs peuvent être nuls, vides ou non renseignés. Veuillez consulter les documentations des moyens de paiement pour connaître les champs attendus dans les réponses.

Syntaxe de la requête

La requête est construite conformément au format JSON :

      {“<nom du champ>” : ”<nom de la valeur>”, “<nom du champ>” : “<nom de la valeur>”, “nom du champ” : “Nom de la valeur” etc., “seal” : “valeur de seal” }
    

Exemple d’une requête de paiement d’un montant de 10 euros :

      {"amount" : "1000","automaticResponseUrl" : "https://responseurl.com","currencyCode" : 
"978","interfaceVersion" : "IR_WS_2.20","keyVersion" : "1","merchantId" : 
"000000000000012","normalReturnUrl" : "https://responseurl2.com","orderChannel" : 
"INTERNET","transactionReference" : "1232015021717313","seal" : 
"858005903b91ae3b3a076e29aca7dc6314c05aa6f929c439ecfce1de17ea7e39"}
    

La syntaxe utilisée pour créer une liste en JSON suit la norme. Voici un résumé de cette structure pour les deux principaux types de listes : les listes de champs simples (par ex. chaînes de caractères) et les listes d’objets.

Il est possible d’avoir une liste de valeurs pour un même champ :

      …,"nom du champ" : ["valeur1","valeur2"],…
    

Exemple avec le champ paymentMeanBrandList valorisé avec VISA et MASTERCARD :

      …,"paymentMeanBrandList" : ["VISA","MASTERCARD"],…
    

Si un champ contient une liste d’objets complexes, sa représentation est construite conformément au format suivant :

      …,“nom du champ” : [{“nom du sous-champ1”:”valeur1”,“nom du sous-champ2”:”valeur2”},{“nom du souschamp1”:”valeur3”, “nom du sous-champ2”:”valeur4”}],…
    

Exemple d’une requête de paiement avec une liste d’objets complexes pour le champ shoppingCartDetail contenant deux produits nommés apple et mango :

      {"amount" : "1000","automaticResponseUrl" : "https://responseurl.com","currencyCode" : 
"978","interfaceVersion" : "IR_WS_2.8","keyVersion" : "1","merchantId" : 
"000000000000012","normalReturnUrl" : "https://responseurl2.com","orderChannel" : 
"INTERNET","shoppingCartDetail" : {"shoppingCartItemList" : [{"productCode" : 
"123","productName" : "apple"},{"productCode" : "456","productName" : 
"mango"}],"shoppingCartTotalAmount" : "1000"},"transactionReference" : 
"1232015021717313","seal" : 
"fac5bc8e5396d77a8b31a2a79a38750feea71b22106a2cec88efa3641a947345"}
    

Présence des champs de la requête

Certains champs de la requête de paiement ne sont obligatoires que :

  • lors de l'utilisation de certains moyens de paiement ; veuillez consulter le guide du moyen de paiement concerné pour savoir quels champs sont obligatoires ;
  • en fonction de la configuration de votre boutique ; veuillez consulter le guide de configuration des fonctionnalités pour savoir quels champs sont obligatoires ;
  • dans certains cas d'usages (ex : paiement récurrent) ; veuillez consulter le guide de configuration des fonctionnalités pour savoir quels champs sont obligatoires.

Ces champs sont désignés avec la mention « conditionnel ».

Sécuriser la requête

La requête contient les paramètres de la transaction et est envoyée par le navigateur Web du client. Il est théoriquement possible pour un pirate d’intercepter la demande et de la modifier avant l’envoi au serveur de paiement.

De ce fait, il est nécessaire de renforcer la sécurité pour assurer l’intégrité des paramètres de la transaction envoyée. Sogenactif répond à ce besoin par un échange de signatures qui permet de vérifier :

  • l’intégrité des messages requête et réponse ;
  • l’authentification de l’émetteur et du destinataire car ils se partagent la même clé secrète ;
IMPORTANT: si votre clé secrète est compromise, ou si vous supposez que c’est le cas, vous devez impérativement demander son renouvellement en vous connectant à Sogenactif Téléchargement .

Comment sécuriser la requête

La sécurisation de la requête est effectuée en calculant la valeur « hashée » conformément aux paramètres de la transaction (donnée Data ). Ensuite, la clé secrète y est ajoutée. Toutes les chaînes de caractères sont converties en UTF-8 avant le « hashage ».

L’algorithme de « hashage » génère un résultat irréversible. Lorsqu’un tel message est reçu, le destinataire doit recalculer la valeur « hashée » pour la comparer à celle reçue. Toute différence indique que les données échangées ont été falsifiées ou que le destinataire et l’émetteur ne partagent pas la même clé secrète.

Le résultat doit être envoyé sous forme hexadécimale dans la donnée nommée Seal .

Calcul de la donnée Seal

Algorithme HMAC-SHA

La valeur de la donnée Seal est calculée comme suit :

  • concaténation des valeurs des champs de données dans l’ordre alphabétique (respectant le code de caractères ASCII) des noms des champs, sauf pour les champs keyVersion et sealAlgorithm . Donnant la donnée data , mentionnée dans les exemples ci-dessous.
    • exemple : un champ nommé authorResponseMessage est à positionner avant un champ nommé authorisationId ;
  • obtention de l’encodage UTF-8 des données du résultat précédent ;
  • HMAC avec chiffrement SHA256 des octets obtenus avec la clé secrète.

Cette procédure peut être résumée comme suit :

      HMAC-SHA256( UTF-8(sortedDataValues), UTF-8(secretKey))
    
Note: par défaut, le sceau est calculé avec l'algorithme HMAC-SHA-256. Pour qu’un sceau soit calculé avec l'algorithme SHA-256, les paramètres d'entrée de la requête doivent contenir le champ sealAlgorithm avec la valeur suivante : “SHA-256”.

Exemples de code Hmac Sha256

  • Exemple d’encodage Hmac Sha256 en Php 5
            <?php
    
    …
    
    // Seal computation thanks to hash sorted data hash with merchant key
    
    $data_to_send= utf8_encode($data)
    
    $seal=hash_hmac('sha256', $data_to_send, $secretKey);
    
    …
    …
    
    ?> 
          

    data_to_send et secretKey doivent utiliser un jeu de caractères UTF-8. Référez-vous à la fonction utf8_encode pour la conversion de caractères ISO-8859-1 en UTF-8.

  • Exemple d’encodage Hmac Sha256 en Java
            import java.security.InvalidKeyException;
    import java.security.NoSuchAlgorithmException;
    
    import javax.crypto.Mac;
    import javax.crypto.spec.SecretKeySpec;
    
    public class ExampleHMACSHA256 {
    
    /**
     * table to convert a nibble to a hex char.
     */
    static final char[] hexChar = {
       '0' , '1' , '2' , '3' ,
       '4' , '5' , '6' , '7' ,
       '8' , '9' , 'a' , 'b' ,
       'c' , 'd' , 'e' , 'f'};
    
    /**
     * Fast convert a byte array to a hex string
     * with possible leading zero.
     * @param b array of bytes to convert to string
     * @return hex representation, two chars per byte.
     */
    public static String encodeHexString ( byte[] b )
       {
       StringBuffer sb = new StringBuffer( b.length * 2 );
       for ( int i=0; i<b.length; i++ )
          {
          // look up high nibble char
          sb.append( hexChar [( b[i] & 0xf0 ) >>> 4] );
    
          // look up low nibble char
          sb.append( hexChar [b[i] & 0x0f] );
          }
       return sb.toString();
       }
    
    /**
     * Computes the seal
     * @param Data the parameters to cipher
     * @param secretKey the secret key to append to the parameters 
     * @return hex representation of the seal, two chars per byte.
     */
    public static String computeSeal(String data, String secretKey) throws Exception
    {
      Mac hmacSHA256 = Mac.getInstance("HmacSHA256");
      SecretKeySpec keySpec = new SecretKeySpec(secretKey.getBytes(), "HmacSHA256");
      hmacSHA256.init(keySpec);
    
      return encodeHexString(hmacSHA256.doFinal(data.getBytes()));
    }
    
    /**
     * @param args
     */
    public static void main(String[] args) {
    try {
    System.out.println (computeSeal("parameters", "key"));
    } catch (Exception e) {
    e.printStackTrace();
    }
    }
    
    }
          
  • Exemple d’encodage Hmac Sha256 en .net

    (Exemple effectué à l’aide d’un simple formulaire nommé « Form1 » contenant deux champs texte pour saisir data et txtSecretKey , ainsi qu’un autre champ pour afficher  lblHEX ).

            using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.Security.Cryptography;
    
    namespace ExampleDotNET
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void cmdGO_Click(object sender, EventArgs e)
            {
                String sChaine = data.Text;
                UTF8Encoding utf8 = new UTF8Encoding();
                Byte[] encodedBytes = utf8.GetBytes(sChaine);
            
                byte[] shaResult;
                
                HMAC hmac = new HMAC.Create("HMACSHA256");
                var key = "YourSecretKey";
                hmac.Key = utf8.GetBytes(key); 
                hmac.Initialize();
    
                shaResult = hmac.ComputeHash(encodedBytes);
    
                lblHEX.Text = ByteArrayToHEX(shaResult);
            }
    
            private string ByteArrayToHEX(byte[] ba)
            {
                StringBuilder hex = new StringBuilder(ba.Length * 2);
                foreach (byte b in ba)
                    hex.AppendFormat("{0:x2}", b);
                return hex.ToString();
            }
    
        }
    }
          

Validation du calcul de seal

Une fois votre calcul de seal mis en place, voici un exemple de requête vous permettant de vérifier que vous retrouvez bien le bon seal :

      {
  "amount": "2500",
  "captureDay": "0",
  "captureMode": "AUTHOR_CAPTURE",
  "cardCSCValue": "000",
  "cardExpiryDate": "201612",
  "cardNumber": "1234123412341234",
  "currencyCode": "978",
  "customerContact":{
    "email":"customer@email.com"
  },
  "interfaceVersion": "IR_WS_2.3",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "orderChannel": "INTERNET",
  "orderId": "ORD101",
  "returnContext": "ReturnContext",
  "transactionOrigin": "SO_WEBAPPLI",
  "transactionReference": "TREFEXA2012",
  "seal": "f1772faa4b73c0fc5a9810ad7fcaf91458d6174b2178a0a0a2bea2d860b404f5"
}
    

Pour la requête ci-dessus, la chaîne concaténée que vous devez calculer est la suivante :

      25000AUTHOR_CAPTURE0002016121234123412341234978customer@email.comIR_WS_2.3
011223344550000INTERNETORD101ReturnContextSO_WEBAPPLITREFEXA2012
    

Avec un algorithme de hachage HMAC-SHA-256 et une clé secrète valant :

      secret123
    

Le seal attendu est :

      f1772faa4b73c0fc5a9810ad7fcaf91458d6174b2178a0a0a2bea2d860b404f5
    

Fonction "cardOrder" du service "checkout"

Cette fonction vous permet d'effectuer un paiement carte avec les informations bancaires d'un client.

Les informations sensibles (numéro de carte, cryptogramme visuel) peuvent être gérées selon trois possibilités, via le champ panType  :

  • chiffrement par l'utilisation du mode CSE (voir la documentation concernée) ;
  • tokenisation du numéro de carte ;
  • numéro de carte en clair (forte contrainte PCI).

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/cardOrder

Format de la requête cardOrder

Champ Présence A partir de la version Commentaires
amount Obligatoire WS_2.0
captureDay Facultatif WS_2.0
captureMode Facultatif WS_2.0
cardCSCValue Facultatif WS_2.0
cardEffectiveDate Facultatif WS_2.0
cardExpiryDate Facultatif WS_2.0
cardNumber Obligatoire WS_2.0
cardSeqNumber Facultatif WS_2.0
currencyCode Obligatoire WS_2.0
customerId Facultatif WS_2.0
customerIpAddress Facultatif WS_2.0
fraudData Facultatif WS_2.0 Voir la partie Containers
merchantId Obligatoire WS_2.0
merchantTransactionDateTime Facultatif WS_2.0
orderChannel Conditionnel WS_2.0 Facultatif pour AccordKdo, obligatoire pour tous les autres moyens de paiement
orderId Facultatif WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
returnContext Facultatif WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
transactionOrigin Facultatif WS_2.0
billingAddress Facultatif WS_2.0 Voir la partie Containers
billingContact Facultatif WS_2.0 Voir la partie Containers
customerAddress Facultatif WS_2.0 Voir la partie Containers
customerContact Facultatif WS_2.0 Voir la partie Containers
deliveryAddress Facultatif WS_2.0 Voir la partie Containers
deliveryContact Facultatif WS_2.0 Voir la partie Containers
deliveryData Facultatif WS_2.19 Voir la partie Containers
holderAddress Facultatif WS_2.0 Voir la partie Containers
holderContact Facultatif WS_2.0 Voir la partie Containers
customerData Facultatif WS_2.0 Voir la partie Containers
authenticationData Facultatif WS_2.0 Voir la partie Containers
invoiceReference Facultatif WS_2.0
statementReference Facultatif WS_2.2
paymentPattern Conditionnel WS_2.2 Ce champ est obligatoire pour certains moyens de paiement. Pour de plus amples informations, référez-vous au guide d'intégration du moyen de paiement concerné
panType Facultatif WS_2.4
paymentMeanBrand Facultatif WS_2.2
paymentMeanData Facultatif WS_2.5 Voir la partie Containers
holderData Facultatif WS_2.5 Voir la partie Containers
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
riskManagementCustomDataList Facultatif WS_2.8 Liste de conteneur riskManagementCustomData . Voir la partie Containers
shoppingCartDetail Facultatif WS_2.8 Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
paymentMeanBrandSelectionStatus Facultatif WS_2.13 Si ce champ est spécifié en entrée, paymentMeanBrand est obligatoire
subMerchantId Facultatif WS_2.14
subMerchantShortName Facultatif WS_2.14
subMerchantCategoryCode Facultatif WS_2.14
subMerchantLegalId Facultatif WS_2.14
subMerchantAddress Facultatif WS_2.14 Voir la partie Containers
customerLanguage Facultatif WS_2.15
travelContext Facultatif WS_2.19 Voir la partie Containers
orderContext Facultatif WS_2.19 Voir la partie Containers
paymentMeanDataProvider Facultatif WS_2.31
panEntryMode Facultatif WS_2.31
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33
initialSchemeTransactionIdentifier Facultatif WS_2.33

Exemple de requête cardOrder

      {
  "amount": "2500",
  "captureDay": "0",
  "captureMode": "AUTHOR_CAPTURE",
  "cardCSCValue": "0000",
  "cardExpiryDate": "201612",
  "cardNumber": "1234123412341234",
  "currencyCode": "978",
  "interfaceVersion": " IR_WS_2.3",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "orderChannel": "INTERNET",
  "orderId": " ORD101",
  "returnContext": " ReturnContext",
  "transactionOrigin": " SO_WEBAPPLI",
  "transactionReference": "TREFEXA2012",
  "seal": "2205f0636dc500c4f3ef536075895b8baba3a60c7087e06cd9d330c50a50c53e"
}

    

Format de la réponse cardOrder

Champ A partir de la version Commentaires
acquirerResponseCode WS_2.0 Uniquement en cas de refus lors du contrôle de pré-autorisation
authorisationId WS_2.0
cardScheme WS_2.0
complementaryCode WS_2.0
complementaryInfo WS_2.0
guaranteeIndicator WS_2.0
holderAuthentRelegationCode WS_2.0
holderAuthentStatus WS_2.0
maskedPan WS_2.0
responseCode WS_2.0
returnContext WS_2.0 Valeur transférée à la requête de paiement
scoreColor WS_2.0
scoreInfo WS_2.0
scoreProfile WS_2.0
scoreThreshold WS_2.0
scoreValue WS_2.0
transactionDateTime WS_2.0
tokenPan WS_2.0
cardCSCResultCode WS_2.2
avsPostcodeResponseCode WS_2.2
avsAddressResponseCode WS_2.2
recurringResponseCode WS_2.2
acquirerResponseIdentifier WS_2.5 Retourné seulement si l'interfaceVersion est inférieur à 2.19.
acquirerResponseMessage WS_2.5
paymentMeanTradingName WS_2.5
paymentMeanData WS_2.5 Voir la partie Containers
s10TransactionReference WS_2.6 Voir la partie Containers
transactionReference WS_2.6
cardData WS_2.9 Voir la partie Containers
seal WS_2.0
preAuthorisationProfile WS_2.13
preAuthorisationProfileValue WS_2.13
preAuthorisationRuleResultList WS_2.13 Liste de conteneur preAuthorisationRuleResult . Voir la partie Containers
paymentMeanBrandSelectionStatus WS_2.13
captureDay WS_2.15
captureMode WS_2.15
transactionPlatform WS_2.17 Systématiquement valorisé à « PROD »
authorMessageReference WS_2.19 Remplace le acquirerResponseIdentifier
authorisationTypeLabel WS_2.19
acceptanceSystemApplicationId WS_2.20
errorFieldName WS_2.21
panEntryMode WS_2.22
walletType WS_2.22
issuerWalletInformation WS_2.22
paymentMeanBrand WS_2.22
intermediateServiceProviderOperationId WS_2.24
orderId WS_2.24
paymentMeanDataProvider WS_2.31
schemeTransactionIdentifier WS_2.31
paymentAccountReference WS_2.31
guaranteeLimitDateTime WS_2.32

Exemple de réponse cardOrder

      {
  "acquirerResponseCode": "00",
  "authorisationId": "123456789102",
  "cardScheme": "MASTERCARD",
  "complementaryCode": "",
  "complementaryInfo": "",
  "maskedPan": "5219##########00",
  "responseCode": "00",
  "returnContext": "ReturnContext",
  "transactionDateTime": "2012-10-16T23:50:44-12:00",
  "seal": "7ca065ebba90762e3286ee16d6a2d2da0eea8bae6b46592058933881d96d0c3d",
  "transactionPlatform": "PROD"
}

    

Fonction "refund" du service "cashManagement"

Cette opération vous permet de rembourser une transaction en créditant le compte du client et en débitant votre compte.

Note : veuillez consulter le guide de configuration des fonctionnalités, partie 'gestion de caisse > remboursement', pour savoir dans quels cas vous pouvez effectuer une opération de remboursement.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/cashManagement/refund

Format de la requête refund

Champ Présence A partir de la version Commentaires
operationAmount Obligatoire WS_2.0
currencyCode Obligatoire WS_2.0
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est CR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
operationOrigin Facultatif WS_2.0
paymentMeanData Facultatif WS_2.5 Voir la partie Containers
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
shoppingCartDetail Facultatif WS_2.11 Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
customerContact Facultatif WS_2.20 Voir la partie Containers
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33

Exemple de requête refund

      {
  "currencyCode": "978",
  "interfaceVersion": "CR_WS_2.3",
  "merchantId": "011223344550000",
  "operationAmount": "1000",
  "operationOrigin": "SO_BATCH",
  "transactionReference": "TREFEXA2012",
  "keyVersion": "1",
  "seal": "bed2f99d4137d402fde0c86a182f7d4f01c68e57d8a073fe5e920c57d06da1b5"
}

    

Format de la réponse refund

Champ A partir de la version Commentaires
acquirerResponseCode WS_2.0
authorisationId WS_2.0
newAmount WS_2.0
newStatus WS_2.0
operationDateTime WS_2.0
responseCode WS_2.0
seal WS_2.0
errorFieldName WS_2.21

Exemple de réponse refund

      {
  "acquirerResponseCode": "00",
  "authorisationId": "123456789102",
  "newAmount": 0,
  "operationDateTime": "2012-10-16T23:45:34-12:00",
  "responseCode": "00",
  "newStatus": "TO_CREDIT",
  "seal": "919b544bfb60539c8979992bc469e0b4229030ee2462a51f62c9cbd3510b3647"
}

    

Fonction "validate" du service "cashManagement"

Cette fonction permet de déclencher la remise en paiement d’une transaction. Elle vous permet de faire du paiement différé en débitant votre client à l’expédition des produits achetés.

Note : veuillez consulter le guide de configuration des fonctionnalités, partie 'gestion de caisse > validation', pour savoir dans quels cas vous pouvez effectuer une opération de validation.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/cashManagement/validate

Format de la requête validate

Champ Présence A partir de la version Commentaires
operationAmount Obligatoire WS_2.0
currencyCode Obligatoire WS_2.0
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est CR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
operationOrigin Facultatif WS_2.0
lastRecoveryIndicator Facultatif WS_2.16
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
subMerchantId Facultatif WS_2.14
subMerchantShortName Facultatif WS_2.14
subMerchantCategoryCode Facultatif WS_2.14
subMerchantLegalId Facultatif WS_2.14
subMerchantAddress Facultatif WS_2.14 Voir la partie Containers

Exemple de requête validate

      {
  "currencyCode": "978",
  "interfaceVersion": "CR_WS_2.3",
  "merchantId": "011223344550000",
  "operationAmount": "1200",
  "operationOrigin": "SO_BATCH",
  "transactionReference": "TREFEXA2012",
  "keyVersion": "1",
  "seal": "bed2f99d4137d402fde0c86a182f7d4f01c68e57d8a073fe5e920c57d06da1b5"
}

    

Format de la réponse validate

Champ A partir de la version Commentaires
acquirerResponseCode WS_2.0
authorisationId WS_2.0
newAmount WS_2.0
newStatus WS_2.0
operationDateTime WS_2.0
responseCode WS_2.0
captureLimitDate WS_2.1
seal WS_2.0
errorFieldName WS_2.21
schemeTransactionIdentifier WS_2.31
paymentAccountReference WS_2.31
guaranteeIndicator WS_2.32
secureReference WS_2.32

Exemple de réponse validate

      {
  "acquirerResponseCode": "00",
  "authorisationId": "123456789102",
  "newAmount": 1000,
  "operationDateTime": "2012-10-16T23:53:19-12:00",
  "responseCode": "00",
  "newStatus": "TO_CAPTURE",
  "seal": "919b544bfb60539c8979992bc469e0b4229030ee2462a51f62c9cbd3510b3647"
}

    

Fonction "duplicate" du service "cashManagement"

Cette fonction permet de créer une nouvelle transaction à partir des données d'une transaction précédente. À titre d'exemple, si une transaction n'a - par erreur ou omission - pu être validée dans le délai de capture que vous avez renseigné, elle a expiré et ne sera donc pas envoyée en remise en paiement. Vous pouvez alors rattraper cette transaction en la dupliquant.

Note : veuillez consulter le guide de configuration des fonctionnalités, partie 'gestion de caisse > duplication', pour savoir dans quels cas vous pouvez effectuer une opération de duplication.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/cashManagement/duplicate

Format de la requête duplicate

Champ Présence A partir de la version Commentaires
amount Obligatoire WS_2.0
captureDay Facultatif WS_2.0
captureMode Facultatif WS_2.0
currencyCode Obligatoire WS_2.0
customerEmail Facultatif WS_2.0
customerId Facultatif WS_2.0
customerIpAddress Facultatif WS_2.0
fraudData Facultatif WS_2.0 Voir la partie Containers
fromTransactionReference Facultatif WS_2.0
merchantId Obligatoire WS_2.0
merchantTransactionDateTime Facultatif WS_2.0
orderChannel Facultatif WS_2.0
orderId Facultatif WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est CR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
returnContext Facultatif WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
transactionOrigin Facultatif WS_2.0
fromMerchantId Facultatif WS_2.1
deliveryAddress Facultatif WS_2.1 Voir la partie Containers
deliveryContact Facultatif WS_2.1 Voir la partie Containers
billingAddress Facultatif WS_2.19 Voir la partie Containers
billingContact Facultatif WS_2.19 Voir la partie Containers
customerAddress Facultatif WS_2.19 Voir la partie Containers
customerContact Facultatif WS_2.19 Voir la partie Containers
customerData Facultatif WS_2.19 Voir la partie Containers
statementReference Facultatif WS_2.2
deliveryData Facultatif WS_2.5 Voir la partie Containers
shoppingCartDetail Facultatif WS_2.5 Voir la partie Containers
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
s10FromTransactionReference Facultatif WS_2.6 Voir la partie Containers
paymentMeanData Facultatif WS_2.12 Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
subMerchantId Facultatif WS_2.14
subMerchantShortName Facultatif WS_2.14
subMerchantCategoryCode Facultatif WS_2.14
subMerchantLegalId Facultatif WS_2.14
subMerchantAddress Facultatif WS_2.14 Voir la partie Containers
holderAddress Facultatif WS_2.17 Voir la partie Containers
holderContact Facultatif WS_2.19 Voir la partie Containers
authenticationData Facultatif WS_2.17 Voir la partie Containers
travelContext Facultatif WS_2.19 Voir la partie Containers
orderContext Facultatif WS_2.19 Voir la partie Containers
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33

Exemple de requête duplicate

      {
  "amount": "1000",
  "currencyCode": "978",
  "captureDay": "0",
  "captureMode": "AUTHOR_CAPTURE",
  "customerEmail": "customer@email.com",
  "customerId": "654321",
  "customerIpAddress": "127.0.0.1",
  "interfaceVersion": " CR_WS_2.3",
  "merchantId": "011223344550000",
  "orderChannel": "INTERNET",
  "orderId": "123456",
  "returnContext": "ReturnContext",
  "transactionOrigin": "SO_BATCH",
  "fromTransactionReference": "TREFEXA20122",
  "transactionReference": "TREFEXA20121",
  "keyVersion": "1",
  "seal": "db2bbdd9550b5b7dc316d4b2859a0c45189aeaaf46b899cd90d5bde272e6ae24"
}

    

Format de la réponse duplicate

Champ A partir de la version Commentaires
acquirerResponseCode WS_2.0
authorisationId WS_2.0
complementaryCode WS_2.0
complementaryInfo WS_2.0
maskedPan WS_2.3
panExpiryDate WS_2.3
paymentMeanBrand WS_2.3
scoreValue WS_2.0
scoreColor WS_2.0
scoreInfo WS_2.0
scoreProfile WS_2.0
scoreThreshold WS_2.0
responseCode WS_2.0
transactionDateTime WS_2.0
s10TransactionReference WS_2.6 Voir la partie Containers
transactionReference WS_2.6
cardData WS_2.9 Voir la partie Containers
seal WS_2.0
paymentMeanBrandSelectionStatus WS_2.13
preAuthorisationProfile WS_2.13
preAuthorisationProfileValue WS_2.13
preAuthorisationRuleResultList WS_2.13 Liste de conteneur preAuthorisationRuleResult . Voir la partie Containers
transactionPlatform WS_2.17 Systématiquement valorisé à « PROD »
avsPostcodeResponseCode WS_2.17
avsAddressResponseCode WS_2.17
errorFieldName WS_2.21
schemeTransactionIdentifier WS_2.31
paymentAccountReference WS_2.31

Exemple de réponse duplicate

      {
  "acquirerResponseCode": "00",
  "authorisationId": "069308",
  "responseCode": "00",
  "transactionDateTime": "2012-10-16T23:48:14-12:00",
  "seal": "0fdd9a35319712a9feff14eee0f68bbd35bd8fb6000819b2d5cd17b2704d6b6f",
  "transactionPlatform": "PROD"
}

    

Fonction "cancel" du service "cashManagement"

Cette fonction permet d’annuler une transaction avant l’envoi en banque ou de modifier son montant.

Une opération d’annulation ne peut pas être annulée et on ne peut pas annuler un montant supérieur au montant d’origine de la transaction.

Note : veuillez consulter le guide de configuration des fonctionnalités, partie 'gestion de caisse > annulation', pour savoir dans quels cas vous pouvez effectuer une opération d'annulation.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/cashManagement/cancel

Format de la requête cancel

Champ Présence A partir de la version Commentaires
operationAmount Obligatoire WS_2.0
currencyCode Obligatoire WS_2.0
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est CR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
operationOrigin Facultatif WS_2.0
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
customerContact Facultatif WS_2.20 Voir la partie Containers

Exemple de requête cancel

      {
  "currencyCode": "978",
  "interfaceVersion": "CR_WS_2.3",
  "merchantId": "011223344550000",
  "operationAmount": "120",
  "operationOrigin": "SO_BATCH",
  "transactionReference": "TREFEXA2012",
  "keyVersion": "1",
  "seal": "bed2f99d4137d402fde0c86a182f7d4f01c68e57d8a073fe5e920c57d06da1b5"
}

    

Format de la réponse cancel

Champ A partir de la version Commentaires
newAmount WS_2.0
operationDateTime WS_2.0
responseCode WS_2.0
newStatus WS_2.0
seal WS_2.0
acquirerResponseCode WS_2.20
errorFieldName WS_2.21

Exemple de réponse cancel

      {
  "newAmount": 0,
  "operationDateTime": "2012-10-16T23:51:42-12:00",
  "responseCode": "00",
  "newStatus": "CANCELLED",
  "seal": "919b544bfb60539c8979992bc469e0b4229030ee2462a51f62c9cbd3510b3647"
}

    

Fonction "getTransactionData" du service "diagnostic"

Cette opération permet de récupérer des informations relatives à une transaction créée préalablement à l'aide de Sogenactif et stockée dans la base de données Sogenactif .

L'URL est : https://office-server.sogenactif.com /rs-services/v2/diagnostic/getTransactionData

Format de la requête getTransactionData

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est DR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête getTransactionData

      {
  "interfaceVersion": "DR_WS_2.3",
  "merchantId": "011223344550000",
  "transactionReference": "TREFEXA2012",
  "keyVersion": "1",
  "seal": "112a4b079ece08a0a55511cd5469fc47051d6ddb1404623170ba3873668e5c58"
}

    

Format de la réponse getTransactionData

Champ A partir de la version Commentaires
automaticResponseStatus WS_2.0
authorisationId WS_2.0
captureLimitDate WS_2.0
paymentMeanType WS_2.0
paymentMeanBrand WS_2.0
currencyCode WS_2.0
currentAmount WS_2.0
customerId WS_2.0
customerIpAddress WS_2.0
lastOperationDateTime WS_2.0
lastOperationName WS_2.0
orderId WS_2.0
originAmount WS_2.0
transactionDateTime WS_2.0
responseCode WS_2.0 Code réponse associé à la transaction
tokenPan WS_2.0
transactionStatus WS_2.0
orderChannel WS_2.0
paymentPattern WS_2.0
merchantId WS_2.0
panEntryMode WS_2.1
walletType WS_2.1
holderAuthentMethod WS_2.1
holderAuthentStatus WS_2.1
holderAuthentProgram WS_2.1
dccStatus WS_2.1
remainingAmount WS_2.2
fromTransactionReference WS_2.2
maskedPan WS_2.2
panExpiryDate WS_2.2
s10TransactionReference WS_2.6 Voir la partie Containers
s10FromTransactionReference WS_2.6 Voir la partie Containers
transactionReference WS_2.6
cardData WS_2.9 Voir la partie Containers
acquirerResponseMessage WS_2.9
seal WS_2.0
complementaryCode WS_2.13
preAuthenticationColor WS_2.13
preAuthenticationProfile WS_2.13
preAuthenticationProfileValue WS_2.13
preAuthenticationThreshold WS_2.13
preAuthenticationValue WS_2.13
preAuthorisationProfile WS_2.13
preAuthorisationProfileValue WS_2.13
scoreColor WS_2.13
scoreProfile WS_2.13
scoreThreshold WS_2.13
scoreValue WS_2.13
cardCSCResultCode WS_2.17
avsPostcodeResponseCode WS_2.17
avsAddressResponseCode WS_2.17
getTransDataResponseCode WS_2.18 Code réponse de l’opération réalisée
acquirerResponseCode WS_2.18
paymentAttemptNumber WS_2.19
errorFieldName WS_2.21
paymentMeanDataProvider WS_2.31
settlementArchivingReference WS_2.33
settlementMerchantSpecificData WS_2.33

Exemple de réponse getTransactionData

      {
  "automaticResponseStatus": "UNDEFINED",
  "authorisationId": "298392",
  "captureLimitDate": "20140108",
  "paymentMeanType": "CARD",
  "paymentMeanBrand": "MASTERCARD",
  "currencyCode": "826",
  "currentAmount": 1000,
  "customerId": "customerId1",
  "customerIpAddress": "127.0.0.1",
  "lastOperationDateTime": "2014-01-07T12:50:10+01:00",
  "lastOperationName": "TRANSACTION",
  "orderId": "123",
  "originAmount": 1000,
  "transactionDateTime": "2014-01-07T12:50:01+01:00",
  "responseCode": "00",
  "transactionStatus": "TO_CAPTURE",
  "orderChannel": "INTERNET",
  "paymentPattern": "ONE_SHOT",
  "merchantId": "011223344550000",
  "seal": "d971d516610f68050a71068c49ae778c37eb1c9b16f2ec90a3feadeb1bb60876"
}

    

Fonction "cardCheckEnrollment" du service "checkout"

Cette opératioServiceDefn permet d’initialiser un paiement par carte avec processus 3-D Secure.

Sauf mention contraire, toute référence à 3D Secure dans le présent document inclut Visa (Verified by Visa), MasterCard (SecureCode) et American Express (SafeKey).

Cette requête initialise une transaction sur la plateforme Sogenactif et contrôle l'inscription de la carte. Si la carte est inscrite à 3-D Secure, vous recevez comme réponse une URL sécurisée (redirectionUrl) vers laquelle le client doit être redirigé pour poursuivre son authentification. Cette redirection doit être réalisée par le biais d'un formulaire POST, voir la partie "Formulaire POST vers l’ACS". Dans le cas contraire, vous avez la possibilité de poursuivre le paiement sans effectuer de redirection en appelant directement la méthode cardValidateAuthenticationAndOrder.

Les informations sensibles (numéro de carte, cryptogramme visuel) peuvent être gérées selon trois possibilités, via le champ panType  :

  • chiffrement par l'utilisation du mode CSE (voir la documentation concernée) ;
  • tokenisation du numéro de carte ;
  • numéro de carte en clair (forte contrainte PCI).

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/cardCheckEnrollment

Format de la requête cardCheckEnrollment

Champ Présence A partir de la version Commentaires
amount Obligatoire WS_2.0
captureDay Facultatif WS_2.0
captureMode Facultatif WS_2.0
cardCSCValue Facultatif WS_2.0
cardExpiryDate Obligatoire WS_2.0
cardNumber Obligatoire WS_2.0
currencyCode Obligatoire WS_2.0
customerId Facultatif WS_2.0
invoiceReference Facultatif WS_2.0
merchantId Obligatoire WS_2.0
merchantName Facultatif WS_2.0 Permet de modifier le nom affiché sur la page d'authentification 3-D Secure
merchantReturnUrl Facultatif WS_2.0
merchantUrl Facultatif WS_2.0
merchantTransactionDateTime Facultatif WS_2.0
orderChannel Obligatoire WS_2.0
orderId Facultatif WS_2.0
returnContext Facultatif WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
transactionOrigin Facultatif WS_2.0
statementReference Facultatif WS_2.0
paymentPattern Facultatif WS_2.0
customerIpAddress Facultatif WS_2.0
customerLanguage Facultatif WS_2.0
billingAddress Facultatif WS_2.0 Voir la partie Containers
billingContact Facultatif WS_2.0 Voir la partie Containers
customerAddress Facultatif WS_2.0 Voir la partie Containers
customerContact Facultatif WS_2.0 Voir la partie Containers
deliveryAddress Facultatif WS_2.0 Voir la partie Containers
deliveryContact Facultatif WS_2.0 Voir la partie Containers
deliveryData Facultatif WS_2.19 Voir la partie Containers
holderAddress Facultatif WS_2.0 Voir la partie Containers
holderContact Facultatif WS_2.0 Voir la partie Containers
customerData Facultatif WS_2.0 Voir la partie Containers
shoppingCartDetail Facultatif WS_2.19 Voir la partie Containers
fraudData Facultatif WS_2.0 Voir la partie Containers
authenticationData Facultatif WS_2.0 Voir la partie Containers
s10TransactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
panType Facultatif WS_2.11
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
paymentMeanBrand Facultatif WS_2.13
paymentMeanBrandSelectionStatus Facultatif WS_2.13 Si ce champ est spécifié en entrée, paymentMeanBrand est obligatoire
travelContext Facultatif WS_2.19 Voir la partie Containers
orderContext Facultatif WS_2.19 Voir la partie Containers
paymentMeanData Facultatif WS_2.18 Voir la partie Containers
customerAccountHistoric Facultatif WS_2.23 Voir la partie Containers
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33

Exemple de requête cardCheckEnrollment

      {
  "amount": "1000",
  "captureDay": "0",
  "captureMode": "AUTHOR_CAPTURE",
  "cardCSCValue": "123",
  "cardExpiryDate": "201602",
  "cardNumber": "1234123412341234",
  "currencyCode": "978",
  "interfaceVersion": "IR_WS_2.9",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantTransactionDateTime": "2015-05-28T11:23:14.211+02:00",
  "orderChannel": "INTERNET",
  "orderId": "1234",
  "transactionReference": "TREFEXA2015",
  "seal": "607083393a51b4b23261270df83c28a61e06f74928bc1e868c0abb9325dde2f2"
}

    

Format de la réponse cardCheckEnrollment

Champ A partir de la version Commentaires
redirectionUrl WS_2.0
errorFieldName WS_2.0
paReqMessage WS_2.0
redirectionData WS_2.0
redirectionStatusCode WS_2.0
messageVersion WS_2.0
seal WS_2.0
paymentMeanBrandSelectionStatus WS_2.13
responseCode WS_2.23
maskedPan WS_2.32
tokenPan WS_2.32

Exemple de réponse cardCheckEnrollment

      {
  "redirectionUrl": "http://www.acssiteweb.com",
  "paReqMessage": "eJxVUU1zgj...Rv8P/AJQjttc\u003d",
  "redirectionData": "uqjeV+Keg...MAwXk2jDJAe2TI\u003d",
  "redirectionStatusCode": "00",
  "messageVersion": "0.1",
  "seal": "3c40cf8c12a8eebdfc114c83db8f944b77932b03814d8bf43ea792c20d05e7a6"
}

    

Fonction "walletCheckEnrollment" du service "checkout"

Cette opération permet d’initialiser un paiement par wallet avec le processus 3-D Secure.

Sauf mention contraire, toute référence à 3D Secure dans le présent document inclut Visa (Verified by Visa), MasterCard (SecureCode) et American Express (SafeKey).

Cette requête initialise une transaction sur la plateforme Sogenactif et vérifie si la carte récupérée à partir du wallet est inscrite au programme 3-D Secure. Si la carte est inscrite à 3-D Secure, vous recevez comme réponse une URL sécurisée (redirectionUrl) vers laquelle le client doit être redirigé pour poursuivre son authentification. Cette redirection doit être réalisée par le biais d'un formulaire POST, voir la partie "Formulaire POST vers l’ACS". Dans le cas contraire, vous avez la possibilité de poursuivre le paiement sans effectuer de redirection en appelant directement la méthode cardValidateAuthenticationAndOrder.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/walletCheckEnrollment

Format de la requête walletCheckEnrollment

Champ Présence A partir de la version Commentaires
amount Obligatoire WS_2.0
authenticationData Facultatif WS_2.0 Voir la partie Containers
billingAddress Facultatif WS_2.0 Voir la partie Containers
billingContact Facultatif WS_2.0 Voir la partie Containers
captureDay Facultatif WS_2.0
captureMode Facultatif WS_2.0
currencyCode Obligatoire WS_2.0
customerAddress Facultatif WS_2.0 Voir la partie Containers
customerContact Facultatif WS_2.0 Voir la partie Containers
customerData Facultatif WS_2.0 Voir la partie Containers
customerId Facultatif WS_2.0
customerIpAddress Facultatif WS_2.0
customerLanguage Facultatif WS_2.0
deliveryAddress Facultatif WS_2.0 Voir la partie Containers
deliveryContact Facultatif WS_2.0 Voir la partie Containers
deliveryData Facultatif WS_2.19 Voir la partie Containers
fraudData Facultatif WS_2.0 Voir la partie Containers
holderAddress Facultatif WS_2.0 Voir la partie Containers
holderContact Facultatif WS_2.0 Voir la partie Containers
shoppingCartDetail Facultatif WS_2.19 Voir la partie Containers
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
invoiceReference Facultatif WS_2.0
merchantId Obligatoire WS_2.0
merchantName Facultatif WS_2.0 Permet de modifier le nom affiché sur la page d'authentification 3-D Secure
merchantReturnUrl Facultatif WS_2.0
merchantTransactionDateTime Facultatif WS_2.0
merchantUrl Facultatif WS_2.0
orderChannel Obligatoire WS_2.0
orderId Facultatif WS_2.0
merchantWalletId Obligatoire WS_2.0
paymentMeanId Obligatoire WS_2.0
paymentPattern Facultatif WS_2.0
returnContext Facultatif WS_2.0
statementReference Facultatif WS_2.0
transactionOrigin Facultatif WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
cardCSCValue Facultatif WS_2.0
cscType Facultatif WS_2.32
s10TransactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
orderContext Facultatif WS_2.19 Voir la partie Containers
travelContext Facultatif WS_2.19 Voir la partie Containers
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33

Exemple de requête walletCheckEnrollment

      {
  "amount": "1000",
  "captureDay": "0",
  "captureMode": "AUTHOR_CAPTURE",
  "cardCSCValue": "123",
  "currencyCode": "978",
  "interfaceVersion": "IR_WS_2.9",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantTransactionDateTime": "2015-05-28T11:30:14.232+02:00",
  "merchantWalletId": "WALLET01",
  "orderChannel": "INTERNET",
  "orderId": "1234",
  "paymentMeanId": "10",
  "transactionReference": "TREFEXA2015",
  "seal": "3bfc4e958ba4ea43090db3c0c0bdba7162c92727ca1338b2111b28ddd91056a1"
}

    

Format de la réponse walletCheckEnrollment

Champ A partir de la version Commentaires
redirectionUrl WS_2.0
errorFieldName WS_2.0
paReqMessage WS_2.0
redirectionData WS_2.0
redirectionStatusCode WS_2.0
messageVersion WS_2.0
seal WS_2.0
responseCode WS_2.23

Exemple de réponse walletCheckEnrollment

      {
  "redirectionUrl": "http://www.acssiteweb.com",
  "paReqMessage": "eJxVUU1zgj...Rv8P/AJQjttc\u003d",
  "redirectionData": "uqjeV+Keg...MAwXk2jDJAe2TI\u003d",
  "redirectionStatusCode": "00",
  "messageVersion": "0.1",
  "seal": "3c40cf8c12a8eebdfc114c83db8f944b77932b03814d8bf43ea792c20d05e7a6"
}

    

Fonction "cardValidateAuthenticationAndOrder" du service "checkout"

Cette opération permet de finaliser un ordre de paiement avec un processus 3-D Secure.

Sauf mention contraire, toute référence à 3-D Secure dans le présent document inclut Visa (Verified by Visa), MasterCard (SecureCode) et American Express (SafeKey).

Cette requête est obligatoire pour l’exécution d'un ordre de paiement dans un contexte 3-D Secure (message PARes). Elle doit être effectuée une fois que vous avez reçu le formulaire POST de l'ACS (Access Control Server) (voir « Envoi du formulaire POST à l’ACS »).

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/cardValidateAuthenticationAndOrder

Format de la requête cardValidateAuthenticationAndOrder

Champ Présence A partir de la version Commentaires
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
messageVersion Obligatoire WS_2.0 Doit être identique au champ messageVersion reçu en réponse de la méthode cardCheckEnrollment ou walletCheckEnrollment
merchantId Obligatoire WS_2.0
redirectionData Obligatoire WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
s10TransactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
paResMessage Conditionnel WS_2.0 Obligatoire si une opération de validation d'authentification doit valider l'enrollement de votre carte, ne remplissez pas ce champs uniquement si vous voulez tenter une opération de 'CardValidateAuthenAndOrder' sur une carte non-enrollée. Si vous le remplissez, utilisez le champs 'PARes' qui vous a été retourné par l’ACS de la banque du client lors de la vérification de l’enrollement de la carte en appliquant l’encodage standard 'Url Encode'.
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête cardValidateAuthenticationAndOrder

      {
  "interfaceVersion": "IR_WS_2.9",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "messageVersion": "0.1",
  "paResMessage": "eJydVVuTqjgQ....7h%2FwH0CKem",
  "redirectionData": "uqjeV+KegCSM0POI...CjVUfxqyFq7zSYus7E\u003d",
  "transactionReference": "TREFEXA2015",
  "seal": "9565b71cb583f025278de91940c69900dee72d91e8184ddb6547f00927597fd1"
}

    

Format de la réponse cardValidateAuthenticationAndOrder

Champ A partir de la version Commentaires
acquirerResponseCode WS_2.0
acquirerResponseMessage WS_2.0
amount WS_2.0
authorisationId WS_2.0
avsAddressResponseCode WS_2.0
avsPostcodeResponseCode WS_2.0
captureDay WS_2.0
captureMode WS_2.0
cardCSCResultCode WS_2.0
cardExpiryDate WS_2.0
complementaryCode WS_2.0
complementaryInfo WS_2.0
currencyCode WS_2.0
customerId WS_2.0
customerIpAddress WS_2.0
errorFieldName WS_2.0
holderAuthentMethod WS_2.0
holderAuthentRelegation WS_2.0 Retourné seulement si l'interfaceVersion est inférieur à 2.17. Merci d'utiliser le champ holderAuthentRelegationCode
holderAuthentStatus WS_2.0
holderAuthentProgram WS_2.0
invoiceReference WS_2.0
guaranteeIndicator WS_2.0
maskedPan WS_2.0
merchantTransactionDateTime WS_2.0
merchantId WS_2.0
orderChannel WS_2.0
orderId WS_2.0
paymentMeanBrand WS_2.0
paymentPattern WS_2.0
responseCode WS_2.0
returnContext WS_2.0
statementReference WS_2.0
holderAuthentResponseCode WS_2.23
transactionDateTime WS_2.0
transactionReference WS_2.0
tokenPan WS_2.0
scoreColor WS_2.0
scoreInfo WS_2.0
scoreProfile WS_2.0
scoreThreshold WS_2.0
scoreValue WS_2.0
s10TransactionReference WS_2.0 Voir la partie Containers
seal WS_2.0
paymentMeanBrandSelectionStatus WS_2.13
preAuthorisationProfile WS_2.13
preAuthorisationProfileValue WS_2.13
preAuthorisationRuleResultList WS_2.13 Liste de conteneur preAuthorisationRuleResult . Voir la partie Containers
acquirerNativeResponseCode WS_2.14
transactionPlatform WS_2.17 Systématiquement valorisé à « PROD »
holderAuthentRelegationCode WS_2.17
cardData WS_2.19 Voir la partie Containers
authorMessageReference WS_2.19
authorisationTypeLabel WS_2.19
acceptanceSystemApplicationId WS_2.20
panEntryMode WS_2.21
walletType WS_2.21
issuerWalletInformation WS_2.21
intermediateServiceProviderOperationId WS_2.24
holderAuthentType WS_2.24
authentExemptionReasonList WS_2.31
schemeTransactionIdentifier WS_2.31
paymentAccountReference WS_2.31
guaranteeLimitDateTime WS_2.32

Exemple de réponse cardValidateAuthenticationAndOrder

      {
  "amount": 1000,
  "authorisationId": "010628",
  "avsAddressResponseCode": "1",
  "avsPostcodeResponseCode": "1",
  "captureDay": 0,
  "captureMode": "AUTHOR_CAPTURE",
  "cardExpiryDate": "201602",
  "currencyCode": "978",
  "holderAuthentStatus": "3D_SUCCESS",
  "guaranteeIndicator": "Y",
  "maskedPan": "4907##########00",
  "merchantId": "011223344550000",
  "orderChannel": "INTERNET",
  "orderId": "1234",
  "paymentMeanBrand": "VISA",
  "responseCode": "00",
  "transactionDateTime": "2015-05-28T12:38:25+03:00",
  "transactionReference": "TREFEXA2015",
  "s10TransactionReference": {
    "s10TransactionId": "129306",
    "s10TransactionIdDate": "20150528"
  },
  "seal": "ef3f3cc68a39a5d1144663162a35fa6070bfe39d5abbe672b15417ff87afc431",
  "transactionPlatform": "PROD"
}

    

Fonction "cardValidateAuthentication" du service "checkout"

Requêtes de validation d'authentification 3-D Secure :

Sauf mention contraire, toute référence à 3-D Secure dans le présent document inclut Visa (Verified by Visa), MasterCard (SecureCode) et American Express (SafeKey).

Cette requête est obligatoire pour vérifier l'ensemble de l'authentification 3-D Secure (avec un message PARes). Elle doit être effectuée une fois que vous avez reçu le formulaire POST de l'ACS (Access Control Server) (voir "Envoi du formulaire POST à l’ACS").

Cette méthode est principalement à usage de contrôle du porteur avant un enregistrement de la carte dans un wallet.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/cardValidateAuthentication

Format de la requête cardValidateAuthentication

Champ Présence A partir de la version Commentaires
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
messageVersion Obligatoire WS_2.0 Doit être identique au champ messageVersion reçu en réponse de la méthode cardCheckEnrollment ou walletCheckEnrollment
merchantId Obligatoire WS_2.0
redirectionData Obligatoire WS_2.0
paResMessage Conditionnel WS_2.0 Obligatoire si une opération de validation d'authentification doit valider l'enrollement de votre carte, ne remplissez pas ce champs uniquement si vous voulez tenter une opération de 'CardValidateAuthenAndOrder' sur une carte non-enrollée. Si vous le remplissez, utilisez le champs 'PARes' qui vous a été retourné par l’ACS de la banque du client lors de la vérification de l’enrollement de la carte en appliquant l’encodage standard 'Url Encode'.
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
s10TransactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête cardValidateAuthentication

      {
  "interfaceVersion": "IR_WS_2.9",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "messageVersion": "0.1",
  "paResMessage": "eJydVVuTqjgQ....7h%2FwH0CKem",
  "redirectionData": "uqjeV+KegCSM0POI...CjVUfxqyFq7zSYus7E\u003d",
  "transactionReference": "TREFEXA2015",
  "seal": "9565b71cb583f025278de91940c69900dee72d91e8184ddb6547f00927597fd1"
}

    

Format de la réponse cardValidateAuthentication

Champ A partir de la version Commentaires
responseCode WS_2.0
holderAuthentResponseCode WS_2.0
seal WS_2.0
errorFieldName WS_2.21
holderAuthentStatus WS_2.27
holderAuthentMethod WS_2.27
holderAuthentProgram WS_2.27
threeD WS_2.27 Voir la partie Containers
threeDV2 WS_2.27 Voir la partie Containers

Exemple de réponse cardValidateAuthentication

      {
  "responseCode": "00",
  "holderAuthentResponseCode": "00",
  "seal": "ef3f3cc68a39a5d1144663162a35fa6070bfe39d5abbe672b15417ff87afc431"
}

    

Fonction "walletOrder" du service "checkout"

Cette fonction vous permet d’effectuer des paiements en utilisant un des moyens de paiement contenus dans le Wallet de vos clients.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/walletOrder

Format de la requête walletOrder

Champ Présence A partir de la version Commentaires
amount Obligatoire WS_2.0
captureDay Facultatif WS_2.0
captureMode Facultatif WS_2.0
currencyCode Obligatoire WS_2.0
customerId Facultatif WS_2.0
customerIpAddress Facultatif WS_2.0
fraudData Facultatif WS_2.0 Voir la partie Containers
merchantId Obligatoire WS_2.0
merchantWalletId Obligatoire WS_2.0
merchantTransactionDateTime Facultatif WS_2.0
orderChannel Obligatoire WS_2.0
orderId Facultatif WS_2.0
paymentMeanId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
returnContext Facultatif WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
transactionOrigin Facultatif WS_2.0
billingAddress Facultatif WS_2.0 Voir la partie Containers
billingContact Facultatif WS_2.0 Voir la partie Containers
customerAddress Facultatif WS_2.0 Voir la partie Containers
customerContact Facultatif WS_2.0 Voir la partie Containers
deliveryAddress Facultatif WS_2.0 Voir la partie Containers
deliveryContact Facultatif WS_2.0 Voir la partie Containers
deliveryData Facultatif WS_2.19 Voir la partie Containers
customerData Facultatif WS_2.1 Voir la partie Containers
invoiceReference Facultatif WS_2.0
statementReference Facultatif WS_2.2
paymentPattern Conditionnel WS_2.3 Ce champ est obligatoire pour certains moyens de paiement. Pour de plus amples informations, référez-vous au guide d'intégration du moyen de paiement concerné
cardCSCValue Facultatif WS_2.3
cscType Facultatif WS_2.32
holderAddress Facultatif WS_2.0 Voir la partie Containers
holderContact Facultatif WS_2.0 Voir la partie Containers
authenticationData Facultatif WS_2.0 Voir la partie Containers
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
customerLanguage Facultatif WS_2.15
orderContext Facultatif WS_2.19 Voir la partie Containers
travelContext Facultatif WS_2.19 Voir la partie Containers
paymentMeanData Facultatif WS_2.17 Voir la partie Containers
holderData Facultatif WS_2.17 Voir la partie Containers
shoppingCartDetail Facultatif WS_2.19 Voir la partie Containers
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33
initialSchemeTransactionIdentifier Facultatif WS_2.33

Exemple de requête walletOrder

      {
  "amount": "2500",
  "captureDay": "0",
  "captureMode": "AUTHOR_CAPTURE",
  "currencyCode": "978",
  "customerIpAddress": "127.0.0.1",
  "interfaceVersion": "IR_WS_2.3",
  "invoiceReference": "FAC007NB",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantTransactionDateTime": "2014-01-10T17:13:30.743+01:00",
  "orderChannel": "INTERNET",
  "merchantWalletId": "WALLET01",
  "paymentMeanId": "10",
  "transactionOrigin": "SO_WEBAPPLI",
  "transactionReference": "TREFEXA2012",
  "seal": "5bb0e9fcbb3eaa28557ac41ed6ab57ab84d9edbe9fe8eb0cedd3e8548433b7cd"
}

    

Format de la réponse walletOrder

Champ A partir de la version Commentaires
acquirerResponseCode WS_2.0
authorisationId WS_2.0
cardScheme WS_2.0
complementaryCode WS_2.0
complementaryInfo WS_2.0
maskedPan WS_2.0
responseCode WS_2.0
returnContext WS_2.0 Valeur transférée à la requête de paiement
transactionDateTime WS_2.0
tokenPan WS_2.1
scoreColor WS_2.1
scoreInfo WS_2.1
scoreProfile WS_2.1
scoreThreshold WS_2.1
scoreValue WS_2.1
s10TransactionReference WS_2.6 Voir la partie Containers
transactionReference WS_2.6
cardData WS_2.9 Voir la partie Containers
seal WS_2.0
preAuthorisationProfile WS_2.13
preAuthorisationProfileValue WS_2.13
preAuthorisationRuleResultList WS_2.13 Liste de conteneur preAuthorisationRuleResult . Voir la partie Containers
captureDay WS_2.15
captureMode WS_2.15
transactionPlatform WS_2.17 Systématiquement valorisé à « PROD »
cardCSCResultCode WS_2.17
avsPostcodeResponseCode WS_2.17
avsAddressResponseCode WS_2.17
authorMessageReference WS_2.19
authorisationTypeLabel WS_2.19
acquirerResponseMessage WS_2.20
recurringResponseCode WS_2.20
holderAuthentRelegationCode WS_2.20
holderAuthentStatus WS_2.20
guaranteeIndicator WS_2.20
acceptanceSystemApplicationId WS_2.20
errorFieldName WS_2.21
intermediateServiceProviderOperationId WS_2.24
orderId WS_2.24
schemeTransactionIdentifier WS_2.31
paymentAccountReference WS_2.31
guaranteeLimitDateTime WS_2.32

Exemple de réponse walletOrder

      {
  "acquirerResponseCode": "00",
  "authorisationId": "123456789102",
  "cardScheme": "MASTERCARD",
  "maskedPan": "5219##########00",
  "responseCode": "00",
  "returnContext": "ReturnContext",
  "transactionDateTime": "2012-10-16T23:50:44-12:00",
  "seal": "7ca065ebba90762e3286ee16d6a2d2da0eea8bae6b46592058933881d96d0c3d",
  "transactionPlatform": "PROD"
}

    

Fonction "walletIssuerWalletInitialize" du service "checkout"

Cette requête permet d'initialiser un paiement one-click avec un wallet externe (type Paylib) :

Une telle requête est obligatoire pour récupérer les données de redirection et l'url vers laquelle rediriger l'acheteur vers les pages d'authentification du wallet externe enrôlé dans un wallet Sogenactif . Si l'étape d'initialisation a réussi, vous recevez en réponse une URL sécurisée (redirectionUrl) vers laquelle le client doit être redirigé pour poursuivre la procédure de paiement one-click. Cette redirection doit être réalisée par le biais d'un formulaire POST, voir la partie "Formulaire POST vers des fournisseurs externes". Vous devez également spécifier dans la requête l'URL (merchantReturnUrl) vers laquelle le client sera redirigé à la fin du paiement one-click avec un wallet externe. Vous devez ensuite appeler le service walletIssuerWalletFinalize afin de finaliser la transaction.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/walletIssuerWalletInitialize

Format de la requête walletIssuerWalletInitialize

Champ Présence A partir de la version Commentaires
merchantReturnUrl Obligatoire WS_2.0
merchantId Obligatoire WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
amount Obligatoire WS_2.0
currencyCode Obligatoire WS_2.0
captureMode Facultatif WS_2.0
captureDay Facultatif WS_2.0
orderChannel Obligatoire WS_2.0
orderId Facultatif WS_2.0
paymentPattern Facultatif WS_2.0 Ce champ est obligatoire pour certains moyens de paiement. Pour de plus amples informations, référez-vous au guide de mise en œuvre du moyen de paiement concerné
customerId Facultatif WS_2.0
customerIpAddress Facultatif WS_2.0
customerLanguage Facultatif WS_2.0
transactionOrigin Facultatif WS_2.0
returnContext Facultatif WS_2.0
statementReference Facultatif WS_2.0
invoiceReference Facultatif WS_2.0
merchantTransactionDateTime Facultatif WS_2.0
authenticationData Facultatif WS_2.0 Voir la partie Containers
deliveryContact Facultatif WS_2.0 Voir la partie Containers
deliveryAddress Facultatif WS_2.0 Voir la partie Containers
customerContact Facultatif WS_2.0 Voir la partie Containers
customerAddress Facultatif WS_2.0 Voir la partie Containers
billingContact Facultatif WS_2.0 Voir la partie Containers
billingAddress Facultatif WS_2.0 Voir la partie Containers
holderAddress Facultatif WS_2.0 Voir la partie Containers
holderContact Facultatif WS_2.0 Voir la partie Containers
holderData Facultatif WS_2.0 Voir la partie Containers
customerData Facultatif WS_2.0 Voir la partie Containers
fraudData Facultatif WS_2.0 Voir la partie Containers
deliveryData Facultatif WS_2.0 Voir la partie Containers
shoppingCartDetail Facultatif WS_2.0 Voir la partie Containers
s10TransactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
responseKeyVersion Facultatif WS_2.0
intermediateServiceProviderId Facultatif WS_2.0
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.0
travelContext Facultatif WS_2.0 Voir la partie Containers
orderContext Facultatif WS_2.0 Voir la partie Containers
merchantWalletId Obligatoire WS_2.0
paymentMeanId Obligatoire WS_2.0
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33

Exemple de requête walletIssuerWalletInitialize

      {
  "amount": "1000",
  "captureMode": "AUTHOR_CAPTURE",
  "currencyCode": "978",
  "customerIpAddress": "127.0.0.1",
  "interfaceVersion": "IR_WS_2.3",
  "keyVersion": "1",
  "merchantId": "023101122334455",
  "merchantReturnUrl": "http://www.yoursiteweb.com",
  "merchantTransactionDateTime": "2014-07-11T10:59:57.723+02:00",
  "orderChannel": "INTERNET",
  "paymentMeanBrand": "PAYLIB",
  " transactionReference": "TREFEXA2012",
  "merchantWalletId":"12",
  "seal": " 95e479c276d71a07c655f3c2db1bb8b483c0921e544d4af4cff3e220b04eb551"
}


    

Format de la réponse walletIssuerWalletInitialize

Champ A partir de la version Commentaires
responseCode WS_2.0
redirectionUrl WS_2.0
redirectionData WS_2.0
messageVersion WS_2.0
paymentProviderSessionId WS_2.0
seal WS_2.0
errorFieldName WS_2.0
issuerWalletType WS_2.0

Exemple de réponse walletIssuerWalletInitialize

      {
  "responseCode": "00",
  "redirectionUrl": "https://private-payment.dev-agile.qlf.sips.priv.atos.fr/paylib/FrontController",
  "redirectionData": "RSs7cZyL1DqsVso",
  "messageVersion": "0.1",
  "seal": "79cf30535e08b8c6c9cfdd55c343845947f8fea892ec0ea1db96378055f71de6"
}


    

Fonction "walletIssuerWalletFinalize" du service "checkout"

Cette opération permet de finaliser un paiement wallet pour les wallets externes.

Une telle requête est obligatoire pour connaître le résultat d'un ordre de paiement wallet effectué par le biais d'un wallet externe. Elle doit être appelée une fois que vous avez reçu le formulaire POST du wallet externe via la merchantReturnUrl (voir requête walletIssuerWalletInitialize).

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/walletIssuerWalletFinalize

Format de la requête walletIssuerWalletFinalize

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
redirectionData Obligatoire WS_2.0
messageVersion Obligatoire WS_2.0
s10TransactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.0
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.0

Exemple de requête walletIssuerWalletFinalize

      {
  "interfaceVersion": "IR_WS_2.23",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "messageVersion": "0.1",
  "redirectionData": " RSs7cZyL1DqsVso ",
  "transactionReference": "TREFEXA2012",
  "seal": "30218c85ca303d33d5e7b60bb48222b9826fbc30b6c2ec98fff285702e445ae1"
}


    

Format de la réponse walletIssuerWalletFinalize

Champ A partir de la version Commentaires
merchantId WS_2.0
transactionReference WS_2.0
amount WS_2.0
currencyCode WS_2.0
captureMode WS_2.0
captureDay WS_2.0
orderChannel WS_2.0
paymentPattern WS_2.0
customerId WS_2.0
customerIpAddress WS_2.0
returnContext WS_2.0
statementReference WS_2.0
invoiceReference WS_2.0
merchantTransactionDateTime WS_2.0
acquirerResponseCode WS_2.0
avsPostcodeResponseCode WS_2.0
avsAddressResponseCode WS_2.0
authorisationId WS_2.0
guaranteeIndicator WS_2.0
transactionStatus WS_2.0
panEntryMode WS_2.0
paymentMeanBrand WS_2.0
maskedPan WS_2.0
cardExpiryDate WS_2.0
cardCSCResultCode WS_2.0
walletType WS_2.0
transactionDateTime WS_2.0
holderAuthentMethod WS_2.0
holderAuthentStatus WS_2.0
holderAuthentProgram WS_2.0
scoreColor WS_2.0
scoreInfo WS_2.0
scoreProfile WS_2.0
scoreThreshold WS_2.0
scoreValue WS_2.0
complementaryCode WS_2.0
complementaryInfo WS_2.0
responseCode WS_2.0
issuerWalletInformation WS_2.0
s10TransactionReference WS_2.0 Voir la partie Containers
orderId WS_2.0
acquirerResponseMessage WS_2.0
cardData WS_2.0 Voir la partie Containers
acquirerNativeResponseCode WS_2.0
acquirerResponseIdentifier WS_2.0
seal WS_2.0
preAuthorisationProfile WS_2.0
preAuthorisationProfileValue WS_2.0
preAuthorisationRuleResultList WS_2.0 Liste de conteneur preAuthorisationRuleResult . Voir la partie Containers
transactionPlatform WS_2.0 Systématiquement valorisé à « PROD »
errorFieldName WS_2.0
issuerWalletId WS_2.0
intermediateServiceProviderOperationId WS_2.24

Exemple de réponse walletIssuerWalletFinalize

      {
  "responseCode": "00",
  "captureDay": "0",
  "currencyCode": "978",
  "merchantId": "011223344550000",
  "paymentPattern": "ONE_SHOT",
  "transactionAmount": "200",
  "transactionDateTime": "2014-01-14T08:38:11.494+01:00",
  "transactionReference": "TREFEXA2012",
  "seal": "79cf30535e08b8c6c9cfdd55c343845947f8fea892ec0ea1db96378055f71de6",
  "transactionPlatform": "PROD"
}

    

Fonction "walletCreditHolder" du service "cashManagement"

Cette fonction vous permet de créditer vos clients via leur wallet sans transaction préalable.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/cashManagement/walletCreditHolder

Format de la requête walletCreditHolder

Champ Présence A partir de la version Commentaires
amount Obligatoire WS_2.0
currencyCode Obligatoire WS_2.0
customerEmail Facultatif WS_2.0
customerId Facultatif WS_2.0
customerIpAddress Facultatif WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est CR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantId Obligatoire WS_2.0
merchantWalletId Obligatoire WS_2.0
paymentMeanId Obligatoire WS_2.0
orderChannel Facultatif WS_2.0
orderId Facultatif WS_2.0
returnContext Facultatif WS_2.0
transactionOrigin Facultatif WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
statementReference Facultatif WS_2.19
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33

Exemple de requête walletCreditHolder

      {
  "amount": "1000",
  "currencyCode": "978",
  "customerEmail": "toto@mail.fr",
  "customerId": "customerId1",
  "customerIpAddress": "127.0.0.1",
  "interfaceVersion": "CR_WS_2.6",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantWalletId": "SIM01",
  "orderChannel": "INTERNET",
  "orderId": "123",
  "paymentMeanId": "2",
  "returnContext": "my return context",
  "transactionOrigin": "SIPS-SIM",
  "transactionReference": "SIM2014012248339",
  "seal": "d3f5f2c4c6f608e3a4940c6700ca6827c066715512be835660a8091c6ec1e098"
}

    

Format de la réponse walletCreditHolder

Champ A partir de la version Commentaires
acquirerResponseCode WS_2.0
authorisationId WS_2.0
maskedPan WS_2.0
newStatus WS_2.0
operationDateTime WS_2.0
responseCode WS_2.0
s10TransactionReference WS_2.6 Voir la partie Containers
transactionReference WS_2.0
paymentMeanBrand WS_2.0
transactionPlatform WS_2.17 Systématiquement valorisé à « PROD »
seal WS_2.0
errorFieldName WS_2.21

Exemple de réponse walletCreditHolder

      {
  "maskedPan": "4907##########00",
  "newStatus": "TO_CREDIT",
  "operationDateTime": "2015-05-06T12:12:07+03:00",
  "responseCode": "00",
  "s10TransactionReference": {
    "s10TransactionId": "34800",
    "s10TransactionIdDate": "20150506"
  },
  "transactionReference": "SIM2014012248339",
  "paymentMeanBrand": "VISA",
  "seal": "250c2a5831ae3b1a015d4d8be0e1970936e2c53b50607c8f6182556c0291ab8d",
  "transactionPlatform": "PROD"
}

    

Fonction "paymentProviderInitialize" du service "checkout"

Cette opération permet d’initialiser un paiement pour les wallets externes.

Une telle requête initie une session pour le passage d’ordre de paiement par wallet externe. S'il s'agit d'une transaction non initiée sur mobile et que l'étape d'initialisation a réussi, vous recevez en réponse une URL sécurisée (redirectionUrl) vers laquelle le client doit être redirigé pour poursuivre la procédure de paiement. Cette redirection doit être réalisée par le biais d'un formulaire POST, voir la partie "Formulaire POST vers des fournisseurs externes". Vous devez également spécifier dans la requête l'URL (merchantReturnUrl) vers laquelle le client sera redirigé à la fin du paiement par wallet externe. Vous devez ensuite appeler le service paymentProviderFinalize afin de finaliser la transaction.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/paymentProviderInitialize

Format de la requête paymentProviderInitialize

Champ Présence A partir de la version Commentaires
paymentMeanBrand Obligatoire WS_2.0
merchantReturnUrl Obligatoire WS_2.0
merchantId Obligatoire WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
amount Obligatoire WS_2.0
currencyCode Obligatoire WS_2.0
captureMode Facultatif WS_2.0
captureDay Facultatif WS_2.0
orderChannel Obligatoire WS_2.0
orderId Facultatif WS_2.0
paymentPattern Conditionnel WS_2.0 Ce champ est obligatoire pour certains moyens de paiement. Pour de plus amples informations, référez-vous au guide d'intégration du moyen de paiement concerné
customerId Facultatif WS_2.0
customerIpAddress Facultatif WS_2.0
customerLanguage Facultatif WS_2.0
transactionOrigin Facultatif WS_2.0
returnContext Facultatif WS_2.0
statementReference Facultatif WS_2.0
invoiceReference Facultatif WS_2.0
merchantTransactionDateTime Facultatif WS_2.0
authenticationData Facultatif WS_2.0 Voir la partie Containers
deliveryContact Facultatif WS_2.0 Voir la partie Containers
deliveryAddress Facultatif WS_2.0 Voir la partie Containers
customerContact Facultatif WS_2.0 Voir la partie Containers
customerAddress Facultatif WS_2.0 Voir la partie Containers
billingContact Facultatif WS_2.0 Voir la partie Containers
billingAddress Facultatif WS_2.0 Voir la partie Containers
holderAddress Facultatif WS_2.0 Voir la partie Containers
holderContact Facultatif WS_2.0 Voir la partie Containers
holderData Facultatif WS_2.19 Voir la partie Containers
customerData Facultatif WS_2.0 Voir la partie Containers
fraudData Facultatif WS_2.0 Voir la partie Containers
deliveryData Facultatif WS_2.6 Voir la partie Containers
shoppingCartDetail Facultatif WS_2.6 Voir la partie Containers
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
responseKeyVersion Facultatif WS_2.7
paymentMeanData Facultatif WS_2.10 Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
travelContext Facultatif WS_2.19 Voir la partie Containers
orderContext Facultatif WS_2.19 Voir la partie Containers
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33

Exemple de requête paymentProviderInitialize

      {
  "amount": "1000",
  "captureMode": "AUTHOR_CAPTURE",
  "currencyCode": "978",
  "customerIpAddress": "127.0.0.1",
  "interfaceVersion": "IR_WS_2.3",
  "keyVersion": "1",
  "merchantId": "023101122334455",
  "merchantReturnUrl": "http://www.yoursiteweb.com",
  "merchantTransactionDateTime": "2014-07-11T10:59:57.723+02:00",
  "orderChannel": "INTERNET",
  "paymentMeanBrand": "PAYLIB",
  " transactionReference": "TREFEXA2012",
  "seal": " 95e479c276d71a07c655f3c2db1bb8b483c0921e544d4af4cff3e220b04eb551"
}

    

Format de la réponse paymentProviderInitialize

Champ A partir de la version Commentaires
responseCode WS_2.0
redirectionUrl WS_2.0
redirectionData WS_2.0
messageVersion WS_2.0
paymentProviderSessionId WS_2.1
outerRedirectionUrl WS_2.9
acquirerNativeResponseCode WS_2.10
acquirerResponseIdentifier WS_2.10
acquirerResponseMessage WS_2.10
seal WS_2.0
errorFieldName WS_2.21

Exemple de réponse paymentProviderInitialize

      {
  "responseCode": "00",
  "redirectionUrl": "https://payment.sips.atos.fr/paymentprovider/init",
  "redirectionData": "RSs7cZyL1DqsVso",
  "messageVersion": "0.1",
  "seal": "79cf30535e08b8c6c9cfdd55c343845947f8fea892ec0ea1db96378055f71de6"
}

    

Fonction "paymentProviderGetContext" du service "checkout"

Cette requête est facultative et vous permet de connaître l'identité et l'adresse de livraison du payeur pour les afficher avant la confirmation de la transaction lors d’une transaction PayPal.

Cette fonction est uniquement disponible pour le moyen de paiement PayPal.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/paymentProviderGetContext

Format de la requête paymentProviderGetContext

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
redirectionData Obligatoire WS_2.0
messageVersion Obligatoire WS_2.0
s10TransactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_1.2
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête paymentProviderGetContext

      {
  "interfaceVersion": "IR_WS_2.0",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "messageVersion": "0.1",
  "redirectionData": "RSs7cZy...L1DqsVso",
  "transactionReference": "TREFEXA2012",
  "seal": "30218c85ca303d33d5e7b60bb48222b9826fbc30b6c2ec98fff285702e445ae1"
}

    

Format de la réponse paymentProviderGetContext

Champ A partir de la version Commentaires
responseCode WS_2.0
deliveryAddress WS_2.0 Voir la partie Containers
deliveryContact WS_2.0 Voir la partie Containers
customerAddress WS_2.0 Voir la partie Containers
customerContact WS_2.0 Voir la partie Containers
paymentMeanData WS_2.0 Voir la partie Containers
acquirerNativeResponseCode WS_2.0
acquirerResponseMessage WS_2.0
acquirerResponseIdentifier WS_2.0
seal WS_2.0
holderAddress WS_2.0 Voir la partie Containers
errorFieldName WS_2.21

Exemple de réponse paymentProviderGetContext

      {
  "responseCode": "00",
  "deliveryAddress": {
    "addressAdditional1": "devliveryAdd11",
    "city": "Blois",
    "country": "FR",
    "street": "Street",
    "zipCode": "41000"
  },
  "deliveryContact": {
    "email": "team@email.com",
    "firstname": "Team",
    "lastname": "John",
    "phone": "0254440000"
  },
  "customerAddress": {
    "addressAdditional1": "devliveryAdd11",
    "city": "Blois",
    "country": "FR",
    "street": "Street",
    "zipCode": "41000"
  },
  "customerContact": {
    "firstname": "Team",
    "lastname": "BO",
    "phone": "0254440000"
  },
  "paymentMeanData": {
    "paypal": {
      "token": "EC-4S931937D5977923H",
      "deliveryAddressStatus": "Confirmed",
      "payerId": "H3G7GWRLLSBDY",
      "payerStatus": "verified",
      "paymentStatus": "PaymentActionNotInitiated"
    }
  },
  "acquirerResponseMessage": "Process succeeded",
  "acquirerResponseIdentifier": "419d14fb8a5c",
  "seal": "18509963c41e3102967ee0ebc149165032b1b53cffec29f46d29ab37d8bc1df4"
}

    

Fonction "paymentProviderFinalize" du service "checkout"

Cette opération permet de finaliser un paiement pour les wallets externes.

Une telle requête est obligatoire pour connaître le résultat d'un ordre de paiement effectué par le biais d'un wallet externe. Elle doit être appelée une fois que vous avez reçu le formulaire POST du wallet externe via la merchantReturnUrl (voir requête paymentProviderInitialize).

Tip: Vous pouvez, en réponse à votre requête paymentProviderFinalize , obtenir un code 24 « Opération impossible ». Ce code signifie que cette requête a déjà été envoyée et traitée pour la transaction concernée. Si vous ne pouvez identifier ce traitement, nous vous invitons à utiliser la fonction GetTransactionData du service diagnostic: cette opération permet de récupérer des informations relatives à une transaction créée préalablement à l'aide de Sogenactif .

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/paymentProviderFinalize

Format de la requête paymentProviderFinalize

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
redirectionData Obligatoire WS_2.0
messageVersion Obligatoire WS_2.0
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête paymentProviderFinalize

      {
  "interfaceVersion": "IR_WS_2.0",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "messageVersion": "0.1",
  "redirectionData": " RSs7cZyL1DqsVso ",
  "transactionReference": "TREFEXA2012",
  "seal": "30218c85ca303d33d5e7b60bb48222b9826fbc30b6c2ec98fff285702e445ae1"
}

    

Format de la réponse paymentProviderFinalize

Champ A partir de la version Commentaires
merchantId WS_2.0
transactionReference WS_2.0
amount WS_2.0
currencyCode WS_2.0
captureMode WS_2.0
captureDay WS_2.0
orderChannel WS_2.0
paymentPattern WS_2.0
customerId WS_2.0
customerIpAddress WS_2.0
returnContext WS_2.0
statementReference WS_2.0
invoiceReference WS_2.0
merchantTransactionDateTime WS_2.0
acquirerResponseCode WS_2.0
avsPostcodeResponseCode WS_2.0
avsAddressResponseCode WS_2.0
authorisationId WS_2.0
guaranteeIndicator WS_2.0
transactionStatus WS_2.0
panEntryMode WS_2.0
paymentMeanBrand WS_2.0
maskedPan WS_2.0
cardExpiryDate WS_2.0
cardCSCResultCode WS_2.0
walletType WS_2.0
transactionDateTime WS_2.0
holderAuthentMethod WS_2.0
holderAuthentStatus WS_2.0
holderAuthentProgram WS_2.0
scoreColor WS_2.0
scoreInfo WS_2.0
scoreProfile WS_2.0
scoreThreshold WS_2.0
scoreValue WS_2.0
complementaryCode WS_2.0
complementaryInfo WS_2.0
responseCode WS_2.0
issuerWalletInformation WS_2.6
s10TransactionReference WS_2.6 Voir la partie Containers
orderId WS_2.6
acquirerResponseMessage WS_2.6
cardData WS_2.9 Voir la partie Containers
acquirerNativeResponseCode WS_2.10
acquirerResponseIdentifier WS_2.10
seal WS_2.0
preAuthorisationProfile WS_2.13
preAuthorisationProfileValue WS_2.13
preAuthorisationRuleResultList WS_2.13 Liste de conteneur preAuthorisationRuleResult . Voir la partie Containers
transactionPlatform WS_2.17 Systématiquement valorisé à « PROD »
errorFieldName WS_2.21
issuerWalletId WS_2.23
intermediateServiceProviderOperationId WS_2.24

Exemple de réponse paymentProviderFinalize

      {
  "responseCode": "00",
  "captureDay": "0",
  "currencyCode": "978",
  "merchantId": "011223344550000",
  "paymentPattern": "ONE_SHOT",
  "transactionAmount": "200",
  "transactionDateTime": "2014-01-14T08:38:11.494+01:00",
  "transactionReference": "TREFEXA2012",
  "seal": "79cf30535e08b8c6c9cfdd55c343845947f8fea892ec0ea1db96378055f71de6",
  "transactionPlatform": "PROD"
}

    

Fonction "directDebitOrder" du service "checkout"

Cette fonction vous permet, si vous possédez les informations bancaires d'un client, d'effectuer des paiements de type prélèvement (SDD et ELV).

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/directDebitOrder

Format de la requête directDebitOrder

Champ Présence A partir de la version Commentaires
amount Obligatoire WS_2.0
captureDay Facultatif WS_2.0
captureMode Facultatif WS_2.0
currencyCode Obligatoire WS_2.0
customerId Facultatif WS_2.0
customerIpAddress Facultatif WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
invoiceReference Facultatif WS_2.0
merchantId Obligatoire WS_2.0
merchantTransactionDateTime Facultatif WS_2.0
orderChannel Obligatoire WS_2.0
orderId Facultatif WS_2.0
returnContext Facultatif WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
transactionOrigin Facultatif WS_2.0
statementReference Facultatif WS_2.0
paymentMeanBrand Obligatoire WS_2.0
customerBankCode Facultatif WS_2.5
customerAccount Facultatif WS_2.5
customerBankAccountType Facultatif WS_2.5
billingContact Facultatif WS_2.0 Voir la partie Containers
billingAddress Facultatif WS_2.0 Voir la partie Containers
customerContact Facultatif WS_2.0 Voir la partie Containers
customerAddress Facultatif WS_2.0 Voir la partie Containers
deliveryContact Facultatif WS_2.0 Voir la partie Containers
deliveryAddress Facultatif WS_2.0 Voir la partie Containers
customerData Facultatif WS_2.0 Voir la partie Containers
fraudData Facultatif WS_2.0 Voir la partie Containers
holderContact Facultatif WS_2.0 Voir la partie Containers
holderAddress Facultatif WS_2.0 Voir la partie Containers
paymentPattern Conditionnel WS_2.0 Ce champ est obligatoire pour certains moyens de paiement. Pour de plus amples informations, référez-vous au guide d'intégration du moyen de paiement concerné
instalmentData Facultatif WS_2.0 Voir la partie Containers
mandateAuthentMethod Facultatif WS_2.0
mandateUsage Facultatif WS_2.0
mandateId Conditionnel WS_2.0
creditorId Facultatif WS_2.0
valueDate Facultatif WS_2.0
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
riskManagementCustomDataList Facultatif WS_2.8 Liste de conteneur riskManagementCustomData . Voir la partie Containers
shoppingCartDetail Facultatif WS_2.8 Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33

Exemple de requête directDebitOrder

      {
  "amount": "2500",
  "captureDay": "0",
  "captureMode": "AUTHOR_CAPTURE",
  "cardCSCValue": "0000",
  "currencyCode": "978",
  "customerBankAccountType": "BIC_IBAN",
  "interfaceVersion": " IR_WS_2.3",
  "keyVersion": "1",
  "mandateId": "000000000000001999",
  "merchantId": "011223344550000",
  "orderChannel": "INTERNET",
  "orderId": " ORD101",
  "paymentMeanBrand": "SEPA_DIRECT_DEBIT",
  "returnContext": "ReturnContext",
  "transactionOrigin": " SO_WEBAPPLI",
  "transactionReference": "TREFEXA2012",
  "seal": "2205f0636dc500c4f3ef536075895b8baba3a60c7087e06cd9d330c50a50c53e"
}

    

Format de la réponse directDebitOrder

Champ A partir de la version Commentaires
authorisationId WS_2.0
acquirerResponseCode WS_2.0
complementaryCode WS_2.0
complementaryInfo WS_2.0
responseCode WS_2.0
errorFieldName WS_2.5
transactionDateTime WS_2.0
guaranteeIndicator WS_2.0
holderAuthentRelegationCode WS_2.0
holderAuthentStatus WS_2.0
scoreColor WS_2.0
scoreInfo WS_2.0
scoreProfile WS_2.0
scoreThreshold WS_2.0
scoreValue WS_2.0
maskedPan WS_2.0
captureLimitDate WS_2.0
transactionActors WS_2.0
mandateId WS_2.5
creditorId WS_2.5
valueDate WS_2.5
s10TransactionReference WS_2.6 Voir la partie Containers
transactionReference WS_2.6
seal WS_2.0
preAuthorisationProfile WS_2.13
preAuthorisationProfileValue WS_2.13
preAuthorisationRuleResultList WS_2.13 Liste de conteneur preAuthorisationRuleResult . Voir la partie Containers
captureDay WS_2.15
captureMode WS_2.15
transactionPlatform WS_2.17 Systématiquement valorisé à « PROD »
intermediateServiceProviderOperationId WS_2.24
orderId WS_2.24
secureReference WS_2.26

Exemple de réponse directDebitOrder

      {
  "acquirerResponseCode": "00",
  "authorisationId": "123456789102",
  "maskedPan": "5219##########00",
  "responseCode": "00",
  "transactionDateTime": "2012-10-16T23:50:44-12:00",
  "captureLimitDate": "2012-11-16T23:50:44-12:00",
  "transactionActors": "BTOB",
  "seal": "7ca065ebba90762e3286ee16d6a2d2da0eea8bae6b46592058933881d96d0c3d",
  "transactionPlatform": "PROD"
}

    

Fonction "creditTransferInquire" du service "checkout"

Cette opération permet de récupérer la liste des banques émettrices disponibles. Actuellement, ce service n’est disponible que pour le moyen de paiement iDEAL.

Cette requête permet d'obtenir une liste des banques émettrices. Si la requête a réussi, vous recevez en retour une liste de banques avec leur nom et leur code. Ces informations doivent être utilisées pour l'étape d'initialisation (creditTransferInitialize).

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/creditTransferInquire

Format de la requête creditTransferInquire

Champ Présence A partir de la version Commentaires
currencyCode Obligatoire WS_2.0
customerLanguage Facultatif WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantId Obligatoire WS_2.0
paymentMeanBrand Obligatoire WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
s10TransactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête creditTransferInquire

      {
  "currencyCode": "978",
  "customerLanguage": "fr",
  "interfaceVersion": "IR_WS_2.9",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "paymentMeanBrand": "IDEAL",
  "transactionReference": " TREFEXA2015",
  "seal": "ec7be3e2a0086a86f66f74bb6e10f244e51e4e648c7dbbf7c89ce9aa78a569cf"
}

    

Format de la réponse creditTransferInquire

Champ A partir de la version Commentaires
customerBankList WS_2.0 Liste de conteneur customerBank . Voir la partie Containers
errorFieldName WS_2.0
responseCode WS_2.0
seal WS_2.0

Exemple de réponse creditTransferInquire

      {
  "customerBankList": [
    {
      "customerBankCode": "RABONL2U",
      "customerBankName": "BANK - RABO"
    },
    {
      "customerBankCode": "INGBNL2A",
      "customerBankName": "BANK - ING"
    }
  ],
  "responseCode": "00",
  "seal": "c46465d780517ce593b4bd5afe789fe58d2bc972937aaa35707ec8668265e6dc"
}

    

Fonction "creditTransferInitialize" du service "checkout"

Cette opération est actuellement disponible pour les moyens de paiement iDEAL et Sofortüberweisung.

Cette requête initialise une session pour un virement bancaire. Si l'étape d'initialisation a réussi, vous recevez en retour une URL sécurisée (redirectionUrl) vers laquelle le client doit être redirigé pour poursuivre le virement. Cette redirection doit être réalisée par le biais d'un formulaire POST, voir la partie "Formulaire POST vers des fournisseurs externes".

Dans la requête, vous devez également indiquer l'URL (merchantReturnUrl) vers laquelle le client sera redirigé à la fin du virement bancaire externe. Vous devez ensuite appeler le service creditTransferFinalizeAndOrder afin de finaliser la transaction.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/creditTransferInitialize

Format de la requête creditTransferInitialize

Champ Présence A partir de la version Commentaires
amount Obligatoire WS_2.0
customerBankCode Conditionnel WS_2.0
customerBankName Conditionnel WS_2.0
currencyCode Obligatoire WS_2.0
customerId Facultatif WS_2.0
customerIpAddress Facultatif WS_2.0
customerLanguage Facultatif WS_2.0
merchantTransactionDateTime Facultatif WS_2.0
orderChannel Obligatoire WS_2.0
orderId Facultatif WS_2.0
paymentPattern Facultatif WS_2.0
returnContext Facultatif WS_2.0
paymentMeanBrand Obligatoire WS_2.0
statementReference Facultatif WS_2.0
transactionOrigin Facultatif WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
merchantReturnUrl Facultatif WS_2.0
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
invoiceReference Facultatif WS_2.0
billingContact Facultatif WS_2.0 Voir la partie Containers
billingAddress Facultatif WS_2.0 Voir la partie Containers
customerContact Facultatif WS_2.0 Voir la partie Containers
customerAddress Facultatif WS_2.0 Voir la partie Containers
customerData Facultatif WS_2.0 Voir la partie Containers
deliveryContact Facultatif WS_2.0 Voir la partie Containers
deliveryAddress Facultatif WS_2.0 Voir la partie Containers
holderContact Facultatif WS_2.0 Voir la partie Containers
holderAddress Facultatif WS_2.0 Voir la partie Containers
s10TransactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
fraudData Facultatif WS_2.10 Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33

Exemple de requête creditTransferInitialize

      {
  "amount": "1000",
  "currencyCode": "978",
  "customerBankCode": "RABONL2U",
  "customerBankName": "BANK - RABO",
  "customerLanguage": "fr",
  "interfaceVersion": "IR_WS_2.9",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantReturnUrl": "http://www.yoursiteweb.com",
  "merchantTransactionDateTime": "2015-05-28T11:07:11.005+02:00",
  "orderChannel": "INTERNET",
  "orderId": "123",
  "paymentMeanBrand": "IDEAL",
  "transactionReference": " TREFEXA2015",
  "seal": "50e15601a2e83bcc5ffe596a51bab5b8dab2e3c62d3de2fe0d15502600f4aded"
}

    

Format de la réponse creditTransferInitialize

Champ A partir de la version Commentaires
responseCode WS_2.0
redirectionUrl WS_2.0
redirectionData WS_2.0
messageVersion WS_2.0
errorFieldName WS_2.0
seal WS_2.0

Exemple de réponse creditTransferInitialize

      {
  "responseCode": "00",
  "redirectionUrl": "https://payment-web.sips-services.com/paymentprovider/init",
  "redirectionData": "RSs7cZyL1D...a+hZ+1ticHD/4/s\u003d",
  "messageVersion": "0.1",
  "seal": "d0814427cbd5515e78cb54476c8594eb2c1d3732a9b392afd325ebae33945069"
}

    

Fonction "creditTransferFinalizeAndOrder" du service "checkout"

Cette opération est actuellement disponible pour les moyens de paiement iDEAL et Sofortüberweisung.

Cette requête est obligatoire pour connaître le résultat d'un virement bancaire. Elle doit être appelée une fois que vous avez reçu le formulaire POST du service de virement bancaire via merchantReturnUrl (voir requête creditTransferInitialize).

L'URL est : https://office-server.sogenactif.com /rs-services/v2/checkout/creditTransferFinalizeAndOrder

Format de la requête creditTransferFinalizeAndOrder

Champ Présence A partir de la version Commentaires
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est IR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantId Obligatoire WS_2.0
messageVersion Obligatoire WS_2.0
redirectionData Obligatoire WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
s10TransactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête creditTransferFinalizeAndOrder

      {
  "interfaceVersion": "IR_WS_2.6",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "messageVersion": "0.1",
  "redirectionData": "RSs7cZyL1Dq....MzMbzqw",
  "transactionReference": "TREFEXA2015",
  "seal": "f8769766243dcb603e417556a0e1d54b29b64cb9398317af3a16eb0a19db7057"
}

    

Format de la réponse creditTransferFinalizeAndOrder

Champ A partir de la version Commentaires
amount WS_2.0
authorisationId WS_2.0
customerBankCode WS_2.0
customerBankName WS_2.0
captureDay WS_2.0
captureMode WS_2.0
complementaryCode WS_2.0
complementaryInfo WS_2.0
currencyCode WS_2.0
customerId WS_2.0
customerIpAddress WS_2.0
errorFieldName WS_2.0
holderAuthentMethod WS_2.0
holderAuthentStatus WS_2.0
holderAuthentProgram WS_2.0
invoiceReference WS_2.0
merchantTransactionDateTime WS_2.0
merchantId WS_2.0
orderChannel WS_2.0
orderId WS_2.0
paymentMeanBrand WS_2.0
paymentPattern WS_2.0
paymentMeanType WS_2.0
responseCode WS_2.0
returnContext WS_2.0
statementReference WS_2.0
s10TransactionReference WS_2.0 Voir la partie Containers
scoreColor WS_2.0
scoreInfo WS_2.0
scoreProfile WS_2.0
scoreThreshold WS_2.0
scoreValue WS_2.0
transactionDateTime WS_2.0
transactionReference WS_2.0
seal WS_2.0
preAuthorisationProfile WS_2.13
preAuthorisationProfileValue WS_2.13
preAuthorisationRuleResultList WS_2.13 Liste de conteneur preAuthorisationRuleResult . Voir la partie Containers
transactionPlatform WS_2.17 Systématiquement valorisé à « PROD »
intermediateServiceProviderOperationId WS_2.24

Exemple de réponse creditTransferFinalizeAndOrder

      {
  "amount": 1000,
  "customerBankCode": "RABONL2U",
  "customerBankName": "BANK - RABO",
  "captureDay": 0,
  "captureMode": "AUTHOR_CAPTURE",
  "currencyCode": "978",
  "merchantTransactionDateTime": "2014-12-05T00:00:00+01:00",
  "merchantId": "011223344550000",
  "orderChannel": "INTERNET",
  "orderId": "123",
  "paymentMeanBrand": "IDEAL",
  "paymentPattern": "ONE_SHOT",
  "responseCode": "00",
  "s10TransactionReference": {
    "s10TransactionId": "129192",
    "s10TransactionIdDate": "20150528"
  },
  "transactionDateTime": "2015-05-28T11:18:26+02:00",
  "transactionReference": "TREFEXA2015",
  "seal": "85cd304554ebc24a60255dbb695b34c46665c6ad2f838966941ceb6dacd9e6ec",
  "transactionPlatform": "PROD"
}

    

Fonction "recycle" du service "cashManagement"

Cette fonction permet de créer une nouvelle transaction à partir des données bancaires d'une transaction précédente. Cette opération est similaire à la duplication, mais avec des limites. Elle vous permet de recycler une transaction expirée ou refusée ou capturée partiellement (le montant n'a pas été entièrement réglé) sans dépasser le montant de la transaction initiale.

Note : veuillez consulter le guide de configuration des fonctionnalités, partie 'gestion de caisse > recyclage', pour savoir dans quels cas vous pouvez effectuer une opération de recyclage.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/cashManagement/recycle

Format de la requête recycle

Champ Présence A partir de la version Commentaires
amount Obligatoire WS_2.0
currencyCode Obligatoire WS_2.0
captureDay Facultatif WS_2.0
captureMode Facultatif WS_2.0
fromTransactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10FromTransactionReference
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est CR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantId Obligatoire WS_2.0
merchantTransactionDateTime Facultatif WS_2.0
statementReference Facultatif WS_2.0
transactionOrigin Facultatif WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
lastRecoveryIndicator Facultatif WS_2.17
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
s10FromTransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le fromTransactionReference. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12
settlementArchivingReference Facultatif WS_2.33
settlementMerchantSpecificData Facultatif WS_2.33

Exemple de requête recycle

      {
  "amount": "1000",
  "captureMode": "AUTHOR_CAPTURE",
  "currencyCode": "978",
  "fromTransactionReference": "SIM2014082813176",
  "interfaceVersion": "CR_WS_2.0",
  "merchantId": "011223344550000",
  "merchantTransactionDateTime": "2014-08-28T13:17:16.480+02:00",
  "transactionOrigin": "SIPS-SIM",
  "transactionReference": "SIM20140828131716",
  "seal": "bab5067f4fa23924cd80f35d5585519a563ff261f38dfa9b74fbb76888b00b64",
  "keyVersion": "1"
}

    

Format de la réponse recycle

Champ A partir de la version Commentaires
acquirerResponseCode WS_2.0
authorisationId WS_2.0
complementaryCode WS_2.0
complementaryInfo WS_2.0
maskedPan WS_2.0
panExpiryDate WS_2.0
paymentMeanBrand WS_2.0
scoreValue WS_2.0
scoreColor WS_2.0
scoreInfo WS_2.0
scoreProfile WS_2.0
scoreThreshold WS_2.0
responseCode WS_2.0
transactionDateTime WS_2.0
s10TransactionReference WS_2.6 Voir la partie Containers
transactionReference WS_2.6
cardData WS_2.9 Voir la partie Containers
seal WS_2.0
preAuthorisationProfile WS_2.13
preAuthorisationProfileValue WS_2.13
preAuthorisationRuleResultList WS_2.13 Liste de conteneur preAuthorisationRuleResult . Voir la partie Containers
preAuthenticationColor WS_2.13
preAuthenticationInfo WS_2.13
preAuthenticationProfile WS_2.13
preAuthenticationProfileValue WS_2.13
preAuthenticationRuleResultList WS_2.13 Liste de conteneur preAuthenticationRuleResult . Voir la partie Containers
preAuthenticationThreshold WS_2.13
preAuthenticationValue WS_2.13
paymentMeanBrandSelectionStatus WS_2.13
transactionPlatform WS_2.17 Systématiquement valorisé à « PROD »
errorFieldName WS_2.21
schemeTransactionIdentifier WS_2.31
paymentAccountReference WS_2.31

Exemple de réponse recycle

      {
  "acquirerResponseCode": "00",
  "authorisationId": "736256",
  "maskedPan": "4541##########00",
  "panExpiryDate": "201504",
  "paymentMeanBrand": "VISA",
  "scoreValue": "-2.3",
  "scoreColor": "RED",
  "scoreInfo": "A3;N;NOT_APPLICABLE#WN;P;U#BN;N;U#GN;N;U#SC;N;TRANS\u003d3:2;CUMUL\u003d3000:250000",
  "scoreProfile": "myprofSco",
  "scoreThreshold": "-3.0",
  "responseCode": "00",
  "transactionDateTime": "2014-08-28T13:20:45+02:00",
  "seal": "df0c23e0a60a745f1f546168fafedb7ae547912473d76c93ee52d31b9d714765",
  "transactionPlatform": "PROD"
}

    

Fonction "acceptChallenge" du service "cashManagement"

Cette fonction vous permet d’accepter le risque de fraude sur des transactions ayant un score de fraude orange. Une fois la transaction acceptée, elle reprend son cycle de vie normal.

Note : veuillez consulter le guide de configuration des fonctionnalités, partie 'gestion de caisse > challenge', pour savoir dans quels cas vous pouvez effectuer une opération d'acceptation de challenge.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/cashManagement/acceptChallenge

Format de la requête acceptChallenge

Champ Présence A partir de la version Commentaires
comment Facultatif WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est CR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantId Obligatoire WS_2.0
operationOrigin Facultatif WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
validationIndicator Facultatif WS_2.0 Valeurs acceptées : « Y » et « N »
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête acceptChallenge

      {
  "comment": "good id",
  "interfaceVersion": "CR_WS_2.6",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "operationOrigin": "SIPS-SIM",
  "transactionReference": "SIM20140121510382",
  "validationIndicator": "Y",
  "seal": "e746314133f7aaabd8ac33db0daf941eda744e8ff70b700490792ffe3480087d"
}

    

Format de la réponse acceptChallenge

Champ A partir de la version Commentaires
acquirerResponseCode WS_2.0
authorisationId WS_2.0
newStatus WS_2.0
operationDateTime WS_2.0
captureLimitDate WS_2.0
responseCode WS_2.0
seal WS_2.0
errorFieldName WS_2.21
schemeTransactionIdentifier WS_2.31
paymentAccountReference WS_2.31
guaranteeIndicator WS_2.32
secureReference WS_2.32

Exemple de réponse acceptChallenge

      {
  "acquirerResponseCode": "00",
  "authorisationId": "123",
  "captureLimitDate": "1",
  "operationDateTime": "2014-10-16T23:51:42-12:00",
  "responseCode": "00",
  "newStatus": "VALIDATED",
  "seal": "919b544bfb60539c8979992bc469e0b4229030ee2462a51f62c9cbd3510b3647"
}

    

Fonction "refuseChallenge" du service "cashManagement"

Cette fonction vous permet de refuser le risque de fraude sur des transactions ayant un score de fraude orange.

Note : veuillez consulter le guide de configuration des fonctionnalités, partie 'gestion de caisse > challenge', pour savoir dans quels cas vous pouvez effectuer une opération de refus de challenge.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/cashManagement/refuseChallenge

Format de la requête refuseChallenge

Champ Présence A partir de la version Commentaires
comment Facultatif WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est CR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantId Obligatoire WS_2.0
operationOrigin Facultatif WS_2.0
transactionReference Conditionnel WS_2.0 Obligatoire si vous n'utilisez pas le s10TransactionReference, dépend de votre configuration commerçant
s10TransactionReference Conditionnel WS_2.6 Obligatoire si vous n'utilisez pas le transactionReference, dépend de votre configuration commerçant. Voir la partie Containers
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête refuseChallenge

      {
  "comment": "bad id",
  "interfaceVersion": "CR_WS_2.6",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "operationOrigin": "SIPS-SIM",
  "transactionReference": "SIM20140121510382",
  "seal": "c36bcfaf3c05ef257795149686c53022f212e05c6fac98d0169c5e9313941444"
}

    

Format de la réponse refuseChallenge

Champ A partir de la version Commentaires
newStatus WS_2.0
operationDateTime WS_2.0
responseCode WS_2.0
seal WS_2.0
errorFieldName WS_2.21

Exemple de réponse refuseChallenge

      {
  "operationDateTime": "2014-10-16T23:51:42-12:00",
  "responseCode": "00",
  "newStatus": "REFUSED",
  "seal": "919b544bfb60539c8979992bc469e0b4229030ee2462a51f62c9cbd3510b3647"
}

    

Fonction "getCardData" du service "paymentMeanInfo"

Cette opération permet de consulter les informations associées à un numéro ou IIN de carte.

Si le numéro ou l'IIN de la carte n'existe pas, un code de réponse 05 est retourné. Si la requête a réussi, le code de réponse 00 est retourné, ainsi que les informations relatives à la carte.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/paymentMeanInfo/getCardData

Format de la requête getCardData

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.5
interfaceVersion Obligatoire WS_2.5 La valeur préconisée est PMR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
cardNumber Facultatif WS_2.5 Doit être défini si cardIIN ne l’est pas
cardIIN Facultatif WS_2.5 Doit être défini si cardNumber ne l’est pas
seal Obligatoire WS_2.5
keyVersion Obligatoire WS_2.5
sealAlgorithm Facultatif WS_2.12
intermediateServiceProviderId Facultatif WS_2.12

Exemple de requête getCardData

      {
  "cardNumber": "4975000000000000",
  "interfaceVersion": "PMR_WS_2.5",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "seal": "97fccfbfde4570019236f31e3bb521be477bbc7bf7cf09c30f8fbc3a635a3011"
}

    

Format de la réponse getCardData

Champ A partir de la version Commentaires
paymentMeanInfoResponseCode WS_2.5
cardDataList WS_2.5 Liste de conteneur cardData . Voir la partie Containers
errorFieldName WS_2.5 Disponible si la valeur de paymentMeanInfoResponseCode est 12 ou 30
seal WS_2.5

Exemple de réponse getCardData

      {
  "paymentMeanInfoResponseCode": "00",
  "cardDataList": [
    {
      "cardScheme": "CB",
      "cardBrand": "CB",
      "cardProductCode": "2",
      "cardProductName": "CARTE NATIONALE DE RETRAIT ET DE PAIEMENT",
      "issuerCode": "10107",
      "issuerCountryCode": "FRA",
      "panLengthMin": 16,
      "panLengthMax": 16,
      "panCheckAlgorithm": "L",
      "cardProductProfile": "D"
    },
    {
      "cardScheme": "VISA",
      "cardBrand": "VISA",
      "cardProductCode": "F",
      "cardProductName": "VISA CLASSIC",
      "cardCorporateIndicator": "N",
      "issuerCode": "10107",
      "issuerCountryCode": "FRA",
      "issuerRegionCode": "D",
      "panLengthMin": 16,
      "panLengthMax": 16,
      "panCheckAlgorithm": "L"
    }
  ],
  "seal": "c10bc66f574d22c4eb68250fe80c7d764a420a4fa22fde23f69e3a67bf60d131"
}

    

Fonction "getVelocityData" du service "fraud"

Cette opération permet de contrôler l'activité d'un champ de données spécifique au cours d'une période déterminée.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/fraud/getVelocityData

Format de la requête getVelocityData

Champ Présence A partir de la version Commentaires
velocityElementType Obligatoire WS_2.0
velocityElementValue Obligatoire WS_2.0
merchantId Obligatoire WS_2.0
velocityPeriod Facultatif WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est FR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête getVelocityData

      {
  "interfaceVersion": "FR_WS_2.9",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "velocityElementType": "customerId",
  "velocityElementValue": "cust010",
  "velocityPeriod": "50",
  "seal": "fc24b9e6bd7a433d258a1df1a8af2698b917d1632aaa1bc12c5c8f45adbeba11"
}

    

Format de la réponse getVelocityData

Champ A partir de la version Commentaires
responseCode WS_2.0
velocityTotalAmount WS_2.0
velocityNbTransaction WS_2.0
currencyCode WS_2.0
velocityProfileMaxTotalAmount WS_2.0
velocityProfileMaxNbTrans WS_2.0
velocityProfileMaxTransAmount WS_2.0
velocityProfileName WS_2.0
velocityProfilePeriod WS_2.0
velocityProfileDateTime WS_2.0
seal WS_2.0
errorFieldName WS_2.21

Exemple de réponse getVelocityData

      {
  "responseCode": "00",
  "velocityTotalAmount": 0,
  "velocityNbTransaction": 0,
  "velocityProfilMaxTotalAmount": 1000,
  "velocityProfilMaxNbTrans": 10,
  "velocityProfilMaxTransAmount": 100,
  "currencyCode": "978",
  "velocityProfileName": "all_controls",
  "velocityProfilPeriod": 10,
  "velocityProfileDateTime": "2014-11-19T14:21:32+01:00",
  "seal": "5a65b70f786047ef13f80a55a6642211daa52df74039c605e70ac7d752f52731"
}

    

Fonction "addToFraudList" du service "fraud"

Cette opération permet d'ajouter un numéro de carte, de token ou de transaction (via le couple transactionIid/transactionDate ou transactionReference) à différents types de liste fraude.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/fraud/addToFraudList

Format de la requête addToFraudList

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.15
interfaceVersion Obligatoire WS_2.15 La valeur préconisée est FR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
intermediateServiceProviderId Facultatif WS_2.15
fraudListType Obligatoire WS_2.15
fraudListLevel Obligatoire WS_2.15
fraudListElementType Conditionnel WS_2.15
fraudListElementValue Obligatoire WS_2.15
fraudListReasonCode Facultatif WS_2.15
seal Obligatoire WS_2.15
keyVersion Obligatoire WS_2.15
sealAlgorithm Facultatif WS_2.15

Exemple de requête addToFraudList

      {
  "fraudListElementType": "PAN",
  "fraudListElementValue": "5017674000000200",
  "fraudListLevel": "WHITE",
  "fraudListType": "CARD_LIST",
  "interfaceVersion": "FR_WS_2.15",
  "keyVersion": "1",
  "merchantId": "226000009630001",
  "seal": "b3f44355e912ebb9c3fed0e3a00a5782762afd604055f3a56438971a4e9ec58f"
}

    

Format de la réponse addToFraudList

Champ A partir de la version Commentaires
fraudResponseCode WS_2.15
errorFieldName WS_2.15
seal WS_2.15

Exemple de réponse addToFraudList

      {
  "fraudResponseCode": "00",
  "seal": "0a7c1ab8fa767313e0631d166843eb55b9f783426241690a2b6e23ca40087811"
}

    

Fonction "removeFromFraudList" du service "fraud"

Cette opération permet de supprimer un numéro de carte, de token, de transaction (via le couple transactionIid/transactionDate ou transactionReference) de différents types de liste fraude.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/fraud/removeFromFraudList

Format de la requête removeFromFraudList

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.15
interfaceVersion Obligatoire WS_2.15 La valeur préconisée est FR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
intermediateServiceProviderId Facultatif WS_2.15
fraudListType Obligatoire WS_2.15
fraudListLevel Obligatoire WS_2.15
fraudListElementType Conditionnel WS_2.15
fraudListElementValue Obligatoire WS_2.15
seal Obligatoire WS_2.15
keyVersion Obligatoire WS_2.15
sealAlgorithm Facultatif WS_2.15

Exemple de requête removeFromFraudList

      {
  "fraudListElementType": "PAN",
  "fraudListElementValue": "5017674000000200",
  "fraudListLevel": "WHITE",
  "fraudListType": "CARD_LIST",
  "interfaceVersion": "FR_WS_2.15",
  "keyVersion": "1",
  "merchantId": "226000009630001",
  "seal": "b3f44355e912ebb9c3fed0e3a00a5782762afd604055f3a56438971a4e9ec58f"
}

    

Format de la réponse removeFromFraudList

Champ A partir de la version Commentaires
fraudResponseCode WS_2.15
errorFieldName WS_2.15
seal WS_2.15

Exemple de réponse removeFromFraudList

      {
  "fraudResponseCode": "00",
  "seal": "0a7c1ab8fa767313e0631d166843eb55b9f783426241690a2b6e23ca40087811"
}

    

Fonction "addCard" du service "wallet"

Cette opération permet d'ajouter une carte à un wallet. Ce dernier est créé en même temps que l’ajout de la carte, s'il n'existe pas.

Les informations sensibles (numéro de carte) peuvent être gérées via le champ panType , chiffrement par l'utilisation du mode CSE (voir la documentation concernée) .

Si la carte est déjà enregistrée dans le wallet, un code de réponse 94 est retourné.

Si la création a réussi, un code de réponse 00 est retourné ainsi que de nombreuses informations sur le compte et la carte associée :

  • identifiant wallet
  • date de création
  • identifiant externe du moyen de paiement créé pour le wallet
  • numéro de carte partiellement masqué (seuls les 4 premiers chiffres et 2 derniers sont affichés).

L'URL est : https://office-server.sogenactif.com /rs-services/v2/wallet/addCard

Format de la requête addCard

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est WR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
cardNumber Obligatoire WS_2.0
cardExpiryDate Obligatoire WS_2.0
panType Facultatif WS_2.31
merchantWalletId Obligatoire WS_2.0
paymentMeanAlias Facultatif WS_2.0
paymentMeanBrand Facultatif WS_2.20
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête addCard

      {
  "cardExpiryDate": "201405",
  "cardNumber": "5219000000000000",
  "interfaceVersion": " WR_WS_2.3",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantWalletId": "iDWal1",
  "paymentMeanAlias": "myvisacard",
  "paymentMeanbrand": "VISA",
  "seal": "4b7beed20ff443b3c05cc904bcd793ba6cace54b9ff669cf26d8576e267dc03c"
}

    

Format de la réponse addCard

Champ A partir de la version Commentaires
walletActionDateTime WS_2.0
paymentMeanId WS_2.0
maskedPan WS_2.0
walletResponseCode WS_2.0
errorFieldName WS_2.0 Disponible si la valeur de walletResponseCode est 12 ou 30
seal WS_2.0

Exemple de réponse addCard

      {
  "walletActionDateTime": "2014-03-19T23:15:03-12:00",
  "paymentMeanId": "13",
  "maskedPan": "4977##########55",
  "walletResponseCode": "00",
  "seal": "a6671feade95c57085939fe973e8455a5c7a81d465f78f1b94c22f8b29a2b751"
}

    

Fonction "addDirectDebit" du service "wallet"

Cette opération permet d’ajouter un mandat au wallet. Si le mandat est déjà enregistré dans le wallet, un code de réponse 94 est retourné.

Si la création a réussi, un code de réponse 00 est retourné, ainsi que de nombreuses informations sur le compte et le mandat associé :

  • date de création
  • identifiant externe du moyen de paiement créé pour le wallet
  • numéro international de compte bancaire (IBAN) partiellement masqué (seuls les 4 premiers chiffres et 2 derniers sont affichés).

L'URL est : https://office-server.sogenactif.com /rs-services/v2/wallet/addDirectDebit

Format de la requête addDirectDebit

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est WR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantWalletId Obligatoire WS_2.0
paymentMeanBrand Obligatoire WS_2.0
mandateId Facultatif WS_2.0
customerBankCode Facultatif WS_2.0
customerAccount Facultatif WS_2.0
transactionActors Facultatif WS_2.0
paymentMeanAlias Facultatif WS_2.0
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête addDirectDebit

      {
  "customerAccount": "FR76300460012900297215195464",
  "customerBankCode": "CEPAFRPP118",
  "interfaceVersion": "WR_WS_2.0",
  "keyVersion": "1",
  "mandateId": "MANDATE0001",
  "merchantId": "011223344550000",
  "merchantWalletId": "1",
  "paymentMeanAlias": "ABC bank account",
  "paymentMeanBrand": "SEPA_DIRECT_DEBIT",
  "transactionActors": "BtoB",
  "seal": "8493c63cd279824b90bf39f542df205343392e08412345d4c2b9c856c42464ef9"
}

    

Format de la réponse addDirectDebit

Champ A partir de la version Commentaires
walletActionDateTime WS_2.0
paymentMeanId WS_2.0
maskedPan WS_2.0
transactionActors WS_2.0
walletResponseCode WS_2.0
errorFieldName WS_2.0 Disponible si la valeur de walletResponseCode est 12 ou 30
seal WS_2.0

Exemple de réponse addDirectDebit

      {
  "walletActionDateTime": "2014-07-28T21:14:13-12:00",
  "paymentMeanId": "8",
  "maskedPan": "MAND#####01",
  "transactionActors": "BtoB",
  "walletResponseCode": "00",
  "seal": "75cc0bd5f72a15fb38b0f609393437db61866f867fa7befeef9b3f496a9e449f"
}

    

Fonction "deletePaymentMean" du service "wallet"

Cette fonction vous permet de supprimer définitivement l'un des moyens de paiement de son wallet.

Si le compte ou la carte n'existe pas, un code de réponse 01 est retourné. Si la suppression a fonctionné, le code de réponse 00 est retourné avec la date de suppression.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/wallet/deletePaymentMean

Format de la requête deletePaymentMean

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est WR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantWalletId Obligatoire WS_2.0
paymentMeanId Obligatoire WS_2.0
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête deletePaymentMean

      {
  "interfaceVersion": "WR_WS_2.3",
  "keyVersion": "2",
  "merchantId": "011223344550000",
  "merchantWalletId": "walId011",
  "paymentMeanId": "2",
  "seal": "dc02b07a50eaae5007be184ede9a1b03150809ced6fca81c81f7a54929129b44"
}

    

Format de la réponse deletePaymentMean

Champ A partir de la version Commentaires
walletActionDateTime WS_2.0
walletResponseCode WS_2.0
errorFieldName WS_2.0 Disponible si la valeur de walletResponseCode est 12 ou 30
seal WS_2.0

Exemple de réponse deletePaymentMean

      {
  "walletActionDateTime": "2014-05-19T23:22:08-12:00",
  "walletResponseCode": "00",
  "seal": "e721a45f7decf017ba079dd0c25b1e7916c6c9e6c7e86d6cef37bec2cf42ba04"
}

    

Fonction "updatePaymentMean" du service "wallet"

Cette opération vous permet de mettre à jour l'un des moyens de paiement contenu dans le wallet d'un client. Si le compte ou le moyen de paiement n'existe pas, un code de réponse 01 est retourné. Si la mise à jour a fonctionné, le code de réponse 00 est retourné avec la date de la mise à jour.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/wallet/updatePaymentMean

Format de la requête updatePaymentMean

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est WR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantWalletId Obligatoire WS_2.0
paymentMeanId Obligatoire WS_2.0
paymentMeanAlias Facultatif WS_2.0
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête updatePaymentMean

      {
  "interfaceVersion": "WR_WS_2.3",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantWalletId": "walId011",
  "paymentMeanAlias": "myAlias",
  "paymentMeanId": "2",
  "seal": "1e26289499d5f6104e6300291f272d7b994a111eecf8feedccf934560de26e5d"
}

    

Format de la réponse updatePaymentMean

Champ A partir de la version Commentaires
walletActionDateTime WS_2.0
walletResponseCode WS_2.0
errorFieldName WS_2.0 Disponible si la valeur de walletResponseCode est 12 ou 30
seal WS_2.0

Exemple de réponse updatePaymentMean

      {
  "walletActionDateTime": "2014-05-19T23:19:54-12:00",
  "walletResponseCode": "00",
  "seal": "4d40a4af0fe8ceaf1370ab5e434c6ba939973bcacf33f202c72c47a8ab622c19"
}

    

Fonction "signOff" du service "wallet"

Cette opération permet de supprimer un wallet et les moyens de paiements associés. Si le compte n'existe pas, un code de réponse 01 est retourné. Si la suppression a fonctionné, le code de réponse 00 est retourné avec la date de suppression.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/wallet/signOff

Format de la requête signOff

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est WR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantWalletId Obligatoire WS_2.0
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête signOff

      {
  "interfaceVersion": "WR_WS_2.3",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantWalletId": "SIM01",
  "seal": "8217a6163368bee3b5baebc47a822d40327344ce578411055f95d6e5752d00f4"
}

    

Format de la réponse signOff

Champ A partir de la version Commentaires
walletActionDateTime WS_2.0
walletResponseCode WS_2.0
errorFieldName WS_2.0 Disponible si la valeur de walletResponseCode est 12 ou 30
seal WS_2.0

Exemple de réponse signOff

      {
  "walletActionDateTime": "2014-05-19T23:20:25-12:00",
  "walletResponseCode": "00",
  "seal": "8ff8b4302b5eeda23bad2d556dd539c2b3991f8dcd4deb66e338df3a1f59ebe6"
}

    

Fonction "addIssuerWallet" du service "wallet"

Cette opération permet d'ajouter un identifiant de wallet externe dans un wallet Sogenactif . Un nouveau wallet est créé si inexistant. Si l'identifiant de wallet externe est déjà enregistré dans le wallet, un code de réponse 94 est retourné. Si la création a réussi, un code de réponse 00 est retourné.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/wallet/addIssuerWallet

Format de la requête addIssuerWallet

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est WR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
issuerWalletId Obligatoire WS_2.0
issuerWalletType Obligatoire WS_2.0
merchantWalletId Obligatoire WS_2.0
paymentMeanAlias Facultatif WS_2.0
intermediateServiceProviderId Facultatif WS_2.0
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.0

Exemple de requête addIssuerWallet

      {
  "interfaceVersion": "WR_WS_2.23",
  "issuerWalletId": "xWfgmpijds",
  "issuerWalletType": "PAYLIB",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantWalletId": "iDWal1",
  "paymentMeanAlias": "paylib un clique",
  "seal": "4b7beed20ff443b3c05cc904bcd793ba6cace54b9ff669cf26d8576e267dc03c"
}

    

Format de la réponse addIssuerWallet

Champ A partir de la version Commentaires
walletActionDateTime WS_2.0
paymentMeanId WS_2.0
walletResponseCode WS_2.0
errorFieldName WS_2.0
seal WS_2.0

Exemple de réponse addIssuerWallet

      {
  "walletActionDateTime": "2018-03-19T23:15:03-12:00",
  "paymentMeanId": "13",
  "walletResponseCode": "00",
  "seal": "a6671feade95c57085939fe973e8455a5c7a81d465f78f1b94c22f8b29a2b751"
}

    

Fonction "getWalletData" du service "wallet"

Cette opération permet de consulter un wallet et les moyens de paiement associés.

Si le compte n'existe pas, un code de réponse 01 est retourné. Si la requête a réussi, le code de réponse 00 est retourné, ainsi que les informations relatives aux moyens de paiement.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/wallet/getWalletData

Format de la requête getWalletData

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est WR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantWalletId Obligatoire WS_2.0
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête getWalletData

      {
  "interfaceVersion": " WR_WS_2.3",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantWalletId": " walId011",
  "seal": "8217a6163368bee3b5baebc47a822d40327344ce578411055f95d6e5752d00f4"
}

    

Format de la réponse getWalletData

Champ A partir de la version Commentaires
walletCreationDateTime WS_2.0
walletLastActionDateTime WS_2.0
walletResponseCode WS_2.0
walletPaymentMeanDataList WS_2.0 Liste de conteneur walletPaymentMeanData . Voir la partie Containers
errorFieldName WS_2.0 Disponible si la valeur de walletResponseCode est 12 ou 30
seal WS_2.0

Exemple de réponse getWalletData

      {
  "walletCreationDateTime": "2013-12-23T05:17:26-12:00",
  "walletLastActionDateTime": "2014-01-19T23:16:00-12:00",
  "walletResponseCode": "00",
  "walletPaymentMeanDataList": [
    {
      "paymentMeanId": "14",
      "maskedPan": "4977##########02",
      "paymentMeanBrand": "SEPA_DIRECT_DEBIT"
    },
    {
      "paymentMeanId": "13",
      "maskedPan": "4977##########55",
      "paymentMeanAlias": "MySDD",
      "panExpiryDate": "201501",
      "paymentMeanBrand": "CB"
    }
  ],
  "seal": "4579cfc4044c29550327f9cba0be400129e95cb5b2639c6e301484930b4f9f94"
}

    

Fonction "getPaymentMeanData" du service "wallet"

Cette fonction permet de consulter un wallet et les informations de ses moyens de paiement.

Si le compte ou le moyen de paiement n'existe pas, un code de réponse 01 est retourné. Si la requête a réussi, le code de réponse 00 est retourné, ainsi que les informations relatives au moyen de paiement.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/wallet/getPaymentMeanData

Format de la requête getPaymentMeanData

Champ Présence A partir de la version Commentaires
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est WR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantWalletId Obligatoire WS_2.0
paymentMeanId Obligatoire WS_2.0
intermediateServiceProviderId Facultatif WS_2.12
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.12

Exemple de requête getPaymentMeanData

      {
  "interfaceVersion": "WR_WS_2.3",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantWalletId": " walId011",
  "paymentMeanId": "14",
  "seal": "7ba62b5dc8583a636fa35ec8399025e67d5a6335de4e04e25e99d21209e0bd4e"
}

    

Format de la réponse getPaymentMeanData

Champ A partir de la version Commentaires
walletResponseCode WS_2.0
walletPaymentMeanData WS_2.0 Voir la partie Containers
errorFieldName WS_2.0 Disponible si la valeur de walletResponseCode est 12 ou 30
seal WS_2.0

Exemple de réponse getPaymentMeanData

      {
  "walletResponseCode": "00",
  "walletPaymentMeanData": {
    "paymentMeanId": "14",
    "maskedPan": "4977##########02",
    "paymentMeanBrand": "SEPA_DIRECT_DEBIT"
  },
  "seal": "17f797e25668662aa51d59dbbd51c7094410f46326d15568f73f27621380c34a"
}

    

Fonction "initializeMandate" du service "mandate"

Cette opération permet d’initialiser un processus de signature de mandat. Si l’étape d’initialisation réussit, vous recevez en réponse une URL sécurisée (redirectionUrl) vers laquelle le client doit être redirigé pour continuer le processus de signature. La redirection doit être faite via un formulaire POST, voir la partie "Formulaire POST vers des fournisseurs externes".

Parmi les paramètres de la requête, vous devez également renseigner l’URL (merchantReturnUrl) vers laquelle le client sera redirigé à la fin du processus de signature du mandat. Vous devez ensuite appeler le service finalizeMandate pour obtenir le résultat du processus de signature.

L'URL est : https://office-server.sogenactif.com /rs-services/v2/mandate/initializeMandate

Format de la requête initializeMandate

Champ Présence A partir de la version Commentaires
paymentMeanAlias Obligatoire WS_2.0
merchantReturnUrl Obligatoire WS_2.0
merchantId Obligatoire WS_2.0
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est MR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
returnContext Facultatif WS_2.0
intermediateServiceProviderId Facultatif WS_2.0
seal Obligatoire WS_2.0
keyVersion Obligatoire WS_2.0
sealAlgorithm Facultatif WS_2.0
paymentMeanData Facultatif WS_2.0
customerContact Facultatif WS_2.0 Voir la partie Containers
customerAddress Facultatif WS_2.0 Voir la partie Containers
customerLanguage Facultatif WS_2.0
mandateId Facultatif WS_2.0
transactionActors Facultatif WS_2.0
iban Obligatoire WS_2.0
customerId Facultatif WS_2.0

Exemple de requête initializeMandate

      {
  "customerAddress": {
    "city": "City",
    "country": "FRA",
    "street": "street name",
    "streetNumber": "123",
    "zipCode": "12345"
  },
  "customerContact": {
    "email": "test@sips.com",
    "firstname": "Firstname",
    "gender": "M",
    "lastname": "Lastname"
  },
  "iban": "FR123456456546546546546546",
  "interfaceVersion": "MR_WS_2.18",
  "keyVersion": "1",
  "merchantId": "011223344550000",
  "merchantReturnUrl": "https://mywebsite/return.jsp",
  "paymentMeanAlias": "alias",
  "seal": "fc24b9e6bd7a433d258a1df1a8af2698b917d1632aaa1bc12c5c8f45adbeba11"
}

    

Format de la réponse initializeMandate

Champ A partir de la version Commentaires
mandateResponseCode WS_2.0
acquirerResponseCode WS_2.0
redirectionUrl WS_2.0
redirectionData WS_2.0
mandateId WS_2.0
messageVersion WS_2.0
seal WS_2.0
errorFieldName WS_2.21

Exemple de réponse initializeMandate

      {
  "mandateResponseCode": "00",
  "acquirerResponseCode": "00",
  "redirectionUrl": "https://payment-web.sips.priv.atos.fr/paymentprovider/initsps",
  "redirectionData": "bt1QVw4zgOYphloN0S7DMHpIAJfrMks9H/...j3MFRNbExX",
  "mandateId": "000000000000000826",
  "messageVersion": "0.1",
  "seal": "9019f36306c3c5de4ff8ea9bc4fcc9ebca236cb350c348c6951a81f86d0c6c60"
}

    

Fonction "finalizeMandate" du service "mandate"

Cette opération permet de finaliser le processus de signature de mandat et de connnaître le résultat. Elle doit être appelée après que vous ayez reçu le formulaire POST sur l’url merchantReturnUrl (voir les paramètres de la requête initializeMandate).

L'URL est : https://office-server.sogenactif.com /rs-services/v2/mandate/finalizeMandate

Format de la requête finalizeMandate

Champ Présence A partir de la version Commentaires
interfaceVersion Obligatoire WS_2.0 La valeur préconisée est MR_WS_ 2.33 afin de bénéficier des dernières fonctionnalités
merchantId Obligatoire WS_2.0
messageVersion Obligatoire WS_2.0
redirectionData