Android Mobile SDK: Notificare evento di acquisto effettuato

L’evento “Notificare evento di acquisto effettuato” serve a descrivere un acquisto effettuato dal cliente. Per questo notifica, tramite Mobile SDK, quando un utente effettua un acquisto utilizzando il metodo sendPurchase.

Come si usa

La notifica delle informazioni sull’acquisto utilizza il metodo Connectif.sendPurchase(purchase: Purchase) nel quale aggiungeremo la proprietà purchase con tutte le informazioni sull’acquisto.

 

Notificare l’acquisto effettuato

Questo oggetto rappresenta il modello del carrello che include le seguenti proprietà:

Nome Obbligatorio Tipo Descrizione
purchaseId Sì String Identificatore univoco dell’acquisto.
cartId Sì String Identificatore univoco del carrello da cui è originato questo acquisto.
totalQuantity Sì Int Quantità totale di prodotti presenti nell’acquisto (inclusi i duplicati).
Per esempio: se un carrello contiene 3 unità di un prodotto e 7 unità di un altro prodotto diverso, totalQuantity sarà pari a 10.
totalPrice Sì BidDecimal Importo totale dell’acquisto.
purchaseDate No Date Data dell’acquisto.
paymentMethod No String Metodo di pagamento
products Sì Product Basket Item Articoli contenuti nell’acquisto, con le rispettive quantità e importi.
source_name No String Il nome della fonte, per fornire contesto o dettaglio sul tipo di fonte dell’acquisto.
source_type No String

Il nome della fonte dove è stato effettuato l’acquisto. I valori possibili sono: "marketplace", "digital-store", "point-of-sale", "third-party" e "other".

Organizzazione dei valori della fonte (source_type)

Di seguito vengono spiegati ciascuno dei valori possibili della fonte dell’acquisto (source_type):

Valore Descrizione Esempio
third-party Vendite canalizzate attraverso distributori, rivenditori o reti di partner (non marketplace). Vendita all’ingrosso, Distributori, Affiliati...
other Casi speciali o canali che non rientrano nelle categorie precedenti. Telemarketing, Fiere ed eventi, Commercio sociale...
marketplace Piattaforme di e-commerce di terze parti dove pubblichi i tuoi prodotti. Amazon Marketplace, eBay, Zalando...
digital-store Vendite dal sito web o app di e-commerce proprietario del rivenditore. Diretto, Ricerca organica, Ricerca a pagamento, Email Marketing...
pont-of-sale Vendite in negozi fisici elaborate tramite un sistema POS. Cassa in negozio, Chiosco in negozio, Negozi pop-up...

 

Questo tipo di evento raccoglie automaticamente le seguenti informazioni:

  • Sistema operativo: Android o iOS.
  • Versione dell’app.
  • Versione del sistema operativo.
  • Versione del Connectif SDK.

Esempio

La notifica avrà questo aspetto:

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)

 

Callback (Opzionale)

Se vuoi ricevere un feedback su eventuali errori durante l’invio degli eventi, puoi aggiungere un EventCallbacks quando usi il nostro metodo.

 object : EventCallbacks {
    override fun onSuccess() {
        //Gestione in caso di successo
    }
    override fun onError(message: String?) {
         //Gestione in caso di errore
    }
}

 

 

Complimenti!
Sei arrivato alla fine della lezione.

Hai ancora dubbi?
Ricorda che hai a disposizione i nostri specialisti Connectif. Per contattarli, ti basta aprire un ticket al Supporto cliccando sul pulsante blu “Aiuto” nella tua dashboard.


Continua ad imparare!

Per sfruttare al massimo il potenziale del tuo account Connectif, ti consigliamo di continuare con i seguenti articoli: