> For the complete documentation index, see [llms.txt](https://developershub2b.gitbook.io/hub2b-api/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developershub2b.gitbook.io/hub2b-api/api-para-seller-erp-ecommerce/pedido/webhook.md).

# Webhook

Este serviço tem como intuito permitir cadastrar na Hub2b uma URL para ser notificado da **criação, aprovação e cancelamento** de pedidos.

Mesmo com a notificação do Webhook, sugerimos a criação de um serviço de contingência que liste todos os pedidos de determinado status e data, e avalie as atualizações, pois o Webhook irá fazer apenas 2 tentativas de notificação, caso ocorra algum erro a informação será descartada.

Para adicionar ele basta adicionar esta integração **pela plataforma**, ou se utiliza nossa API basta enviar para [/Setup/integration](https://rest.hub2b.com.br/Setup/integration) o seguinte body de exemplo:

```
{
    "system": "ERPOrdersNotification",
    "idTenant": 2302,
    "responsibilities": [
        {
            "type": "Orders",
            "flow": "HubTo"
        }
    ],
    "apiKeys": [
        {
            "key": "URL_ERPOrdersNotification",
            "value": "https://minhaUrlNotification.net/"
        },
        {
            "key": "authToken_ERPOrdersNotification",
            "value": "Bearer dslfkskdjhfjkhsakdhkjsdavsdn64567sdvjdf"
        },
        {
            "key": "AuthKey_ERPOrdersNotification",
            "value": "ApiKey"
        },
        {
            "key": "HUB_ID_ERPOrdersNotification",
            "value": "2032"
        }
    ]
}
```

Assim que for adicionada a integração, será feita uma requisição de testes igual a esta:

```
curl --location --request POST 'https://minhaUrlNotification.net/' \
--header 'ApiKey: Bearer dslfkskdjhfjkhsakdhkjsdavsdn64567sdvjdf' \
--header 'Content-Type: application/json' \
--data-raw '{	
	"IdTenant": 2032,
	"IdOrder": "0",
	"OrderStatus": "Approved"
}'
```

Caso tenha sucesso, a integração foi adicionada com êxito. Serão notificados nessa URL os eventos de criação, aprovação e cancelamento de pedidos. Os status possíveis são:

**Pending** - Criação

**Approved** - Aprovação

**Canceled** - Cancelamento

Serão feitas no máximo 2 tentativas de notificação, onde o IdOrder é o código do pedido a ser consultado na Hub2b.

Caso precise efetuar alguma liberação para que o servidor da Hub2b possa notificar o servidor de destino, todas nossas notificações utilizam o User-Agent="hub2b", então pode ser feita essa liberação pelo User-Agent.
