Android Mobile SDK: Notificar evento de compra realizada

O evento “Notificar evento de compra realizada” serve para descrever uma compra realizada pelo cliente. Para isso, notifica, via Mobile SDK, quando um usuário realiza uma compra por meio do uso do método sendPurchase.

Como usar

A notificação de informações da compra utiliza o método Connectif.sendPurchase(purchase: Purchase) no qual adicionaremos a propriedade purchase com todas as informações da compra.

 

Notificar a compra realizada

Este objeto representa o modelo do Carrinho de compras que inclui as seguintes propriedades: 

Nome Obrigatória Tipo Descrição
purchaseId Sim String Identificador único da compra.
cartId Sim String Identificador único do carrinho a partir do qual esta compra foi originada.
totalQuantity Sim Int Quantidade total de produtos que há na compra (incluindo os duplicados).
Por exemplo: se um carrinho tem 3 unidades de um produto e 7 unidades de outro diferente, totalQuantity será igual a 10.
totalPrice Sim BidDecimal Valor total da compra.
purchaseDate Não Date Data da compra.
paymentMethod Não String O método de pagamento
products Sim Product Basket Item Itens que contém a compra, junto com a quantidade dos mesmos e o valor.
source_name Não String O nome da fonte, para fornecer contexto ou detalhe sobre o tipo de fonte da compra.
source_type Não String

O nome da fonte onde a compra foi realizada. Os valores possíveis são: "marketplace", "digital-store", "point-of-sale", "third-party" e "other".

Organização dos valores da fonte (source_type)

A seguir, são explicados cada um dos valores possíveis da fonte da compra (source_type):

Valor Descrição Exemplo
third-party Vendas canalizadas através de distribuidores, varejistas ou redes de parceiros (não marketplaces). Venda por atacado, Distribuidores, Afiliados...
other Casos especiais ou canais que não se encaixam nas categorias anteriores. Telemarketing, Feiras e eventos, Comércio social...
marketplace Plataformas de comércio eletrônico de terceiros onde você publica seus produtos. Amazon Marketplace, eBay, Zalando...
digital-store Vendas pelo site ou app de comércio eletrônico próprio do varejista. Direto, Busca orgânica, Busca paga, Email Marketing...
pont-of-sale Vendas em lojas físicas processadas através de um sistema POS. Caixa na loja, Quiosque na loja, Lojas pop-up...

 

Este tipo de evento coleta automaticamente as seguintes informações:

  • Sistema operacional: Android ou iOS.
  • Versão do app.
  • Versão do sistema operacional.
  • Versão do Connectif SDK.

Exemplo

A notificação terá esta aparência:

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 (Opcional)

Se você quiser ter feedback de possíveis erros ao enviar eventos, poderá adicionar um EventCallbacks quando usar nosso método.  

 object : EventCallbacks {
    override fun onSuccess() {
        //Tratamento em caso de sucesso
    }
    override fun onError(message: String?) {
         //Tratamento em caso de erro
    }
}
 

 

 

 

Parabéns!
Você chegou ao final da lição.

  

Ficou com dúvidas?
Lembre-se que você tem à disposição nossos especialistas em Connectif. Para contatá-los, basta abrir um ticket para Suporte clicando no botão azul “Ajuda” do seu dashboard.


Continue aprendendo!

Para aproveitar todo o potencial da sua conta no Connectif, recomendamos continuar com os seguintes artigos: