"Este código de autorização expirou" após o cadastro na Coexistência
Quando o Embedded Signup da Meta termina, ele entrega à plataforma que iniciou o fluxo um código de curta duração, que deve ser trocado por um token de acesso em até 30 segundos. Se a troca ocorrer depois disso ou usar um código de uma tentativa anterior, a Meta informa que o código de autorização expirou. Executar o fluxo novamente gera um código novo.
O tempo de vida que a Meta concede ao código de token trocável retornado pelo Embedded Signup.
A Meta informa que a troca do token deve ser uma requisição servidor a servidor, nunca feita no cliente.
O tempo que a plataforma tem após o onboarding para sincronizar o histórico do número em Coexistência antes de refazer o fluxo.
Qual código expirou?
Quando a empresa conclui o Embedded Signup, a Meta retorna os IDs dos ativos e um código de token trocável à janela do navegador que abriu o popup. A plataforma então envia esse código ao próprio servidor, que chama o endpoint oauth access_token da Meta com o ID e o segredo do app para trocá-lo por um token da empresa.
O guia de implementação da Meta é explícito sobre o prazo: o código de token trocável tem tempo de vida de 30 segundos, portanto a plataforma precisa fazer a troca antes que ele expire. Uma troca tentada depois desse momento é recusada, e "Este código de autorização expirou" é a mensagem dessa recusa. A empresa não fez nada errado ao concluir o popup lentamente; o relógio começa quando o código é retornado.
Por que isso acontece quando o popup termina tarde ou duas vezes?
Várias situações podem atrasar a troca além desse limite.
A aba do navegador ficou em segundo plano ou o laptop entrou em suspensão enquanto o fluxo terminava, então o código chegou ao servidor da plataforma muito depois de ser emitido. O servidor da plataforma colocou a troca em fila atrás de outras tarefas em vez de executá-la imediatamente. Ou a pessoa abriu o fluxo duas vezes, concluiu ambos e a plataforma trocou o código da primeira janela depois que a segunda foi concluída.
Em testes, há uma quarta situação: copiar o código do console do navegador e trocá-lo manualmente com cURL ou Postman. O guia da Meta alerta exatamente sobre isso e recomenda deixar a requisição de troca pronta antes de iniciar o fluxo.
Como concluir a conexão?
Execute o fluxo novamente desde o início em uma única janela e deixe a página da plataforma em primeiro plano até a conclusão. Cada conclusão retorna um código novo, e uma troca imediata desse código é tudo de que a plataforma precisa.
Para um número em Coexistência, faça isso prontamente. A Meta converte a conta do WhatsApp Business quando a empresa conclui o fluxo e, depois que a plataforma faz o onboarding do cliente, ela tem 24 horas para sincronizar o histórico de mensagens. Depois disso, a empresa precisa ser removida do onboarding e concluir o fluxo novamente.
No lado da plataforma, a correção duradoura é trocar o código no servidor assim que ele chegar, antes de qualquer outra etapa do onboarding.
Erros comuns
- Repetir a troca do token com o mesmo código. Ele expirou após 30 segundos e não voltará a funcionar.
- Executar o cadastro em duas janelas ao mesmo tempo. Só conta o código da tentativa que está sendo trocada.
- Trocar o código no navegador. A Meta exige que a troca seja uma requisição servidor a servidor com o segredo do app.
O EasyCoexistence troca o código no servidor assim que o Embedded Signup o retorna e registra cada tentativa na linha do tempo da conexão. Assim, um código perdido aparece como um evento datado, não como uma falha vaga.
Perguntas frequentes
A empresa conectou o número ou não?
A empresa concluiu o fluxo da Meta, mas a plataforma não conseguiu transformar o código em um token funcional. Por isso, ainda não pode operar o número. Executar o fluxo novamente gera um código novo.
É possível fazer o código durar mais?
Não. A Meta define o tempo de vida de 30 segundos, e nenhuma plataforma pode estendê-lo.
O app do WhatsApp Business é afetado?
Não. O app continua funcionando no celular enquanto isso é resolvido.
Isso é igual a um token de acesso expirado?
Não. Este é o código de cadastro de curta duração. Um token de acesso expirado em uma conexão funcional retorna o erro 190.
Continue lendo
Pronto para começar?
Configure o WhatsApp Coexistence em minutos, não em meses. O aplicativo continua funcionando no celular.
Começar teste grátisVerificado em