pour plus d'informations n° indigo (0.118 €/min) 08 203 203 63    

Paiements sécurisés >Sogenactif

 Le système Sogenactif chez OVH 
Sogénactif est le système de paiement proposé par la société générale. Il utilise le système développé par le groupe ATOS.

Comment intégrer le système Sogénactif sur votre site ?


Les scripts du kit de paiement sécurisé qui font l'intermédiaire avec la banque sont installés sur notre serveur dédié aux paiements sécurisés, paisec.ovh.net. Ces scripts sont request.cgi, autoresponse.cgi, et response.cgi.
Pour proposer ce système de paiement par carte bancaire, vous devez simplement ajouter un extrait de code au script de votre site qui présente le montant à payer et les moyens de paiement que vous proposez.
Vous trouverez en bas de cette page des extraits de scripts que vous pourrez insérer dans vos programmes CGI, en PHP ou Perl.

Comment fonctionne le système de paiements Sogénactif ?


L'extrait de programme que vous ajoutez à votre site affiche le code HTML retourné par le programme request.cgi qui renvoie la liste des cartes banquaires proposées par votre site.
Le script request.cgi doit être appelé avec les paramètres de la transaction: le montant de montant de la transaction, la devise à utiliser, un identifiant de transaction, et d'autres variables vous permettant de faire varier le comportement du système de paiement. Reportez vous au bas de cette page pour consulter la liste des paramètres que vous pouvez utiliser.

Le visiteur de votre site qui désire payer par carte bancaire clique sur le logo du type de carte qu'il souhaite utiliser. Il est alors redirigé vers le site de la banque sur lequel il va saisir son code confidentiel, protégé par le cryptage de la connexion SSL.
Les données résultant de la transactions sont ensuite communiquées à un autre script CGI sur notre serveur, qui vous les renvoie pas courrier électronique.
Si le visiteur choisit de retourner sur votre site une fois le paiement effectué, il est renvoyé sur une URL que vous aurez déterminée lors de l'installation du système.

Détail des flux d'information


Le schéma ci-dessous, accompagné du texte explicatif qui suit présentent les échanges de données qui ont lieu lors des appels de CGI effectués entre les différents serveurs pendant une opération de paiement sécurisé :

Schéma des appels de CGI lors d'un paiement en ligne

Les appels de CGI se déroulent ainsi:
  • (1) Le visiteur termine ses achats, et arrive sur la page de votre site qui lui présente le montant total à régler, et les moyens de paiements proposés. C'est dans cette page que doit être inclu l'extrait de programme qui affiche le résultat de l'appel au script request.cgi, c'est à dire les cartes bancaires acceptées.
  • (2) Le visiteur clique sur la carte qu'il veut utiliser pour la transaction. Il est ensuite amené sur le site de la banque où il saisit son numéro de carte bancaire.
  • (3) Lorsque le serveur de la banque affiche le résultat de la transaction (transaction réussie, numéro de carte invalide, etc.), il appelle en même temps le CGI autoresponse.cgi.
  • (3bis) Le programme autoresponse.cgi envoit un email vers l'adresse que vous aurez précisée lors de l'installation du système, et appelle éventuellement un CGI de votre site avec les paramètres de la transaction communiqués par la banque. Ce CGI, dont l'URL doit également être précisé lors de l'installation, vous permet par exemple de stocker le résultat du paiement dans une base de données, d'écrire le résultat dans un fichier, etc.
  • (4) Sur le site de la banque, le visiteur clique sur le bouton "retour au site web". Dans ce cas, le résultat du CGI response.cgi situé sur le serveur paisec.ovh.net est affiché dans le navigateur du visiteur. Si le visiteur choisit de ne pas cliquer sur ce bouton, et, par exemple, ferme son navigateur, response.cgi n'est pas appelé. (C'est pourquoi le CGI autoresponse.cgi est appelé auparavant: on est ainsi certains de recevoir le résultat de la transaction).
  • (4bis) Le script response.cgi lit les données retournées par la banque et redirige le navigateur du visiteur vers une URL de votre site.
    Vous pouvez préciser lors de l'installation du système deux URL différentes qui seront appelées selon le code de retour de la transaction.
    Cette URL peut aussi être un CGI, auquel cas il lui est passé en paramètres les données retournés par la banque. Ce CGI ainsi appelé peut alors afficher dans le navigateur du visiteur une page différente selon le résultat de la transaction.

