> ## Documentation Index
> Fetch the complete documentation index at: https://developers.bonifiq.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Webhooks - Clientes

> Payloads de webhook para eventos de clientes do sistema de Fidelidade

Este documento descreve os payloads de webhook relacionados a clientes.

## Eventos de Clientes

<AccordionGroup>
  <Accordion title="Customer_Created" icon="user-plus">
    Enviado quando um novo cliente é criado no sistema.

    ```json theme={null}
    {
      "Customer": {
        "Id": "12345",
        "OriginalId": "cliente_original_123",
        "Email": "cliente@exemplo.com",
        "Name": "João Silva",
        "Phone": "+5511999998888",
        "Document": "12345678900",
        "BirthDate": "1990-05-20",
        "Level": "Ouro",
        "Active": "true"
      },
      "PointsBalance": {
        "PointsBalance": 0,
        "CashbackBalance": 0.00
      }
    }
    ```

    <ResponseField name="Customer" type="object" required>
      Objeto com informações do cliente criado. Veja abaixo.
    </ResponseField>

    <ResponseField name="PointsBalance" type="object" required>
      [Objeto Saldo de Pontos](./01-introducao#objetos-de-dados-comuns)
    </ResponseField>
  </Accordion>

  <Accordion title="Customer_Updated" icon="user-pen">
    Enviado quando um cliente existente é atualizado.

    ```json theme={null}
    {
      "Customer": {
        "Id": "12345",
        "OriginalId": "cliente_original_123",
        "Email": "cliente@exemplo.com",
        "Name": "João Silva Santos",
        "Phone": "+5511999998888",
        "Document": "12345678900",
        "BirthDate": "1990-05-20",
        "Level": "Platina",
        "Active": "true"
      },
      "PointsBalance": {
        "PointsBalance": 1500,
        "CashbackBalance": 15.00
      }
    }
    ```

    <ResponseField name="Customer" type="object" required>
      Objeto com informações atualizadas do cliente. Veja abaixo.
    </ResponseField>

    <ResponseField name="PointsBalance" type="object" required>
      [Objeto Saldo de Pontos](./01-introducao#objetos-de-dados-comuns)
    </ResponseField>
  </Accordion>
</AccordionGroup>

***

## Objeto CustomerInfo

Estrutura específica do objeto Customer para eventos de clientes:

```json theme={null}
{
  "Id": "12345",
  "OriginalId": "cliente_original_123",
  "Email": "cliente@exemplo.com",
  "Name": "João Silva",
  "Phone": "+5511999998888",
  "Document": "12345678900",
  "BirthDate": "1990-05-20",
  "Level": "Ouro",
  "Active": "true"
}
```

<ResponseField name="Id" type="string" required>
  ID interno do cliente no sistema BonifiQ
</ResponseField>

<ResponseField name="OriginalId" type="string" required>
  ID do cliente no sistema de origem (ex: plataforma e-commerce)
</ResponseField>

<ResponseField name="Email" type="string" required>
  Endereço de e-mail do cliente
</ResponseField>

<ResponseField name="Name" type="string" required>
  Nome completo do cliente
</ResponseField>

<ResponseField name="Phone" type="string">
  Número de telefone. Pode ser `null`.
</ResponseField>

<ResponseField name="Document" type="string">
  Documento de identificação (ex: CPF). Pode ser `null`.
</ResponseField>

<ResponseField name="BirthDate" type="string">
  Data de nascimento. Pode ser `null`.
</ResponseField>

<ResponseField name="Level" type="string">
  Nome do nível/tier do cliente. Pode ser `null`.
</ResponseField>

<ResponseField name="Active" type="string">
  Status de ativo do cliente ("true" ou "false"). Pode ser `null`.
</ResponseField>

***

## Tópicos Disponíveis

| Tópico             | Descrição          |
| ------------------ | ------------------ |
| `Customer_Created` | Cliente criado     |
| `Customer_Updated` | Cliente atualizado |

***

<Info>
  Documentação atualizada em Janeiro de 2026.
</Info>
