Passar para o conteúdo principal

Configurar e enviar Webhooks no CRM

Veja como criar e configurar Webhooks

Escrito por Viviane Flores

Opção de menu

Permissões de perfil

Configurações - Integrações - EVO API - Webhook

  • API Pro

CRM 2.0 - Automação

  • API Pro

CRM 2.0 - Segmentação - Enviar mensagem

  • API Pro

Clientes aba Relacionamento - Webhook

  • API Pro

Clientes com API Pro podem cadastrar Webhooks no EVO e reutilizá-los em automações, segmentações e no relacionamento do cliente.


Introdução

O Webhook permite enviar dados do EVO para ferramentas externas por meio de uma requisição HTTP POST.
A configuração do Webhook é feita em um único lugar. Depois disso, ele pode ser selecionado em diferentes módulos do sistema.
Com essa funcionalidade, é possível acionar bots de IA, integrações com WhatsApp oficial, CRMs externos e outras ferramentas conectadas ao fluxo do cliente.

Atenção

  • A funcionalidade de Webhook está disponível apenas para clientes com API Pro ativa.

  • Quando a unidade não possui API Pro, a aba Webhook fica visível, mas bloqueada para uso.

  • Ao interagir com a funcionalidade bloqueada, o sistema informa que esta funcionalidade requer API Pro e exibe a opção Ver planos na integração.

  • O envio do webhook consome do limite de request da API Pro.


Cadastrar Webhook

  1. Acesse Configurações - Integrações

  2. Clique em EVO API.

  3. Na aba Webook clique em Novo Webhook.

  4. Informe o Nome.

  5. Informe a URL de callback.

  6. Configure os Cabeçalhos, se necessário.

  7. Revise o Corpo da requisição.

  8. Clique em Salvar.

Após salvar, o sistema exibe a mensagem Salvo com sucesso e atualiza a lista de Webhooks.

Regras para cadastrar Webhook

  • O campo Nome é obrigatório.

  • O campo URL de callback é obrigatório e deve usar uma URL válida com HTTPS.

  • A URL não é informada nos módulos de uso. Em Automação, Segmentação e Relacionamento, o usuário seleciona apenas o nome do Webhook cadastrado.

Gerenciar Webhooks cadastrados

Na aba Webhook, o sistema exibe uma tabela com os Webhooks cadastrados. A tabela contém:

  • Nome

  • URL de callback

  • Criado por

  • Ações

É possível editar ou excluir um Webhook pela coluna Ações.


Editar Webhook

  1. Acesse Configurações.

  2. Clique em Integrações.

  3. Acesse EVO API.

  4. Clique na aba Webhook.

  5. Localize o Webhook desejado.

  6. Clique no ícone de Editar.

  7. Altere as informações necessárias.

  8. Clique em Salvar.


Excluir Webhook

Um Webhook só pode ser excluído quando não estiver em uso no sistema. Quando a exclusão estiver disponível, o sistema exibe uma confirmação antes de remover o Webhook.
Após confirmar, o sistema exibe a mensagem Excluído com sucesso.

Nota

Quando o Webhook está em uso, o botão de exclusão fica desabilitado.


Utilizar Webhook na Automação

  1. Acesse CRM 2.0 e em Automação.

  2. Crie ou edite uma automação.

  3. Adicione a ação Webhook.

  4. Selecione o Webhook pelo nome.

  5. Salve a automação.

O Webhook será enviado conforme o gatilho configurado na automação.

Utilizar Webhook na Segmentação

  1. Acesse CRM 2.0 em Segmentação.

  2. Clique no registro desejado

  3. E na aba Relacionamento em Webhook.

  4. E em Clique aqui para salvar um webhook.

  5. Selecione o webohook

  6. Clique em Salvar.

A Segmentação permite disparar Webhooks em massa.


Utilizar Webhook no Relacionamento

  1. Acesse o perfil do cliente

  2. Clique na aba Relacionamento.

  3. Acesse a aba Webhook em Clique aqui para salvar um webhook.

  4. Selecione o Webhook pelo nome.

  5. Preencha as informações necessárias e clique em enviar.

Após o envio, o sistema registra o histórico no relacionamento.


Histórico de envio

