Panier

 

Avant-propos

Le SDK AT Internet vous permet de marquer le panier de votre application ainsi que son contenu.

Vous pouvez, comme pour un panier réel, ajouter ou retirer des produits du panier et envoyer ces informations dans votre hit d’écran.

 

Pour bien débuter

Une fois votre marqueur initialisé, vous pouvez ajouter les informations de panier à votre hit d’écran.

Dans le cas où vous souhaitez utiliser des variables, veillez à importer les classes ATInternet, Tracker, Screen et Cart dans votre Activity.

 

Marquage

Le tracker met à disposition un objet Cart. Cet objet expose les méthodes suivantes :

  • set : Permet de définir un identifiant de panier pour pouvoir ensuite y ajouter des produits

    Pour que les informations de panier soient bien prises en compte, l’identifiant doit être supérieur à zéro

  • unset : Permet de supprimer les produits du panier et de réinitialiser l’identifiant de ce dernier

L’ objet Cart expose également un objet Products permettant d’ajouter ou retirer des produits au panier.

Cet objet expose les méthodes suivantes :

  • add : Ajoute un produit (dont l’id est passé en paramètre) au panier et retourne un objet Product
  • remove : Supprime un produit(dont l’id est passé en paramètre) du panier
  • removeAll Supprime tous les produits contenus dans le panier

Pour envoyer les informations du panier sans envoyer d’informations de commande, il vous faut lié votre panier à votre écran en utilisant la méthode setCart de l’objet ScreenDans le cas contraire, les informations de panier ne seront pas ajoutées à votre hit d’écran.

 

Exemples de marquage

  1. Marquage d’un écran résumant le contenu d’un panier avec 2 articles

    L’identifiant du panier doit être identique à celle présente dans le marqueur de contenu de la commande ; dans le cas contraire le panier sera considéré comme abandonné. Nous attirons également votre attention sur le fait que l’identifiant utilisé pour le panier doit être unique et jamais réutilisé au risque d’obtenir des analyses incohérentes

    package com.atinternet.atinternetdemo;
    
    import android.app.Activity;
    import android.os.Bundle;
    
    import com.atinternet.tracker.ATInternet;
    import com.atinternet.tracker.Tracker;
    import com.atinternet.tracker.Cart;
    
    
    public class MainActivity extends Activity {
    
        private Tracker tracker;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            tracker = ATInternet.getInstance().getDefaultTracker();
        }
    
        @Override
        protected void onResume() {
            super.onResume();
            // Enable cart and set an identifier
            Cart cart = tracker.Cart().set("3");
    
            cart.Products().add("ID[p1]")
                    .setCategory1("10[Shoes]")
                    .setQuantity(1)
                    .setUnitPriceTaxFree(70)
                    .setUnitPriceTaxIncluded(85)
                    .setPromotionalCode("ATCode")
                    .setDiscountTaxFree(0)
                    .setDiscountTaxIncluded(0);
    
            cart.Products().add("ID[p2]")
                    .setCategory1("20[Socks]")
                    .setQuantity(2)
                    .setUnitPriceTaxFree(70)
                    .setUnitPriceTaxIncluded(85);
    
            Screen s = tracker.Screens().add("Order confirmation");
            s.setCart(cart);
            s.sendView();
        }
    }
  2. Marquage d’une commande avec les informations de panier

    Pour plus d’informations quant au marquage de vos commandes, rendez-vous sur cette page : Commandes (SalesTracker)

    package com.atinternet.atinternetdemo;
    
    import android.app.Activity;
    import android.os.Bundle;
    
    import com.atinternet.tracker.ATInternet;
    import com.atinternet.tracker.Tracker;
    
    
    public class MainActivity extends Activity {
    
        private Tracker tracker;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            tracker = ATInternet.getInstance().getDefaultTracker();
        }
    
        @Override
        protected void onResume() {
            super.onResume();
            Cart cart = tracker.Cart().set("3");
     
            cart.Products().add("ID[p1]")
                    .setCategory1("10[Shoes]")
                    .setQuantity(1)
                    .setUnitPriceTaxFree(70)
                    .setUnitPriceTaxIncluded(85)
                    .setPromotionalCode("ATCode")
                    .setDiscountTaxFree(0)
                    .setDiscountTaxIncluded(0);
     
            cart.Products().add("ID[p2]")
                    .setCategory1("20[Socks]")
                    .setQuantity(2)
                    .setUnitPriceTaxFree(70)
                    .setUnitPriceTaxIncluded(85);
     
            Screen s = tracker.Screens().add("Order confirmation");
            s.Order("cmd1", 94.40)
                    .setStatus(1)
                    .setNewCustomer(true)
                    .Amount().set(80, 94.40, 14)
                    .Delivery().set(4, 7.5, "1[TNT]")
                    .Discount().set(5, 7.5, "SUMMER");
     
            s.setCart(cart);
            s.sendView();
     
            tracker.Cart().unset();
        }
    }
  3. Réinitialisation du panier après avoir validé une commande
    private void finishOrder() {
            // Reset cart ID and remove all products
            tracker.Cart().unset();
    }
  4. Remplacement d’un panier existant
    private void reinitCart() {
            // Set a new identifier for cart
            tracker.Cart().set("2");
    }
  5. Ajout de produits au panier
    private void addProduct(){
            tracker.Cart().Products().add("ID[p1]")
                    .setCategory1("10[Shoes]")
                    .setQuantity(1)
                    .setUnitPriceTaxFree(70)
                    .setUnitPriceTaxIncluded(85)
                    .setPromotionalCode("ATCode")
                    .setDiscountTaxFree(0)
                    .setDiscountTaxIncluded(0);
    }
  6. Suppression d’un produit du panier
    private void removeProduct(){
            tracker.Cart().Products().remove("ID[p1]");
    }
  7. Suppression de tous les produits du panier
    private void removeAllProducts(){
            tracker.Cart().Products().clear();
    }
 

Classe Cart

 

Propriétés

NomTypeValeur par défautDescription
cartIdString«  »Obtient ou définit l’identifiant du panier
productsProductsnullObtient ou définit les produits du panier
 

Méthodes

NomType de retourDescription
setCartActive le panier et définit un identifiant
unsetvoidRéinitialise le panier et supprime les produits
 

Classe Product

 

Propriétés

NomTypeValeur par défautDescription
productIdStringnullObtient ou définit l’identifiant du produit
category1StringnullObtient ou définit la 1ère catégorie du produit
category2StringnullObtient ou définit la 2nde catégorie du produit
category3StringnullObtient ou définit la 3ème catégorie du produit
category4StringnullObtient ou définit la 4ème catégorie du produit
category5StringnullObtient ou définit la 5ème catégorie du produit
category6StringnullObtient ou définit la 6ème catégorie du produit
quantityInt-1Obtient ou définit la quantité de produit
unitPriceTaxIncludedDouble-1Obtient ou définit le prix unitaire TTC
unitPriceTaxFreeDouble-1Obtient ou définit le prix unitaire HT
discountTaxIncludedDouble-1Obtient ou définit le montant de remise TTC
discountTaxFreeDouble-1Obtient ou définit le montant de remise HT
promotionalCodeStringnullObtient ou définit le code promotionnel pour le produit
Dernière mise à jour : 04/03/2020