Modules Pay · Auto Login MPAY
v2.0WHMCS 9.0+PHP 8.2+PT-BR · PT-PT · EN · ES · FR

Guia de Utilização

Tudo o que você precisa para tirar o máximo do Auto Login MPAY: tags de e-mail, configurações, idiomas, diagnóstico e solução de problemas.

Como funciona

O cliente clica no link do e-mail e cai direto na página certa, já logado, sem digitar a senha.

1. E-mail enviadoO módulo coloca um link exclusivo do cliente no e-mail.
2. Cliente clicaO link abre o arquivo autologin.php do seu WHMCS.
3. Login seguroO WHMCS gera um token de uso único para aquele cliente.
4. Página abertaA fatura, o ticket ou a cotação abre já logado.

O token de login é criado na hora do clique, vale por pouco tempo e é apagado quando usado. O link do e-mail pode ser usado várias vezes: cada clique gera um token novo.

Para onde cada link leva

O módulo identifica o tipo do e-mail e leva o cliente para a página correspondente.

Tipo de e-mailPágina abertaExemplos de modelo
FaturasA fatura (viewinvoice.php)Invoice Created, Invoice Payment Reminder, Credit Card Payment Due
TicketsO ticket (viewticket.php)Support Ticket Reply, Support Ticket Opened
CotaçõesA cotação (viewquote.php)Quote Delivery with PDF
Produtos/ServiçosDetalhes do serviçoHosting Account Welcome, Service Suspension
DomíniosDetalhes do domínioDomain Registration Confirmation, Upcoming Domain Renewal
Gerais, addons e afiliadosÁrea do cliente (clientarea.php)Client Signup Email, Password Reset Confirmation

E-mails para administradores e tickets de visitantes (sem cadastro de cliente) não recebem link automático.

Tags nos modelos de e-mail

Use as tags abaixo nos modelos em Configurações › Modelos de E-mail.

TagComportamento
{$login_link}sempre disponível Tag do módulo, disponível em todos os modelos de e-mail do cliente. Leva à página correspondente ao e-mail.
{$invoice_link}Tag nativa do WHMCS. Com a opção {$invoice_link} marcada na configuração, o módulo troca o link padrão pelo link de acesso automático. Não precisa editar o modelo.
{$ticket_link}Mesmo comportamento, para e-mails de ticket.
{$quote_link}Mesmo comportamento, para e-mails de cotação.
{$whmcs_url}Nunca é alterada pelo módulo, para não quebrar outros endereços do modelo (como {$whmcs_url}/cart.php). Para a área do cliente, use {$login_link}.

Exemplo: e-mail de fatura

Olá {$client_name},

Sua fatura #{$invoice_num} no valor de {$invoice_total} vence em {$invoice_date_due}.

Acesse e pague com um clique: {$login_link}
<!-- ou mantenha {$invoice_link}, que o módulo já substitui -->

Exemplo: e-mail geral (área do cliente)

Olá {$client_first_name},

Seus dados foram atualizados.
Acesse sua área do cliente: {$login_link}

Dica: quer manter o comportamento padrão do WHMCS ou evitar conflito com outro módulo que altera {$invoice_link}? Marque {$login_link} na configuração e coloque {$login_link} só onde quiser o acesso automático.

Configurações do módulo

Configurações do Sistema › Módulos Addon › Auto Login MPAY › Configurar

OpçãoPara que serve
1 · LicençaChave de licença do módulo. Com a licença inválida, os links não são gerados nem funcionam.
2 · Administrador do WHMCSAdministrador usado pela API interna para criar o token de login. Escolha um administrador ativo.
3 · Tempo para expirar o linkNão expira, 1, 7, 15 ou 25 dias, 1, 3 ou 6 meses, ou 1 ano. Veja Expiração do link.
4 · Tag para e-mails de fatura{$invoice_link}: o módulo troca a tag nativa automaticamente. {$login_link}: mantém a tag nativa original.
5 · Tag para e-mails de ticketMesma lógica para {$ticket_link}.
6 · Tag para e-mails de cotaçãoMesma lógica para {$quote_link}.
7 · Tag para a área do clienteEm e-mails gerais, use {$login_link}. A tag {$whmcs_url} nunca é alterada.
8 · DebugRegistra cada etapa no Log de Módulos. Use só para investigar problemas. Veja Debug e logs.
FerramentasAbrir diagnóstico (veja Diagnóstico), Corrigir permissões (pastas 755, arquivos 644), Guia de instalação, Guia de utilização e Suporte. Os guias abrem no idioma do administrador.

A página do addon (Addons › Auto Login MPAY) mostra um painel com o número de links ativos por tipo, os enviados nos últimos 7 dias, um resumo da configuração e o diagnóstico.