Depois que um Webhook é enviado pelo relacionamento, o sistema registra as informações do disparo. O histórico pode exibir:

  • Nome do Webhook

  • URL

  • Corpo da requisição

  • Data e hora

  • Usuário responsável

O registro pode ser expandido para visualizar o JSON enviado.


Corpo da requisição

  • O Webhook envia uma requisição HTTP POST para a URL configurada.

  • O corpo da requisição usa JSON e pode conter dados do cliente, da oportunidade, do evento e do contexto do envio.

  • O campo eventType identifica a origem do disparo e deve ser usado pelas integrações externas para reconhecer o evento recebido.

Importante

O JSON apresentado na tela é apenas um modelo de referência da estrutura do payload.

Os dados enviados no disparo do Webhook variam conforme o evento que originou a execução.

Exemplo:
caso o Webhook seja utilizado em uma automação de matrícula, o payload enviado conterá dados relacionados à matrícula.
Em automações de vencimento de contrato, os dados enviados serão referentes ao vencimento do contrato.

O eventType e os demais campos do payload são preenchidos dinamicamente conforme o contexto do disparo.


Estrutura do corpo da requisição (JSON)

Os Webhooks do CRM 2.0 enviam um payload estruturado contendo informações do evento disparado, contexto da regra, dados da pessoa relacionada e links relevantes para a automação externa.

Exemplo:

{
"eventType": "crm.automation.contract_due_date",
"eventLabel": "Vencimento de contrato",
"eventDate": "2026-03-17T14:30:00Z",
"eventContext": {
"moment": "after",
"daysOffset": 10
},
"organization": {
"idW12": 12345,
"idBranch": 10,
"branchName": "Body Edge - Barra Funda"
},
"person": {
"idMember": 456789,
"idProspect": null,
"firstName": "João",
"lastName": "Silva",
"fullName": "João Silva",
"nickName": "João",
"gender": "male",
"status": "active",
"phone": "+5511999999999",
"email": "[email protected]"
},
"membership": {
"nameMembership": "Plano Gold Mensal"
},

"links": {
"checkout": "https://pagamento.evo.com/checkout/123",
"parq": "https://evo.com/parq/456",
"contractSigning": "https://evo.com/contract/sign/789", "creditCardRegistration": "https://evo.com/card/register/123" }, "communication": {
"subject": "Seu contrato venceu",
"message": "Olá João, seu contrato venceu há 10 dias. Regularize sua situação."
}
}

Explicação dos campos

Nome do campo

Descrição

Exemplo

eventType

Identifica o tipo de evento disparado pelo CRM. O formato padrão é crm.<origem>.<evento>. Deve ser utilizado pela ferramenta externa para identificar qual fluxo executar.

crm.automation.contract_due_date

eventLabel

Nome descritivo do evento enviado. Utilizado para facilitar leitura humana, logs e debug.

"eventLabel": "Vencimento de contrato"

eventDate

Data e hora do disparo do evento em formato UTC ISO 8601.

"eventDate": "2026-03-17T14:30:00Z"

eventContext

Objeto que informa o contexto da regra que originou o disparo.

"eventContext": { "moment": "after", "daysOffset": 10 }

moment

Indica quando o evento foi disparado em relação ao evento principal.

"moment": "before"

before + daysOffset: 3 → 3 dias antes

daysOffset

Quantidade de dias de distância do evento principal.

"daysOffset": 10

organization

Informações da organização/unidade responsável pelo disparo.

"organization": {}

idW12

ID da conta/rede no EVO.

"idW12": 12345

idBranch

ID da unidade/filial relacionada ao evento.

"idBranch": 10

branchName

Nome descritivo da unidade/filial.

"branchName": "Body Edge - Barra Funda"

person

Informações da pessoa relacionada ao evento.

"person": {}

idMember

ID do cliente no EVO. Quando preenchido, indica que o evento pertence a um cliente.

"idMember": 456789

idProspect

ID da oportunidade/prospect. Quando preenchido, indica que o evento pertence a uma oportunidade.

"idProspect": 987654

firstName

Primeiro nome da pessoa.

"firstName": "João"

lastName

Sobrenome da pessoa.

"lastName": "Silva"

fullName

Nome completo da pessoa.

"fullName": "João Silva"

nickName

Apelido da pessoa.

"nickName": "João"

gender

