



Magento implémente par défaut un module pour Google Analytics : en quelques clics le tracker Analytics est installé, et la bonne nouvelle c'est que le module intègre automatiquement l'API e-commerce d'Analytics.
Je ne suis pas un grand spécialiste d'Analytics, j'y découvre d'ailleurs de temps en temps quelques subtilités. Ce qui est certain, c'est que pour le vente en ligne, Analytics est un outil d'analyse surpuissant. Idéal pour tracker faits et gestes des internautes et analyser les comportements.
Sans entrer dans les détails d'analyse poussée des données récoltées par Analytics, voici déjà comment le configurer au mieux avec Magento.
L'objectif est d'envoyer à Analytics les informations des ventes réalisées sur la boutique : transactions (référence, montant total, tva, frais de port...) et produits commandés (noms, prix, sku, quantités...). L'outil se charge ensuite de vous donner le taux de conversion par source, le panier moyen, le chiffre d'affaires et plein d'autres informations indispensables à la pérennité de votre e-commerce. Et il n'y a pour cela que 2 choses à faire :
Pour activer Analytics, rendez-vous sur le menu Système > configuration > Ventes > API Google > Google Analytics. On renseigne alors son UA, et on active :
Sur Analytics, éditez les paramètres du profil de votre e-commerce puis modifiez les informations sur le profil. Indiquez que votre site est un site Web de commerce électronique (sans oublier de modifier la devise) :
Un nouvel onglet fera alors son apparition sur l'interface :
Voilà pour la configuration... Cependant pour que tout cela fonctionne correctement et que les données soient correctement collectées, il vous faut à tout prix que l'internaute, quelque soit la méthode de paiement sélectionnée, finisse par atterrir sur la page checkout/onepage/success/.
C'est en effet sur cette page que l'API e-commerce d'Analytics entre en action. Si vous observez le code source de la page, vous y trouverez :
Tracker Analytics depuis checkout/onepage/success/
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-XXXXXXX-X");
pageTracker._trackPageview("/magento/checkout/onepage/success/");
</script>
<script type="text/javascript">
pageTracker._addTrans("100000016","","11.6100","1.1500","4.9000","Lille","Nord","FR");
pageTracker._addItem("100000016","THE003","The Yunnan Pu-Erh","","5.8500","1.0000");
pageTracker._trackTrans();
</script>
3 méthodes GATC sont utilisées : _addItem() pour tracker les produits commandés, _addTrans() pour générer l'objet transaction, et _trackTrans() pour communiquer au serveur d'Analytics la transaction et les produits associés (Tracking API Ecommerce).
Notez que ces méthodes sont également disponibles pour la version asynchrone d'Analytics que Magento n'utilise pas encore. Une petite surcharge du module GoogleAnalytics peut permettre d'implémenter cette nouvelle version du tracker.
Selon les méthodes de ventes que vous proposez et les interfaces de paiement utilisées, obligez donc le client à achever sa commande sur la page checkout/onepage/success/. Pour la France, l'interface de paiement très largement répandue et proposée par la majorité des banques et celle d'ATOS. Par défaut le client peut ne pas revenir sur le site une fois le paiement effectuée (très peu d'internautes le font, refroidies par le message d'avertissement sur les données transmises en claire lors du clic sur le bouton "retour à la boutique"). Pour l'API ATOS, penchez vous sur la variable NO_RESPONSE_PAGE à transmettre lors de la requête....
Commentez cet article Configurer Magento et Google Analytics pour l'analyse statistique de la boutique
concernant l'activation de NO_RESPONSE_PAGE j'ai vu sur des forums que cela pouvait causer des soucis, et la doc atos comporte le message ci-dessous :
ATTENTION :
L’utilisation de cette option modifie le protocole de la réponse renvoyée sur les URL paramétrées dans les champs normal_return_url et cancel_return_url. La réponse cryptée n’est plus envoyée en méthode POST, mais en méthode GET. La méthode GET ne permettant pas de véhiculer de grosses variables, tous les champs de la réponse ne sont pas renvoyés.
Les champs non transmis sont : caddie, customer_email, customer_id, customer_ip_address, merchant_language, order_validity, receipt_complement, return_context et transaction_condition.
Alors quelle est la méthode à utiliser pour que GA prenne en compte toutes les transactions ? J'ai vu qu'il existait une extension fooman GA plus, quelqu'un a un retour d'expérience là dessus vu que l'extension est en beta ?
Pascal
Par contre je ne connais pas l'extension Fooman GA plus...
j'ai un site en production pour lequel j'aimerais faire la modif dont tu parles mais j'ai pas trop droit à l'erreur :) : pourrais tu m'indiquer quels fichiers et quel code il faut ajouter ou modifier notamment pour la variable no_reponse_page (parcom ou atos.php) car j'ai vu differentes reponses sur des forums, ainsi que pour passer de POST en GET.
Pour l'extension Fooman, si ca interesse quelqu'un :
http://www.magentocommerce.com/magento-connect/FOOMAN/extension/171/fooman-google-analytics-plus
Merci
Pascal
Tu n'as pas la possibilité de tester sur un serveur de pré-production ?
Sinon la récupération des données en POST se font au niveau du contrôleur : app/code/local/Mage/Atos/controllers/StandardController.php, pour un paiement par CB standard (pas par carte aurore ni paiement en plusieurs fois).
Tu vas y trouver un certain nombre de $_POST['DATA'], et des conditions du type if($this->getRequest()->isPost('DATA')).
L'idée est de remplacer tout çà par des $_GET['DATA'] et des if(isset($_GET['DATA'])), ou mieux, faire des conditions selon que les infos sont envoyés en GET ou en POST afin de pouvoir facilement basculer de l'un à l'autre (tu pourras comme çà revenir rapidement en POST si çà marche pas...)
Pascal