https://github.com/eduzz/webhook
Consulte a nova documentação em: https://developers.eduzz.com/
https://github.com/eduzz/webhook
Last synced: 4 months ago
JSON representation
Consulte a nova documentação em: https://developers.eduzz.com/
- Host: GitHub
- URL: https://github.com/eduzz/webhook
- Owner: eduzz
- License: gpl-2.0
- Created: 2019-03-28T22:32:47.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2024-06-03T11:43:37.000Z (about 2 years ago)
- Last Synced: 2025-05-13T14:35:03.719Z (about 1 year ago)
- Homepage: https://developers.eduzz.com/
- Size: 264 KB
- Stars: 13
- Watchers: 42
- Forks: 7
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Webhook Eduzz (Obsoleto)
> **Atenção!**
> Essa versão do webhook deixará de funcionar em breve!.
> A Eduzz já lançou uma nova versão do sistema de webhooks. Mais moderna, confiável e eficiente. **[Acesse a documentação aqui](https://developers.eduzz.com/)**
## Configurando uma nova integração
Para configurar uma nova integração, basta conferir a **[tela de configuração de webhook](https://orbita.eduzz.com/producer/webhook)** no Órbita, lá, é possível cadastrar uma integração, informando um nome, o tipo de evento que você quer receber, a url desejada, e quais os produtos devem serem enviados.

Os seguintes campos estão disponíveis para identificação da sua integração:
### Nome
Identifica a sua integração na listagem de webhooks no Órbita
### Tipo
Os seguintes eventos de webhook estão disponíveis:
**Fatura**: É enviado toda vez que um contrato ou uma fatura for atualizado, exemplo, toda vez que um contrato é criado, atualizado, etc, os eventos enviados estão disponíveis na **tabela de eventos**, os campos enviados podem serem conferidos na documentação dos **campos do evento de abandono de carrinho**.
**Abandono de carrinho**: É enviado toda vez que um novo abandono de carrinho é identificado, os campos disponíveis podem serem conferidos na documentação dos **campo do evento de abandono de carrinho**.
### Produtos
Os eventos de quais produtos devem serem enviados para aquela url
### Formato da resposta (Content-Type)
Qual será o formato em que os dados serão enviados na requisição http, os seguintes formatos estão disponíveis:
- **[application/json](https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/JSON)**
- **[x-www-form-urlencoded](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST)**
## Teste
Após serem preenchidos os dados, a url pode ser testada para verificar se o cadastro foi feito corretamente.
Só será possível salvar se a URL retornar status padrão 200 ([https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/200](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/200)).

## Campos extras
Parâmetros | Descrição | Tipo
---------- | --------- | ----
origin | **[Token](https://orbita.eduzz.com/producer/config-api)** de segurança do webhook | string
type | Tipo da integração (invoice, contract ou abandonment) | string
event_name | Nome do evento | string
## Eventos disponíveis
### Dados e exemplos
- *Atualização de status de fatura e criação de contrato (invoice ou contract)*
- *Abandono de carrinho (abandonment)*
O tipo **(invoice, contract ou abandonment)** será enviado no campo **(type)**.
Quando utilizando o webhook, para que você possa receber as duas integrações, é necessário cadastrar duas vezes a mesma url para os tipos de fatura/contrato e abandono.
Type | Descrição
--------- | ----
abandonment | Um evento de abandono de carrinho, **[a documentação pode ser conferida aqui](campos-abandono.md)**
invoice | Um evento de alteração do status de uma fatura ou a criação de uma, **[a documentação pode ser conferida aqui](campos-fatura.md)**
contract | Um evento de alteração do status de um contrato ou a criação de um, **[a documentação pode ser conferida aqui](campos-fatura.md)**
## Campos e exemplos
### **[Campos enviados para webhooks de fatura e contrato](campos-fatura.md)**
### **[Campos enviados para webhooks de abandono de carrinho](campos-abandono.md)**
### Eventos
O nome do evento que aconteceu será enviado no campo **event_name**.
Os seguintes valores pode serem enviados para cada tipo de url cadastrada:
**Fatura**
event_name | Momento do envio
--- | ---
invoice_open | Quando uma fatura é aberta (boleto é gerado ou uma nova transação de contrato é gerada)
invoice_processing | Fatura Está em processamento
invoice_paid | Fatura está paga
invoice_canceled | Fatura está cancelada
invoice_waiting_documents | Fatura está aguardando os documentos para processo de reembolso
invoice_waiting_refund | Reembolso foi aprovado e a fatura está agurdando ser reembolsada
invoice_refunded | Fatura foi reembolsada
invoice_analysing | Fatura está em análise
invoice_duplicated | Fatura foi identificada como duplicada e foi cancelada
invoice_expired | Data de pagamento da fatura expirou
invoice_recovering | Fatura entrou em recuperação de Vendas
invoice_trial | Fatura entrou em modo de trial
invoice_deleted | Fatura foi excluída, contatar time de Suporte
invoice_waiting_payment | Fatura está aguardando pagamento
invoice_refused | Cartão de crédito recusado no meio de pagamento
invoice_overdue | Fatura expirou
invoice_scheduled | Fatura está agendada para alguma data específica
invoice_negociated | Fatura entrou em disputa pelo cliente
contract_up_to_date | Enviado quando o contrato está em dia (foi pago e processado corretamente no último pagamento)
contract_waiting_payment | Contrato está aguardando o pagamento da parcela atual
contract_suspended | Contrato foi suspenso pela Eduzz ou produtor
contract_canceled | Contrato foi cancelado pela Eduzz ou produtor
contract_delayed | Contrato será processado no futuro
contract_finished | Contrato encerrado
contract_trial | Contrato entrou em modo trial
contract_overdue | Contrato entrou em atraso
contract_free | Contrato é gratuito
**Abandono de Carrinho**
event_name | Momento do envio
--- | ---
cart_abandonment | Toda vez que um cliente preenche os dados no checkout e abandono a compra
## Autenticação
Para autenticar um **[Webhook](https://orbita.eduzz.com/producer/webhook)** na Eduzz, recomendamos o uso do campo chave de origem, disponível tanto no **[Webhook](https://orbita.eduzz.com/producer/webhook)** quanto no serviço de **[Entrega Customizada](https://github.com/eduzz/custom-delivery)**.
A chave para integração com o webhook pode ser visualizada em nossa plataforma no **[Órbita](https://orbita.eduzz.com/producer/config-api)**, ela será enviada no campo origin no payload do webhook.
**Ainda enviamos o campo api_key por motivos de compatibilidade, porém, ele não deve mais ser utilizado e será descontiunado em breve.**
## Guia de solução de problemas
Sempre ocorrerá erro de envio quando a URL cadastrada pelo produtor no webhook retornar qualquer status diferente da faixa de **200-299**. [https://developer.mozilla.org/en-US/docs/Web/HTTP/Status](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status)
Quando isso ocorrer o serviço de webhook da Eduzz irá realizar 10 tentativas de envio do evento que falhou para a URL, caso a falha continue será marcada como falhando a URL, e os eventos futuros serão armazenado em um backup.
O serviço de webhook continuará disparando o primeiro evento que falhou durante 2 dias, até que a URL do produtor seja reestabelecida, assim que esse disparo retornar status code 200 novamente, o webhook irá reativar a URL e buscar todos os eventos salvos no backup disparando eles novamente por ordem da data em que os eventos aconteceram.
Caso continue falhando após os 5 dias, a URL será desativada, os eventos salvos serão excluídos e o produtor notificado.
## Suporte
Usuários com problemas no webhook podem utilizar o suporte através dos nossos canais de atendimento no **[Órbita](https://orbita.eduzz.com)**.