Idiomas

O módulo é traduzido para 5 idiomas e escolhe o idioma sozinho.

IdiomaIdioma no WHMCSArquivo
Português (Brasil)portuguese-brlang/portuguese-br.php
Português (Portugal)portuguese-ptlang/portuguese-pt.php
Inglêsenglishlang/english.php
Espanholspanishlang/spanish.php
Francêsfrenchlang/french.php

Como o idioma é escolhido

  • Telas do addon: idioma do perfil do administrador logado (Minha Conta › Idioma). Se estiver vazio, usa o idioma padrão do WHMCS.
  • Página do cliente (quando o link não pode ser usado): idioma escolhido pelo visitante na área do cliente; senão, o idioma do cadastro do cliente dono do link; senão, o padrão do WHMCS.
  • Guias: os botões do painel abrem o guia no idioma do administrador. No topo de cada guia há um seletor para trocar de idioma.
  • Qualquer outro idioma usa o inglês.

Personalizar textos

Os textos ficam em modules/addons/autologinmpay/lang/, no mesmo formato $_ADDONLANG do WHMCS. Você pode ajustar uma frase editando o arquivo do idioma.

Guarde uma cópia das suas alterações: ao atualizar o módulo, os arquivos de lang/ são substituídos.

Os registros técnicos (Log de Módulos e Log de Atividades) não são traduzidos, para facilitar o atendimento do suporte.

Expiração do link

O prazo é contado a partir do último envio de e-mail daquele link. Cada novo e-mail (um lembrete de fatura, por exemplo) renova o prazo.

Depois do prazo, o cliente vê a página "Este link expirou" (código AL-EXP), no idioma dele, com o botão para entrar com e-mail e senha.

Recomendação: para equilibrar praticidade e segurança, use de 7 a 15 dias. Com Não expira, o link continua válido até ser removido pela limpeza automática.

Manutenção automática

Uma vez por dia, junto com o cron do WHMCS, o módulo organiza os links sozinho:

  • Remove os links de faturas pagas com vencimento nos últimos 30 dias.
  • Remove os links de tickets fechados.
  • Remove os links de cotações entregues.
  • Cria links para as faturas em aberto que ainda não têm um.

Confira se o cron do WHMCS está rodando em Utilitários › Status do Sistema › Automação.

Diagnóstico

Abra pelo botão Abrir diagnóstico na configuração do addon, ou role a página do addon até o fim. Disponível só para administradores com acesso ao addon.

Verificações

Lista de checagem com status: autologin.php na raiz, pasta do módulo gravável, fuso horário PHP x MySQL, extensão cURL, versão do PHP e arquivos de idioma. Os detalhes técnicos (versões, fusos, coluna de tokens) ficam numa seção que abre e fecha.

Testar token de login (SSO)

Informe o ID de um cliente. São gerados dois links de teste:

  • A: token exatamente como o WHMCS cria, sem a correção do módulo.
  • B: token com a correção do módulo. Deve logar o cliente.

Abra cada link numa janela anônima diferente, em até 60 segundos. Se o link A der has expired e o B logar, o seu servidor tem a diferença de fuso do WHMCS 9, e o módulo já está corrigindo isso.

Reparar credencial de login

Se o teste do token falhar com invalid_client. client credentials are required, a credencial OAuth interna que o WHMCS usa para criar tokens de login não pode ser lida, normalmente porque o banco de dados foi copiado de outra instalação (outra chave de criptografia). A linha Clientes OAuth do WHMCS mostra o estado de cada credencial, sem exibir segredos.

Nesse caso aparece o botão Reparar credencial e testar. O módulo guarda uma cópia da credencial original, tenta gravar um segredo novo com a chave atual (ou fazer o WHMCS recriá-la) e testa criando um token de verdade. Se nada funcionar, tudo volta exatamente como estava. O resultado fica registrado no Log de Atividades.

Faça um backup do banco de dados antes de reparar. Outros dados criptografados vindos da instalação antiga (senhas de servidores, chaves de gateways) também podem precisar ser cadastrados novamente.

Testar link do e-mail

Informe o código do link (o valor depois de short=, por exemplo autologin.php?short=8b3f9f7f9943b). O diagnóstico chama o link duas vezes e verifica se algum cache está devolvendo o mesmo token.

Os tokens criados pelos testes não são usados por ninguém e vencem sozinhos. Os do teste de link são apagados logo depois do teste.

Debug e logs

Log de Atividades

Erros importantes são sempre registrados com o prefixo [AUTO LOGIN] em Configurações › Logs do Sistema › Log de Atividades.

Log de Módulos (com Debug ativo)

