Visão geral
Como o seller conecta o próprio número de WhatsApp: credencial, cadastro guiado, perfil comercial e sugestões.
Para vender pelo WhatsApp, a loja precisa de um número ligado à Meta (a empresa dona do WhatsApp). Numa loja com vários sellers (lojistas), cada seller pode ter o seu. Esta seção reúne as rotas que o seller usa para conectar, testar e apresentar esse número: a credencial (qual número e qual token), o cadastro guiado para quem ainda não tem o número na Meta, o perfil comercial que o cliente vê e dois ajudantes de texto.
Como funciona
Há dois caminhos para conectar um número, conforme ele já exista ou não na Meta.
- Escolha o caminho
Se o telefone já está numa conta empresarial da Meta, vá direto a Salvar a credencial. Se não está, use o cadastro guiado.
- Cadastre e confirme
No cadastro guiado:
registercria a credencial pendente,request-codefaz a Meta mandar o código por SMS ou ligação, everifyconfirma o código e ativa o número. Guarde ophone_number_iddevolvido no primeiro passo. - Teste a credencial
Chame Verificar a credencial. Se der
200, o número fala com a Meta. - Capriche no perfil
Preencha o perfil comercial: foto, descrição, endereço e site. É o que o cliente vê ao abrir o contato.
Estados da credencial
| Estado | Letra | Significado |
|---|---|---|
| Pendente | P | Criada pelo cadastro guiado; ainda não entrega mensagens. |
| Ativa | A | Salva por PUT ou confirmada por verify; entrega mensagens. |
verified: true | Ativa e a Meta já respondeu com ela pelo menos uma vez. |
Conceitos-chave
WABA, phone_number_id e token
A WABA (WhatsApp Business Account) é a conta empresarial da Meta que agrupa números. Cada número tem um phone_number_id (um texto de dígitos que identifica o telefone na API da Meta, diferente do telefone em si) e é acessado com um token de acesso. Na Venddor, a conta da própria plataforma é compartilhada: no cadastro guiado e no primeiro PUT sem auth_token, o seller usa o token da plataforma e não precisa colar segredos.
Quem pode chamar
Estas rotas cuidam do seu número. Não há parâmetro para agir em nome de outro seller. Um usuário da equipe do seller que não tem perfil de seller próprio age sobre o número ativo da loja, quando existe um. As rotas de credencial e perfil não exigem privilégio extra; os três passos finais do cadastro e as sugestões exigem o privilégio vendor_manage_whatsapp (um seller sem grupo de usuários o tem automaticamente).
Número em marketplace
Num marketplace, o número da própria loja e os números dos sellers convivem. Um seller só pode assumir o número da loja se for o único seller ativo; caso contrário recebe 409 number_in_use. Se a loja tem números de vários sellers, as escritas do cadastro guiado exigem entrar com o usuário do seller dono (seller_required_for_number).
Datas e formatos
Datas em RFC 3339 (UTC). Ids de seller são UUID; phone_number_id e business_account_id são textos de dígitos. Mensagens de erro do cadastro guiado vêm em português.
Endpoints
| Método | Caminho | Para que serve | Auth |
|---|---|---|---|
| GET | /api/v1/vendor/whatsapp/credentials | Lê a credencial do número do seller | seller |
| PUT | /api/v1/vendor/whatsapp/credentials | Salva ou troca o número conectado | seller |
| DELETE | /api/v1/vendor/whatsapp/credentials | Remove a credencial do seller | seller |
| POST | /api/v1/vendor/whatsapp/credentials/verify | Testa a credencial na Meta | seller |
| GET | /api/v1/vendor/whatsapp/profile | Lê o perfil comercial do número | seller |
| PUT | /api/v1/vendor/whatsapp/profile | Atualiza o perfil comercial na Meta | seller |
| POST | /api/v1/vendor/whatsapp/self-setup/register | Cadastra o número na conta da plataforma | seller |
| POST | /api/v1/vendor/whatsapp/self-setup/request-code | Pede à Meta o código de verificação | seller |
| POST | /api/v1/vendor/whatsapp/self-setup/verify | Confirma o código e ativa o número | seller |
| GET | /api/v1/vendor/whatsapp/self-setup/status | Consulta o estado do número na Meta | seller |
| POST | /api/v1/vendor/whatsapp/self-setup/suggest-names | Sugere nomes de exibição que a Meta tende a aceitar | seller |
| POST | /api/v1/vendor/whatsapp/self-setup/suggest-description | Sugere um texto de descrição do negócio | seller |
Erros comuns
- Confiar em
verifiedlogo após oPUT.falsequer dizer que a Meta ainda não respondeu; rodeverifye leia o erro. - Mandar um perfil parcial. O
PUT /profileenvia campos vazios e a Meta os apaga. - Esquecer
replace_existing. Quem já tem número ativo recebe409 limit_reachedao cadastrar outro. - Pedir o código sem esperar. O intervalo é de 60 segundos por método; use
retry_after_seconds. - Usar um número com WhatsApp pessoal ativo. A Meta recusa (
whatsapp_exists); a conta do aplicativo precisa ser excluída antes. - Esperar
400para campos faltando noregister. Hoje volta500; valide no cliente.