Evento de checagem de pedido

checkout

Os envios de eventos de Checkout são super importantes porque eles representam uma ótima oportunidade para desanonimizarmos os eventos de interação dos clientes que estavam navegando deslogados até então. Ou seja, a partir daqui o usuário precisa informar seus dados para finalizar uma compra, e com isso nós poderemos melhorar a qualidade das recomendações em navegações futuras.

Utilizando Builder

Podemos usar o padrão Builder para popular o evento com os parâmetros do evento de checkout.

import { EventClient } from '@linximpulse/impulse-sdk-js'

//Declare os parâmetros obrigatórios para o construtor
const event = new EventClient({...})

event.checkout()
    .user({
        id: "9874",
        name: "Fulano da Silva",
        email: "email@user.com",
        allowMailMarketing: true, //em caso do usuário aceitar receber marketing via e-mail
    })
    .deviceId('fb4e49b6-35e3-42a1-a397-960f0b37ab6a')
    .url('https://www.minhaloja.com.br/order/checkout')
    .send()

Não utilizando Builder

Caso não queira utilizar o Builder, podemos popular o evento diretamente no método send(), ele também aceita diretamente os parâmetros do evento de checkout.

import { EventClient } from '@linximpulse/impulse-sdk-js'

//Declare os parâmetros obrigatórios para o construtor
const event = new EventClient({
    type: 'backend',
    apiKey: 'your-apiKey',
    secretKey: 'your-secretKey',
    deviceId: 'fb4e49b6-35e3-42a1-a397-960f0b37ab6a'
})

event.checkout()
    .send({
        user: {
            id: "9874",
            name: "Fulano da Silva",
            email: "email@user.com",
            allowMailMarketing: true, //em caso do usuário aceitar receber marketing via e-mail
        },
        source: 'mobile',
        salesChannel: ["xablau-12"], //não obrigatório
        url: "https://www.minhaloja.com.br/order/checkout"
    })