Com o Debug ligado, cada etapa aparece em Configurações › Logs do Sistema › Log de Módulos, filtrando por autologinmpay. O Log de Módulos também precisa estar ativado no WHMCS.

Ação no logSignificado
hook_sucessoLink gerado e colocado no e-mail.
hook_cliente_nao_encontradoO e-mail não pertence a um cliente (ex.: ticket de visitante). Nenhum link gerado.
hook_licenca_inativaLicença inválida no envio do e-mail.
autologin_sucessoCliente clicou, token criado e redirecionado.
autologin_erroO WHMCS não criou o token. Confira o Administrador do WHMCS configurado.

Desligue o Debug depois de investigar o problema, para não encher o Log de Módulos.

Segurança

  • Cada link tem um código aleatório e difícil de adivinhar, exclusivo de um cliente e de uma fatura, ticket ou cotação.
  • O token de login é de uso único e é criado só no momento do clique.
  • Clientes com conta encerrada não conseguem entrar pelo link.
  • O link nunca fica em cache: cada acesso gera um token novo.
  • Diagnóstico e permissões só abrem para administradores com acesso ao addon.

Quem tiver o e-mail consegue entrar na conta do cliente pelo link. Oriente os clientes a não encaminhar esses e-mails, e use um prazo de expiração.

Mensagens e erros

Quando o acesso automático não é possível, o cliente vê uma página com a marca da sua empresa, uma mensagem amigável no idioma dele, o botão Entrar na área do cliente e um código para o suporte.

CódigoO que o cliente vêCausaO que fazer
AL-LICAcesso automático indisponívelA licença do módulo não foi validada.Confira a licença na configuração do addon.
AL-REQLink incompletoO link foi cortado ou alterado (ex.: quebra de linha no e-mail).Peça ao cliente para abrir o link original do e-mail.
AL-404Link não está mais disponívelO link foi removido (fatura paga, ticket fechado ou módulo reinstalado).O cliente entra normalmente, ou você reenvia o e-mail.
AL-EXPEste link expirouO prazo configurado passou.Reenvie o e-mail (isso renova o prazo) ou aumente o tempo de expiração.
AL-DSTPágina não encontradaO ticket ou a página do link não existe mais.Verifique se o registro ainda existe no WHMCS.
AL-CLINão foi possível identificar sua contaO cliente do link foi excluído.Nenhuma ação: o link deixou de valer.
AL-CLSConta indisponívelO cliente está com status Fechado.Reative o cliente, se for o caso.
AL-SSONão foi possível entrar automaticamenteO WHMCS não criou o token de login.Confira o Administrador configurado e o Log de Atividades ([AUTO LOGIN]). Se o diagnóstico mostrar invalid_client, use Reparar credencial e testar.

Mensagens do próprio WHMCS

MensagemCausaO que fazer
The access token provided has expiredO token chegou vencido.Atualize o autologin.php e tire-o do cache. Use o diagnóstico.
The access token provided is invalidO token já tinha sido usado.Clique de novo no link do e-mail. Não cole o endereço do token na barra do navegador.

Perguntas frequentes

O cliente pode usar o mesmo link mais de uma vez?

Sim. O link do e-mail continua válido até expirar ou ser removido. A cada clique, o módulo cria um token de login novo.

Preciso alterar meus modelos de e-mail?

Não, se você marcar {$invoice_link}, {$ticket_link} e {$quote_link} na configuração: o módulo troca os links nativos automaticamente. Para e-mails gerais, coloque {$login_link} onde quiser o acesso automático.

Em que idioma o cliente vê as mensagens?

No idioma do cliente: o escolhido por ele na área do cliente ou o do cadastro dele. Português (Brasil e Portugal), inglês, espanhol e francês são suportados; os demais usam o inglês.

Posso mudar o idioma das telas do addon?

Sim: as telas seguem o idioma do seu perfil de administrador, em Minha Conta › Idioma.

Preciso criar credenciais de API?

Não. O módulo usa a API interna do WHMCS. Se você criou credenciais nas versões antigas, pode excluí-las.

Por que o teste A do diagnóstico dá “has expired”?

Em alguns servidores, o WHMCS 9 cria o token num fuso horário e valida em outro. Por isso o token original (A) chega vencido. O módulo corrige isso automaticamente, e é por isso que o link B funciona.

O cliente já está logado com outra conta. O que acontece?

O WHMCS faz o login com o cliente do link. Em computadores compartilhados, oriente o cliente a sair da conta ao terminar.

Desativar o módulo apaga alguma coisa?

Apaga a tabela de links do módulo. Os links já enviados deixam de funcionar. Faturas, tickets e clientes do WHMCS não são afetados.

Ainda com dúvidas?

Nossa equipe ajuda a configurar e resolver problemas.