Android Mobile SDK : Notifier un événement d'achat effectué

L’événement « Notifier un événement d'achat effectué » sert à décrire un achat réalisé par le client. Pour cela, il notifie, via le Mobile SDK, lorsqu’un utilisateur effectue un achat en utilisant la méthode sendPurchase.

Comment l’utiliser

La notification des informations de l’achat utilise la méthode Connectif.sendPurchase(purchase: Purchase) dans laquelle nous ajouterons la propriété purchase avec toutes les informations de l’achat.

 

Notifier l’achat effectué

Cet objet représente le modèle du Panier d’achat qui inclut les propriétés suivantes :

Nom Obligatoire Type Description
purchaseId Oui String Identifiant unique de l’achat.
cartId Oui String Identifiant unique du panier à partir duquel cet achat a été effectué.
totalQuantity Oui Int Quantité totale de produits dans l’achat (y compris les doublons).
Par exemple : si un panier contient 3 unités d’un produit et 7 unités d’un autre produit différent, totalQuantity sera égal à 10.
totalPrice Oui BidDecimal Montant total de l’achat.
purchaseDate Non Date Date de l’achat.
paymentMethod Non String Le mode de paiement
products Oui Article du panier produit Articles contenus dans l’achat, avec leur quantité et leur montant.
source_name Non String Le nom de la source, pour apporter un contexte ou un détail sur le type de source de l’achat.
source_type Non String

Le nom de la source où l’achat a été réalisé. Les valeurs possibles sont : "marketplace", "digital-store", "point-of-sale", "third-party" et "other".

Organisation des valeurs de la source (source_type)

Voici l’explication de chacune des valeurs possibles pour la source de l’achat (source_type) :

Valeur Description Exemple
third-party Ventes canalisées via des distributeurs, détaillants ou réseaux partenaires (pas des marketplaces). Vente en gros, Distributeurs, Affiliés...
other Cas particuliers ou canaux qui ne rentrent pas dans les catégories précédentes. Télémarketing, Salons et événements, Commerce social...
marketplace Plateformes de commerce électronique tierces où vous publiez vos produits. Amazon Marketplace, eBay, Zalando...
digital-store Ventes depuis le site web ou l’application e-commerce propre au détaillant. Direct, Recherche organique, Recherche payante, Email Marketing...
pont-of-sale Ventes en magasin physique traitées via un système POS. Caisse en magasin, Kiosque en magasin, Boutiques éphémères...

 

Ce type d’événement collecte automatiquement les informations suivantes :

  • Système d’exploitation : Android ou iOS.
  • Version de l’application.
  • Version du système d’exploitation.
  • Version du Connectif SDK.

Exemple

La notification aura cet aspect :

val purchase =
    Purchase(
        purchaseId = "purchase-e3418b5a-8709-4593-a7c8-d8a7f12df737",
        products = listOf(
            ProductBasketItem(
                productDetailUrl = "https://example.com/product/12345",
                productId = "59a31949a1a562d4979fbca2",
                name = "Example Product",
                unitPrice = BigDecimal("51.88"),
                description = "This is an example product",
                imageUrl = "https://example.com/product/images/12345.jpg",
                categories = listOf("Electronics", "Gadgets"),
                tags = listOf("Trending", "New Arrival"),
                brand = "ExampleBrand",
                reviewCount = 150,
                rating = BigDecimal("4.5"),
                ratingCount = 124,
                thumbnailUrl = "https://example.com/product/thumbnails/12345.jpg",
                unitPriceOriginal = BigDecimal("120.00"),
                unitPriceWithoutVAT = BigDecimal("80.00"),
                discountedAmount = BigDecimal("20.00"),
                discountedPercentage = BigDecimal("16.67"),
                publishedAt = Date(),
                customField1 = "Special Edition",
                customField2 = "Limited Stock",
                customField3 = "Online Only",
                price = BigDecimal("51.88"),
                quantity = 1
                )
    ),
    totalQuantity = 1,
    totalPrice = BigDecimal("51.88"),
    cartId = "cart-0098caf9-42f4-44e9-afdd-45eafe892293",
    paymentMethod = "Credit Card",
    purchaseDate = Date(),
    sourceName = "amazon",
    sourceType = "marketplace"
)
Connectif.sendPurchase(purchase)

 

Callbacks (Optionnel)

Si vous souhaitez recevoir un retour sur d’éventuelles erreurs lors de l’envoi des événements, vous pouvez ajouter un EventCallbacks lorsque vous utilisez notre méthode.

 object : EventCallbacks {
    override fun onSuccess() {
        //Gestion en cas de succès
    }
    override fun onError(message: String?) {
         //Gestion en cas d’erreur
    }
}

 

 

Félicitations !
Vous êtes arrivé à la fin de la leçon.

Vous avez encore des questions ?
N’oubliez pas que nos spécialistes Connectif sont à votre disposition. Pour les contacter, il vous suffit d’ouvrir un ticket auprès du Support en cliquant sur le bouton bleu « Aide » de votre tableau de bord.


Continuez à apprendre !

Pour exploiter tout le potentiel de votre compte Connectif, nous vous recommandons de poursuivre avec les articles suivants :