Intégration Shopping-Mail Auteur: Kassim Belghait Version: 1.5 Date de mise à jour: 31/05/2013 Date de création: 04/11/2011
I. Principe Le but du module est de récupérer un code HTML depuis le service Shopping-Mail et de l'insérer en pied de mail de confirmation de commande et/ou de livraison ainsi qu'en page de confirmation de commande. Il faut également insérer un tracking avant la validation de la commande (dernière étape du tunnel de commande). II. Configuration Le module doit être configurable avec les champs suivants: Activé l'affichage dans les emails ou non Activé l'affichage sur la page de confirmation de commande ou non Token Shopping-Mail Mail dans lequel on veut afficher les coupons (confirmation de commande, de livraison ou les deux) Targeting dynamique ou non (n'est plus utilisé, les données sont toujours envoyées) III. Implémentation du service III.1 Récupération des campagnes L'appel au service doit être transparent pour le e-commerçant, il ne doit pas avoir à modifier son mail. L'url de production du service est: www.shopping-mail.com/service/work Vous pouvez effectuer vos tests d'intégration sur cette url: www.shopping-mail.com/service/work/demo L'appel se fait en HTTP avec la méthode «POST» En mode «TEST» aucune donnée (impressions/clics) n'est comptabilisée.
Variables à envoyer dans tous les types de service: Nom Type Format/Valeur Obligatoire Description service_token Varchar Oui Jeton de l'api fournit par shopping-mail order_id Varchar Oui Identifiant de la commande code Timestamp Oui country Varchar(2) Code iso 2 Non pays de facturation genders Varchar(3) «all» ou «h» ou «f» Non Genre du client birthday Date d/m/y ou Y-m-d Non Date de naissance du client business_type Varchar(3) «b2b» ou «b2c» Non Typologie du client shipping_country Varchar(2) Code iso 2 Non Pays de livraison shipping_amount Float Séparateur (.) Non Montant des frais de livraison total_amount Float Séparateur (.) Non Montant total de la commande III.2 Service Email Variables à envoyer pour l'affichage des campagnes dans les emails : Nom Type Format/Valeur Obligatoire Description mail_type Varchar 'order' ou 'shipping' Oui Type de l'email. «order» par défaut. service_type Varchar email Oui Type de service appelé Cet appel doit se faire lors de la génération de l'email configuré. Le résultat doit être placé en pied de mail.
III.3 Service page de confirmation de commande Variables à envoyer pour l'affichage des campagnes sur la page de confirmation de commande: Nom Type Format/Valeur Obligatoire Description service_type Varchar page.order.confir mation Oui Type de service appelé Cet appel doit se faire lors de l'affichage de la page de confirmation de commande (page succès). Le résultat peut être placé où vous le souhaitez. III.4 Installation du Tracking des commandes Le tracking doit être placé sur la dernière page du tunnel de commande avant le paiement. L'url du tracking est: http://www.shopping-mail.com/service/track/ Le tracking contient les variables suivantes: Nom Type Format Obligatoire service_token Varchar Oui order_id Varchar Oui amount Float Séparateur (.) Oui
IV. Exemple IV.1 Appel du service try { $params = array( "service_token"=>"80918833abb4a1a72118b0b7ccd26596", "order_id"=>"10000002345", "mail_type"=>"order",// order ou shipping "code"=>time(), "country"=>"fr",//code iso2 "birthday"=>"28/04/1982",//(d/m/y or Y-m-d) "genders"=>"h",//all,h,f ); $response = callws($params); echo $response; } catch (Exception $e) { //Do nothing for not interrupt email sending } function callws($parameters){ $service_url = 'http://www.shopping-mail.com/service/work/'; $curl = curl_init($service_url); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS,$parameters); curl_setopt($curl, CURLOPT_HEADER, false); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 5); $curl_response = curl_exec($curl); $http_status = curl_getinfo($curl, CURLINFO_HTTP_CODE); if($http_status!= 200) { curl_close($curl); return "" ; } curl_close($curl); } return $curl_response;
IV.2 Code du Tracking <!-- BEGIN Shoppingmail Tracking --> <script type="text/javascript"> //<![CDATA[ document.write('<img src="http://www.shopping-mail.com/service/track.php/? service_token={token}&amount={order_amount}&order_id={order_id}" />'); //]]> </script> <!-- END Shoppingmail Tracking -->