VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API atual/Referência completa

Visão geral

Como funciona a caixa de entrada do WhatsApp da loja: conversas, janela de 24 horas, modos de atendimento, envio de produtos e cobrança.

A caixa de entrada (inbox) é onde a equipe da loja atende os clientes pelo WhatsApp. Cada cliente que escreve vira uma conversa; o assistente de vendas responde sozinho até uma pessoa assumir. Pela API o seller lê as conversas, responde com texto, mídia ou template, manda produtos e cobra por PIX. Há ainda a caixa do chat da mini-loja, com o mesmo desenho.

Pontos-chave
  • Uma conversa liga um telefone de cliente a uma conta (número da loja). O id é um UUID; o id de mensagem é um inteiro.
  • Texto livre só vale dentro da janela de 24 horas (csw_expires_at). Fora dela, use um template aprovado.
  • Responder como atendente passa a conversa para uma pessoa: o assistente para (bot_mode: H).
  • O seller só enxerga conversas das contas dele. Quando a loja restringe os sellers por número, conversa de outro seller responde 404. Um id desconhecido depende da rota: algumas dão 404, outras 200 ou 502 (veja cada página).
  • As ações da caixa não exigem privilégio extra; os ajustes da loja exigem (veja a configuração).

Como funciona

Cliente escreve→Assistente responde→Pessoa assume→Pessoa encerra→Assistente volta

O fluxo típico de um atendente:

  1. Liste as conversas
    Listar conversas com filter=unread ou filter=human.
  2. Leia o histórico
    Pagine as mensagens e marque a conversa como lida.
  3. Assuma e responda
    Se for responder, assuma (ou deixe o primeiro envio assumir) e use Responder. Passou das 24 horas? Envie um template.
  4. Venda na conversa
    Envie produtos ou o link do carrinho, e cobre por PIX.
  5. Devolva ao assistente
    Chame Encerrar atendimento para o assistente voltar.

Modos de atendimento (bot_mode)

CódigoSignificado
AO assistente responde sozinho.
PO assistente está pausado até paused_until; depois volta.
HUma pessoa atende; o assistente não responde.

Origem da mensagem (origin) e entrega (status)

originQuem escreveustatusEstado
CClienteQNa fila
AAPI ou atendente pela caixaSEnviada
BAssistenteDEntregue
EAplicativo WhatsApp Business (eco)RLida
HHistórico importadoFFalhou

Conceitos-chave

Janela de atendimento de 24 horas

Cada mensagem do cliente abre ou renova uma janela de 24 horas (csw_expires_at). Dentro dela a loja envia texto, mídia e mensagens interativas. Fora dela, a Meta só aceita templates. Tentar texto livre fora da janela devolve 502 e deixa a mensagem gravada com status: F.

Ponto de entrada gratuito

Quando o cliente chega por um anúncio que leva ao WhatsApp, abre-se uma janela de 72 horas (fep_expires_at) em que as respostas não geram cobrança de conversa pela Meta.

Quem vê o quê

Numa loja em que vários sellers têm número próprio, cada seller vê só as conversas, mídias, sessões e o uso mensal das contas dele. Quando nenhum número tem seller dono, ou há um único seller dono, o seller vê tudo. Templates, catálogo, campanhas e analytics são da loja inteira.

Contas de demonstração

Em ambientes de teste, contas de demonstração gravam as mensagens como enviadas sem chamar a Meta. Em produção, cada envio é uma chamada real e pode ser cobrado.

Dinheiro e datas

Valores em centavos inteiros (15990 = R$ 159,90). Datas em RFC 3339 (UTC).

Endpoints

