Webhooks e eventos · Webhook assíncrono
Webhook de pedidos, payload completo
Quando dispara
O gatilho é o mesmo do webhook simplificado: a notificação sai depois que o pedido é gerado na plataforma, sem depender da resposta do seu sistema.
A diferença está no corpo. A versão completa já traz os detalhes da transação: cliente, vendedor, entregas com frete e produtos, e pagamentos.
Payload de exemplo
Exemplo da coleção pública. A URL é a do seu sistema: o endereço abaixo é só ilustrativo.
POST https://api.exemplo-cliente.com.br/webhook/pedido-completo
Content-Type: application/json
{
"id": 505676,
"status": "CANCELED",
"subTotal": "R$90.07",
"total": "R$90.07",
"dateCreated": "2024-04-08 13:33:27.0",
"lastUpdated": "2024-04-08 13:35:42.0",
"customer": {
"id": 1637173,
"name": "usuario teste CWS",
"email": "usuarioteste@cws.digital",
"phone": "(11) 98988-8888",
"type": "pf",
"document": "720.953.820-80"
},
"seller": {
"id": 6255,
"name": "Filial 1 Loja Exemplo Teste",
"document": "78.861.562/0001-17"
},
"deliveries": [
{
"freight": {
"name": "Retirada na Loja",
"total": "R$0.00",
"type": "PICKUP_IN_STORE"
},
"products": [
{
"id": 10204964,
"name": "Produto de exemplo 18mm",
"mfrPartCode": "MF-0000000001",
"quantity": 1,
"price": 97.9,
"partnerPartCode": "5090805",
"brand": {
"id": 40329,
"name": "Marca Exemplo"
}
}
]
}
],
"payments": [
{
"id": 305665,
"gateway": "GATEWAY_DE_PAGAMENTO",
"paymentInstallments": 1,
"paymentInstallmentsValue": "R$90.07"
}
]
} Como responder
É uma comunicação assíncrona: a plataforma não aguarda uma resposta para continuar os seus processos.
Com o payload completo o seu sistema pode registrar o pedido sem uma segunda chamada. O andamento volta pela API: status, nota fiscal e acompanhamento dos itens.
A coleção documenta as duas versões do payload. A escolha entre o payload simplificado e o completo é feita com a equipe CWS Platform.
O que a coleção documenta
Este é um exemplo de payload para o Webhook de Pedidos na versão completa, contendo todos os detalhes da transação.
Autenticação do seu endpoint
Visão Geral da Autenticação
Para que a CWS possa enviar notificações de Webhook (Pedidos e Clientes) de forma segura, nosso sistema primeiro se autenticará no seu para obter um token de acesso.
Você deve nos fornecer os detalhes do seu endpoint de autenticação para que possamos configurá-lo.
Estrutura do Endpoint de Token (Sua Responsabilidade)
Você precisará construir um endpoint POST (ex: /token) que, ao receber as credenciais corretas, retorne um token de acesso. A resposta deve seguir o padrão OAuth2:
{
"access_token": "SEU_TOKEN_GERADO",
"expires_in": 3600
}
Abaixo estão três exemplos reais de como seu endpoint de token pode ser configurado.
Exemplo 1: Fluxo client_credentials com Basic Auth
Como funciona: Suas credenciais (clientId e clientSecret) são combinadas, codificadas em Base64 e enviadas no Header Authorization.
Requisição que a CWS fará para seu endpoint de token:
curl --location 'https://api.cliente.com.br/oauth/access-token' \
--header 'Authorization: Basic [SUAS_CREDENCIAS_EM_BASE64]' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials'
Exemplo 2: Fluxo com clientId e clientSecret no Body
Como funciona: Suas credenciais são enviadas diretamente no corpo (body) da requisição em formato JSON.
Requisição que a CWS fará para seu endpoint de token:
curl --location 'https://api.cliente.com.br/v1/token' \
--header 'User-Agent: CWS Digital' \
--header 'Content-Type: application/json' \
--data '{
"clientId": "SEU_CLIENT_ID",
"clientSecret": "SEU_CLIENT_SECRET"
}'
Exemplo 3: Fluxo com Credenciais em Headers Customizados
Como funciona: Um modelo não padrão onde o usuário e a senha são enviados em headers específicos, em vez de usar Authorization ou o corpo da requisição.
Requisição que a CWS fará para seu endpoint de token:
curl --location --request POST 'https://api.cliente.com.br/rest/api/oauth2/v1/token?grant_type=password' \
--header 'username: SEU_USUARIO' \
--header 'password: SUA_SENHA'
Endpoints relacionados
Webhooks e eventos
- Webhook de pedidos: Aviso curto de pedido, com id e status.
- Webhook de clientes: Cadastro criado ou atualizado na plataforma.
- Callback de cálculo de impostos: Chamada síncrona: o seu ERP devolve os tributos por item.
Gerado a partir da coleção pública da API, publicada em 04/09/2026: api-docs.cws.digital.