Evénement Transaction

 

Avant-propos

Cette documentation de marquage ne s’applique qu’à partir de la version 5.20.0 du Tracker.

Avant de commencer l’implémentation de Sales Insights, veuillez-vous assurer d’avoir lu l’introduction aux événements.
Si vous ne voyez pas le menu « Sales Insights » dans Explorer, contactez-nous pour que nous activions la fonctionnalité pour vous.

 

Evénement Transaction

Le plugin fournit une fonction utile pour la mesure de confirmation de transaction.

 

Confirmation de transaction

Le Tracker dispose de méthodes de déclaration :

  • tag.ecommerce.transactionConfirmation.cart.set()
  • tag.ecommerce.transactionConfirmation.transaction.set()
  • tag.ecommerce.transactionConfirmation.shipping.set()
  • tag.ecommerce.transactionConfirmation.payment.set()
  • tag.ecommerce.transactionConfirmation.products.set()

La mesure de la confirmation de transaction se fait par la déclaration d’un objet panier, d’un objet transaction, d’un objet livraison, d’un objet paiement et d’un tableau de produits.

Le panier se déclare sous la forme d’un objet pouvant contenir différentes propriétés :

  • « id » – String : Identifiant du panier (obligatoire).
  • « currency » – String: Devise (norme ISO 4217 – ex: EUR).
  • « turnovertaxincluded » – Float: Montant total TTC du panier (frais de livraison inclus).
  • « turnovertaxfree » – Float: Montant total HT du panier (frais de livraison inclus).
  • « creation_utc » – Date: Date de creation du panier (timestamp UTC en secondes).
  • « quantity » – Number: Nombre total de produits dans le panier.
  • « nbdistinctproduct » – Number: Nombre de produits distincts dans le panier.

La transaction se déclare sous la forme d’un objet pouvant contenir différentes propriétés :

  • « id » – String : Identifiant de transaction (obligatoire).
  • « status » – String : Statut de la transaction.
  • « promocode » – Array : Tableau de codes promotionnels pouvant contenir un ou plusieurs codes. Un code promotionnel se déclare sous la forme d’un libellé.
  • « firstpurchase » – Boolean : Première commande du client.

Les données de livraison se déclarent sous la forme d’un objet pouvant contenir différentes propriétés :

  • « delivery » – String : Nom du transporteur.
  • « costtaxincluded » – Float : Montant des frais de livraison TTC.
  • « costtaxfree » – Float : Montant des frais de livraison HT.

Le moyen de paiement se déclare sous la forme d’un objet à une propriété :

  • « mode » – String : Moyen de paiement.

Le tableau de produits peut contenir un ou plusieurs produits.

Un produit se déclare sous la forme d’un objet pouvant contenir différentes propriétés :

  • « id » – String : Identifiant du produit (obligatoire).
  • « variant » – String : Variante du produit (taille, couleur, etc.).
  • « article » – String : Niveau de détail supplémentaire à la variante du produit.
  • « placement » – String : Emplacement du produit.
  • « promocode » – Array : Tableau de codes promotionnels pouvant contenir un ou plusieurs codes. Un code promotionnel se déclare sous la forme d’un libellé.
  • « $ » – String : Nom du produit.
  • « brand » – String : Marque du produit.
  • « discount » – Boolean : Produit remisé.
  • « pricetaxincluded » – Float : Prix TTC.
  • « pricetaxfree » – Float : Prix HT.
  • « stock » – Boolean : Produit en stock.
  • « quantity » – Number : Nombre de produits dans le panier.
  • « category1 » – String : Catégorie de niveau 1 du produit (jusqu’à 6 niveaux d’arborescence possibles ; de « category1 » à « category6 »).

Exemple

var tag = new ATInternet.Tracker.Tag();
tag.ecommerce.transactionConfirmation.cart.set({
    "id": "34",
    "currency": "EUR",
    "turnovertaxincluded": 547.4, //Shipping fees included + discount 10€
    "turnovertaxfree": 447.76, //Shipping fees included + discount 8€44
    "creation_utc": 1514973161, //UTC timestamp in seconds
    "quantity": 1,
    "nbdistinctproduct": 1
});
tag.ecommerce.transactionConfirmation.transaction.set({
    "id": "27",
    "status": "charged",
    "promocode": ["DQQYRZSJ", "UN1ENE27"],
    "firstpurchase": false
});
tag.ecommerce.transactionConfirmation.shipping.set({
    "delivery": "My carrier",
    "costtaxincluded": 8.4,
    "costtaxfree": 7
});
tag.ecommerce.transactionConfirmation.payment.set({"mode": "Credit card"});
tag.ecommerce.transactionConfirmation.products.set([{
    "id": "1",
    "variant": "1",
    "article": "21",
    "placement": "homepage",
    "promocode": ["AQQYRTGJ"],
    "$": "laptop_A56",
    "brand": "ACER",
    "discount": true,
    "pricetaxincluded": 549,
    "pricetaxfree": 456.2,
    "stock": true,
    "quantity": 1,
    "category1": "Computers_and_Networking",
    "category2": "Computers",
    "category3": "Laptops"
}]);
tag.dispatch();
 

Confirmation de transaction côté serveur

Vous pouvez valider un événement de panier en attente de paiement en générant un appel HTTP GET côté serveur :

https://YOURSSLCOLLECTDOMAIN/hit.xiti?s=XXXXX&col=2&events=[{"name":"transaction.confirmation","data":{"cart_id":"XXXXX", "transaction_id":"XXXXX", "offsite_confirmation":true}}]&rdt=off

Dans cet appel, vous devez remplacer les valeurs XXXXX par :

  • le numéro de site concerné par la transaction :
    ?s=XXXXX
  • l’identifiant du panier à valider :
    "cart_id":"XXXXX"
  • l’identifiant de la transaction :
    "transaction_id":"XXXXX"

Il est conseillé d’encoder le contenu du paramètre events, afin de s’assurer de la bonne transmission des informations.

 

Annexes

 

Méthodes de marquage

  • tag.ecommerce.transactionConfirmation.cart.set
  • tag.ecommerce.transactionConfirmation.transaction.set
  • tag.ecommerce.transactionConfirmation.shipping.set
  • tag.ecommerce.transactionConfirmation.payment.set
  • tag.ecommerce.transactionConfirmation.products.set
Dernière mise à jour : 04/08/2021