Gênero da pessoa.

"gender": "male"

status

Status atual da pessoa no EVO.

"status": "active"

phone

Telefone/celular da pessoa.

"phone": "+5511999999999"

email

E-mail da pessoa.

membership

Informações do plano/contrato relacionado.

"membership": {}

nameMembership

Nome do plano/contrato.

"nameMembership": "Plano Gold Mensal"

links

Links relevantes relacionados ao evento. Os links enviados podem variar conforme o tipo de evento.

"links": {}

checkout

Link de checkout/cobrança.

parq

Link relacionado ao PAR-Q.

contractSigning

Link para assinatura de contrato/documento.

creditCardRegistration

Link para cadastro de cartão.

"creditCardRegistration": "https://evo.com/card/register/123"

communication

Informações da comunicação/origem do disparo.

"communication": {}

subject

Assunto/título da comunicação.

"subject": "Seu contrato venceu"

message

Mensagem/texto associado ao evento.

"message": "Olá João, seu contrato venceu há 10 dias. Regularize sua situação."

Valores possíveis de moment

Valor

Descrição

before

Disparado antes do evento principal

on

Disparado no momento do evento principal

after

Disparado após o evento principal

manual

Disparo manual realizado por usuário

bulk

Disparo realizado em massa via Segmentação

Valores possíveis de eventType

O campo eventType identifica tecnicamente a origem e o tipo de evento que disparou o Webhook.

Ele deve ser utilizado pelas ferramentas externas como a principal chave de decisão para definir qual fluxo será executado.

Campo

Descrição

Exemplo

crm

Representa o domínio da funcionalidade

crm.automation.contract_due_date

<origem>

Representa a origem funcional do disparo

automation

<evento>

Representa o evento ou contexto técnico do disparo

contract_due_date

Regras importantes

  • O eventType é um valor técnico e estável

  • Não varia conforme idioma da base

  • Não depende do texto exibido na interface

  • Não deve ser alterado por mudanças de nomenclatura visual

  • Deve ser tratado como contrato de integração

eventTypes da Automação

Quando o Webhook for disparado a partir de uma regra da Automação, o eventType deve representar a regra que originou o disparo.

eventType

Descrição

crm.automation.member_appointment_scheduling

Agendamento de cliente

crm.automation.account_debit_scheduling

Agendamento de débito em conta

crm.automation.member_birthday

Aniversário de cliente

crm.automation.prospect_birthday

Aniversário de oportunidade/prospect

crm.automation.member_trial_class_completed

Aula experimental concluída pelo cliente

crm.automation.completed_classes

Aulas concluídas

crm.automation.prospect_registration

Cadastro de oportunidade/prospect

crm.automation.prospect_campaign_landing_signup

Cadastro de prospect em campanha/landing page

crm.automation.contract_cancellation

Cancelamento de contrato

crm.automation.online_sale_boleto_non_payment

Não pagamento de boleto em venda online

crm.automation.account_debit_charge_declined

Cobrança de débito em conta recusada

crm.automation.recurring_debit_charge_declined

Cobrança recorrente recusada

crm.automation.contract_age_limit_non_renewal

Não renovação por limite de idade

crm.automation.scheduled_cancellation_date

Data de cancelamento agendado

crm.automation.enrollment

Matrícula

crm.automation.level_change

Alteração de nível

crm.automation.next_level_completion

Conclusão do próximo nível

crm.automation.physical_assessment_completed

Avaliação física concluída

crm.automation.reenrollment

Rematrícula

crm.automation.contract_renewal

Renovação de contrato

crm.automation.no_attendance

Ausência/falta de presença

crm.automation.physical_assessment_expiry

Vencimento de avaliação física

crm.automation.nutrition_assessment_expiry

Vencimento de avaliação nutricional

crm.automation.active_member_card_expiry_monthly

Vencimento mensal de cartão de cliente ativo

crm.automation.unlimited_personal_credit_expiry

Vencimento de crédito de personal ilimitado

crm.automation.boleto_expiry

Vencimento de boleto

crm.automation.contract_due_date

Vencimento de contrato

crm.automation.dermatological_exam_expiry

Vencimento de exame dermatológico

crm.automation.medical_exam_expiry

Vencimento de exame médico

crm.automation.parq_expiry