Extraits de script


Les exemples de code suivants peuvent être utilisés pour intégrer votre système de paiement à votre boutique. Vous pouvez simplement les adapter, ou bien vous en inspirer pour modifier vos propres scripts.
Exemple en PHP:
<?      
    $login="VOTRELOGIN"; // il s'agit de votre login sur notre serveur paisec.ovh.net
    
    //--- url-encodage des paramètres
    $amount = urlencode($total);
    $orderId = urlencode($numero_commande);
    $currencyCode = 978;
     
    $serverUrl="http://paisec.ovh.net";
    $cgiPath="/~$login/sogenactif/request.cgi?";
    $cgiParams="amount=$amount&order_id=$orderId&currency_code=$currencyCode";

    //--- récupération du formulaire affichant le bouton
    $myfile = file("$serverUrl$cgiPath$cgiParams");

    //--- affichage de la liste des cartes bancaires
    for($index = 0; $index > count($myfile); $index++)
    {       
            print ($myfile[$index]);
    }
?>
Exemple en perl:
    use LWP::Simple;
    use URI::Escape;

    #--- récupération du formulaire affichant le bouton

    my $login="VOTRELOGIN"; # il s'agit de votre login sur notre serveur paisec.ovh.net

    my $serverUrl="http://paisec.ovh.net";
    my $cgiUrl="/~$login/sogenactif/request.cgi?";

    my $amount='amount=' . uri_escape($total);
    my $orderId='&order_id=' . uri_escape($numero_commande);
    my $currencyCode='&currency_code=978';

    my $cgiParams="$amout$orderId$currencyCode";

    #--- appel du CGI:
    my $cardsForm = get "$serverUrl$cgiUrl$cgiParams";

    #--- affichage des cartes bancaires acceptées:
    print $cardsForm;

Paramètres de transaction


Voici les paramètres qui peuvent être précisés lors de l'appel au script request.cgi, déterminant le comportement des transactions :
  • amount: (obligatoire)
    Le montant de la transaction à réaliser. Il doit être précisé dans la plus petite unité de la devise utilisée (en centimes par exemple si la devise est le franc français).

  • currency_code: (défaut: déterminé lors de l'installation)
    Indique la devise de la facture proposée à l'internaute. (en format ISO-IS 4217)

  • 978: Euro 840: Dollar américan
    124: Dollar canadien 826: Livre Sterling
    392: Yen japonais  

  • language_code: (défaut: déterminé lors de l'installation)
    Langage utilisé pour les pages textes (sur deux caractères, voir liste ci-dessous.)
  • en: english da: danois
    fr: français fi: finnois
    ge: allemand sw: suédois
    it: italien po: portuguais
    sp: espagnol no: norvégien
    du: néerlandais  

  • caddie: (défaut: aucun)
    Informations sur le panier de l'internaute. Ce champ est simplement retourné par le serveur de la banque.

  • data: (défaut: aucun)
    Contient des informations personnelles sur la transaction qui sont seulement retournées par le serveur de la banque. (peut être parfois utilisé par le serveur de la banque. Se renseigner auprès d'eux.)

  • return_context: (défaut: aucun)
    Contient des informations personnelles sur la transaction qui sont seulement retournées par le serveur de la banque. (non utilisé par le serveur de la banque.)

  • receip_complement: (défaut: aucun)
    Nous n'avons pas pu trouver de documentation sur ce paramètre.
retour en haut de page