Skip to main content
Este documento descreve os payloads de webhook relacionados a clientes.

Eventos de Clientes

Enviado quando um novo cliente é criado no sistema.
object
required
Objeto com informações do cliente criado. Veja abaixo.
object
required
Enviado quando um cliente existente é atualizado.
object
required
Objeto com informações atualizadas do cliente. Veja abaixo.
object
required

Mudança de nível

O tópico Customer_TierChanged (29) registra a troca efetiva do nível de um cliente. No painel, ele aparece como Cliente: mudança de nível. Use este tópico para acompanhar níveis em sua integração. Ele é independente de Communication_CustomerTierUpgradeNotification e Communication_CustomerTierDowngradeNotification, que continuam seguindo as regras de comunicação.

Quando o evento é gerado

O evento compara o ID do nível anterior com o ID final, incluindo:
  • atribuição inicial de um nível, inclusive o base;
  • subida ou descida no recálculo automático;
  • alterações pelo Admin, API e importações;
  • retorno ao nível base;
  • remoção do vínculo com um nível, inclusive por desativação do nível;
  • alteração do nível do cliente sobrevivente em uma unificação de cadastros.
Uma troca entre níveis diferentes gera evento mesmo que tenham a mesma ordem. Alterações apenas na carência, nos comentários, no nome ou na ordem do mesmo nível não geram evento. Na unificação, a exclusão do cadastro absorvido não gera uma mudança de nível para esse cadastro. As regras de classificação e carência continuam determinando quando o nível pode mudar. A captura do evento não depende de inscrição do cliente em comunicações, de envio de e-mail, de horário de comunicação ou da janela de sete dias de GracePeriodDateUpdate.
Apenas assinaturas ativas com este tópico selecionado no momento da mudança recebem o evento. Ativar a assinatura ou adicionar o tópico não envia uma carga inicial nem recupera mudanças anteriores. Se a assinatura estiver inativa no momento da entrega, a chamada não é realizada.

Exemplo de troca de nível

Exemplo completo com o envelope padrão, em uma mudança de Prata para Ouro:

Campos do payload

Os dados representam o momento da captura. Uma renomeação de nível ou outra alteração posterior do cliente não modifica o payload dessa transição nas retentativas. Quando presentes, PreviousTier e CurrentTier têm a mesma estrutura: O objeto Customer deste tópico tem apenas os quatro campos descritos acima. O payload não inclui saldo, benefícios, metas ou RFM.

Entrada no base e remoção

Na atribuição inicial do nível base, PreviousTier é null. Exemplo de payload, sem o envelope:
Na remoção sem atribuição de outro nível, CurrentTier é null. Isso também ocorre quando a desativação de um nível remove o vínculo do cliente. Exemplo de payload, sem o envelope:
Um retorno ao base tem CurrentTier preenchido com IsBase: true. Se um nível for atribuído após uma remoção, essa atribuição gera outra transição.

Duplicidade e ordem de entrega

As entregas são assíncronas, podem se repetir e podem chegar fora de ordem. Duas mudanças no mesmo dia geram eventos distintos.
  1. Use o Uuid do envelope para deduplicar as tentativas da mesma entrega. Ele permanece igual nas retentativas; assinaturas diferentes têm seus próprios Uuid.
  2. Para manter o estado atual, armazene a maior Sequence processada por empresa e cliente. Uma sequência menor não deve sobrescrever um nível recebido com sequência maior.
  3. Se sua integração mantém histórico, preserve também as transições mais antigas que chegarem depois. As lacunas na sequência não indicam, por si só, eventos perdidos.
Este tópico usa a política de entrega existente, com os headers, método, URL e corpo configurados na assinatura. Não há garantia de entrega exatamente uma vez ou de ordem estrita. Mudanças feitas diretamente por SQL externo não são capturadas.
Prefira o envelope padrão para ter acesso ao Uuid. Um corpo personalizado recebe os campos deste payload, como Customer.Id e Sequence, mas não recebe automaticamente os campos do envelope. Consulte a configuração do corpo personalizado.

Objeto CustomerInfo

Estrutura do objeto Customer nos tópicos Customer_Created e Customer_Updated. Para Customer_TierChanged, use os campos da mudança de nível.
string
required
ID interno do cliente no sistema BonifiQ
string
required
ID do cliente no sistema de origem (ex: plataforma e-commerce)
string
required
Endereço de e-mail do cliente
string
required
Nome completo do cliente
string
Número de telefone. Pode ser null.
string
Documento de identificação (ex: CPF). Pode ser null.
string
Data de nascimento. Pode ser null.
string
Nome do nível/tier do cliente. Pode ser null.
string
Status de ativo do cliente (“true” ou “false”). Pode ser null.

Tópicos Disponíveis


Documentação atualizada em Setembro de 2026.