Vencimento de PAR-Q

crm.automation.overdue_balance_expiry

Vencimento de saldo devedor

crm.automation.training_expiry

Vencimento de treino

crm.automation.prospect_visit

Visita de oportunidade/prospect

crm.automation.prospect_appointment_scheduling

Agendamento de oportunidade/prospect

crm.automation.prospect_trial_class_completed

Aula experimental concluída por prospect

crm.automation.active_days

Dias ativo

crm.automation.automatic_cancellation_delinquency

Cancelamento automático por inadimplência

eventTypes da Segmentação

Quando o Webhook for disparado a partir da Segmentação, o eventType indica se o envio foi realizado em lote ou individualmente.

eventType

Descrição

crm.segmentation.batch

Envio em lote realizado pela Segmentação

crm.segmentation.individual

Envio individual realizado pela Segmentação

Regras

  • Usar crm.segmentation.batch quando o envio for realizado para múltiplos registros selecionados.

  • Usar crm.segmentation.individual quando o envio for realizado para apenas um registro.

  • O contexto do envio deve ser indicado em eventContext.

Exemplo:

"eventType": "crm.segmentation.batch",
"eventContext": {
"moment": "bulk",
"daysOffset": 0
}

eventTypes de links transacionais

Quando o Webhook for disparado a partir dos fluxos transacionais de envio de links, o eventType deve indicar qual tipo de link foi gerado pelo EVO.

Esses eventos são usados quando a configuração Habilitar para envio via WhatsApp estiver ativa e o envio de links por WhatsApp passar a ser realizado via Webhook.

Valores suportados

eventType

Descrição

crm.transactional.card_registration_link

Link para cadastro de cartão

crm.transactional.debt_charge_link

Link de cobrança gerado a partir de saldo devedor

crm.transactional.sale_charge_link

Link de cobrança gerado no fluxo de venda/recebimento

crm.transactional.document_signature_link

Link para assinatura de documento

Regras

  • Usar crm.transactional.card_registration_link quando o link gerado for de cadastro de cartão

  • Usar crm.transactional.debt_charge_link quando o link gerado for de cobrança em Clientes - Financeiro - Saldo devedor

  • Usar crm.transactional.sale_charge_link quando o link gerado for de cobrança no fluxo de venda/recebimento

  • Usar crm.transactional.document_signature_link quando o link gerado for de assinatura de documento

  • O contexto do envio deve ser indicado em eventContext

Exemplo:

"eventType": "crm.transactional.debt_charge_link",
"eventContext": {
"moment": "manual",
"daysOffset": 0
}

eventTypes do Relacionamento

Quando o Webhook for disparado a partir da aba Relacionamento do perfil, o eventType indica se o envio foi realizado no perfil de um cliente ou de uma oportunidade/prospect

Valores suportados

eventType

Descrição

crm.relationship.member

Envio manual realizado no perfil do cliente

crm.relationship.prospect

Envio manual realizado no perfil da oportunidade/prospect

Regras

  • Usar crm.relationship.member quando o envio for realizado no perfil de cliente

  • Usar crm.relationship.prospect quando o envio for realizado no perfil de oportunidade/prospect

  • O contexto do envio deve ser indicado em eventContext

Exemplo:

"eventType": "crm.relationship.member",
"eventContext": {
"moment": "manual",
"daysOffset": 0
}

Relação entre eventType e eventContext

  • O eventType informa qual evento disparou o Webhook.

  • O eventContext informa o contexto em que o evento foi disparado.

Neste exemplo, o evento é uma regra de vencimento de contrato, disparada 10 dias após o vencimento:

"eventType": "crm.automation.contract_due_date",
"eventContext": {
"moment": "after",
"daysOffset": 10
}

Valores possíveis de moment

Valor

Descrição

before

Quando o disparo ocorrer antes do evento principal

on

Quando o disparo ocorrer no dia/momento do evento principal

after

Quando o disparo ocorrer após o evento principal

manual

Quando o disparo for manual, como no Relacionamento

bulk

Quando o disparo for em massa, como na Segmentação

Regras de daysOffset

moment

daysOffset

before

Quantidade de dias antes do evento

on

0

after

Quantidade de dias depois do evento

manual

0

bulk

0


Artigos relacionados

Respondeu à sua pergunta?