MétodoCaminhoPara que serve
GET/api/v1/vendor/whatsapp-confluence/threadsLista as conversas, as mais recentes primeiro. Conversas e mensagens
GET/api/v1/vendor/whatsapp-confluence/threads/{id}Retorna uma conversa. Conversas e mensagens
GET/api/v1/vendor/whatsapp-confluence/threads/{id}/messagesPagina as mensagens de uma conversa. Conversas e mensagens
GET/api/v1/vendor/whatsapp-confluence/threads/{id}/export.csvBaixa as mensagens da conversa em CSV. Conversas e mensagens
GET/api/v1/vendor/whatsapp-confluence/media/{messageID}Devolve os bytes da mídia de uma mensagem. Conversas e mensagens
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/replyEnvia uma mensagem de texto. Responder ao cliente
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/reply-mediaEnvia imagem, áudio, vídeo ou documento. Responder ao cliente
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/send-templateEnvia um template aprovado pela Meta. Responder ao cliente
GET/api/v1/vendor/whatsapp-confluence/templatesLista os templates da loja. Responder ao cliente
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/readZera o contador de não lidas. Estado da conversa
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/assignDefine ou limpa o responsável. Estado da conversa
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/take-overPassa a conversa para o atendimento humano. Estado da conversa
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/end-serviceDevolve a conversa ao assistente. Estado da conversa
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/clear-sessionRecomeça a conversa do zero para o assistente. Estado da conversa
GET/api/v1/vendor/whatsapp-confluence/threads/{id}/botRetorna o modo de atendimento da conversa. Controle do assistente
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/bot/pausePausa o assistente por alguns minutos. Controle do assistente
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/bot/resumeVolta o assistente a responder. Controle do assistente
GET/api/v1/vendor/whatsapp-confluence/productsBusca produtos do seller para enviar. Enviar produtos e carrinho
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/send-productEnvia um cartão de produto. Enviar produtos e carrinho
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/send-product-listEnvia uma lista de produtos. Enviar produtos e carrinho
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/send-catalogEnvia o botão de ver o catálogo. Enviar produtos e carrinho
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/send-cart-linkEnvia o botão de abrir o carrinho. Enviar produtos e carrinho
POST/api/v1/vendor/whatsapp-confluence/threads/{id}/chargeGera uma cobrança PIX e a envia ao cliente. Cobrança por PIX e painel do cliente
GET/api/v1/vendor/whatsapp-confluence/threads/{id}/chargesLista as cobranças da conversa. Cobrança por PIX e painel do cliente
GET/api/v1/vendor/whatsapp-confluence/threads/{id}/commerceMostra o carrinho aberto e os pedidos do telefone. Cobrança por PIX e painel do cliente
GET/api/v1/vendor/whatsapp-confluence/assistant/threadsLista as sessões do chat do assistente. Sessões do assistente
GET/api/v1/vendor/whatsapp-confluence/assistant/threads/{id}Retorna uma sessão. Sessões do assistente
GET/api/v1/vendor/whatsapp-confluence/assistant/threads/{id}/messagesPagina as mensagens de uma sessão. Sessões do assistente
GET/api/v1/vendor/whatsapp-confluence/assistant/threads/{id}/botRetorna quem atende a sessão. Sessões do assistente
GET/api/v1/vendor/whatsapp-confluence/assistant/threads/{id}/commerceMostra carrinho e pedidos do cliente da sessão. Sessões do assistente
POST/api/v1/vendor/whatsapp-confluence/assistant/threads/{id}/replyEnvia uma resposta ao chat do cliente. Agir nas sessões do assistente
POST/api/v1/vendor/whatsapp-confluence/assistant/threads/{id}/readZera as não lidas da sessão. Agir nas sessões do assistente
POST/api/v1/vendor/whatsapp-confluence/assistant/threads/{id}/take-overO assistente para de responder esta sessão. Agir nas sessões do assistente
POST/api/v1/vendor/whatsapp-confluence/assistant/threads/{id}/end-serviceO assistente volta a responder a sessão. Agir nas sessões do assistente

Erros comuns

  • Responder fora da janela de 24 horas. Resulta em 502 da Meta. Confira csw_expires_at e use um template.
  • Achar que um id de conversa desconhecido sempre dá 404. Sem escopo de seller, rotas como take-over, read, bot/pause e messages respondem 200 para um id que não existe, e os envios de produto e a cobrança respondem 502.
  • Chamar /bot e confiar no 200. A rota devolve mode: A até para um id sem sessão. Valide a conversa antes.
  • Passar um id que não é UUID em /charges. Dá 500 com o texto cru do banco, não 404.
  • Esperar que ler marque como lida. Só Marcar como lida zera unread_count.
  • Paginar mensagens por número de página. A paginação é por cursor: use next_before como before.
  • Mandar um produto de outro seller. O envio recusa produtos que não são do catálogo do seller com 502.
  • Esperar que a resposta no chat da mini-loja saia pela Meta. Ela só aparece no chat do cliente na próxima consulta da página dele.

Próximos passos

Configuração
Conta, ajustes, boas-vindas, consentimento e mini-loja.
Resultados
Volume, custo, funil e orçamento.
Conversas e mensagens
Comece listando as conversas.
Anterior
Mini-loja
Próxima
Conversas e mensagens
Nesta página
  • Como funciona
  • Modos de atendimento (botmode)
  • Origem da mensagem (origin) e entrega (status)
  • Conceitos-chave
  • Janela de atendimento de 24 horas
  • Ponto de entrada gratuito
  • Quem vê o quê
  • Contas de demonstração
  • Dinheiro e datas
  • Endpoints
  • Erros comuns
  • Próximos passos