Requisitos
Confira o ambiente antes de enviar qualquer arquivo.
Você também vai precisar de
- Uma conta Efí Pay com acesso à API Pix.
- A chave de licença do módulo, disponível na sua área de cliente da Modules Pay.
- O WHMCS acessível publicamente por HTTPS, para que a Efí consiga enviar as notificações de pagamento.
- O OpenSSL instalado no seu computador, para converter o certificado.
Faça backup antes de começarCopie os arquivos e o banco de dados do WHMCS. O módulo cria a tabela mod_efimpay na primeira configuração.
Enviar os arquivos
Os diretórios do pacote seguem a estrutura padrão do WHMCS.
📁 Servidor do WHMCS (FTP / gerenciador de arquivos)- Baixe o módulo na área de cliente da Modules Pay (é necessário fazer login) e descompacte o arquivo .zip.
- Copie o arquivo
efipixmpay.phpe a pastaefipixmpay/, que estão emmodules/gateways/, paramodules/gateways/da sua instalação do WHMCS. - Copie o arquivo
efipixmpay.phpdeincludes/hooks/paraincludes/hooks/da sua instalação do WHMCS. - Crie a pasta
modules/gateways/efipixmpay/certs/caso ela ainda não exista. É nela que ficará o certificado.
includes/ └── hooks/ └── efipixmpay.php # hooks (codificado com ionCube) modules/ └── gateways/ ├── efipixmpay.php # gateway └── efipixmpay/ ├── certs/ # certificado .pem (etapa 6) ├── images/ ├── webhook/ │ └── index.php # recebe as notificações da Efí ├── config.php ├── functions.php ├── validarpagamento.php └── whmcs.json
Erro “ionCube Loader needs to be installed”?O arquivo de hooks é protegido com ionCube. Peça à sua hospedagem para instalar ou atualizar o ionCube Loader (versão 11 a 15) para a versão do PHP usada pelo WHMCS.
Criar a aplicação e copiar as credenciais
O Client ID e o Client Secret autenticam o módulo na API Pix.
🌐 Conta Efí Pay → API → Aplicações- Na conta Efí, abra API no menu inferior esquerdo e depois Aplicações.
- Crie uma nova aplicação ou selecione uma existente. Garanta que a API Pix esteja habilitada nela, com os escopos de cobrança com vencimento e de webhook.
- Copie a Chave Client ID e a Chave Client Secret do ambiente de Produção. Guarde-as para a etapa 9.
Produção, não homologaçãoO módulo opera em produção. Credenciais e certificado de homologação não funcionam nesta versão.
Documentação oficial: dev.efipay.com.br – Credenciais.
Gerar e converter o certificado
A Efí entrega o certificado em .p12. O módulo usa .pem.
O download só acontece uma vezO certificado é baixado logo após a criação e não pode ser baixado de novo. Guarde-o em um local seguro.
Gerar o certificado .p12
- Acesse o item API no menu inferior esquerdo da conta Efí.
- No menu à esquerda, clique em Meus Certificados.
- Selecione o ambiente Produção.
- Clique em Novo Certificado (botão azul).
- Dê uma descrição para identificar o certificado no futuro, por exemplo
WHMCS Pix. - Confirme a criação, baixe o arquivo e clique em prosseguir.
Converter para .pem
Execute no terminal, na pasta onde está o arquivo baixado. O comando junta o certificado e a chave em um único arquivo, sem senha:
openssl pkcs12 -in certificado.p12 -out certificado.pem -nodes -password pass:""
Troque certificado.p12 pelo nome do arquivo baixado. O nome do .pem pode ser qualquer um: ele será escolhido em uma lista nas configurações.
No Windows, o comando openssl não é reconhecido?Instale o OpenSSL e rode o comando de novo. Passo a passo: como instalar o OpenSSL no Windows. Com OpenSSL 3, se aparecer erro de algoritmo, acrescente -legacy ao comando.
Cadastrar a chave Pix
É nela que os pagamentos serão recebidos.
🌐 Conta Efí Pay → Pix → Minhas Chaves- Acesse Pix → Minhas Chaves.
- Cadastre uma chave aleatória.
- Copie a chave cadastrada para usar na etapa 9.
Enviar o certificado para o servidor
O módulo lista os arquivos desta pasta nas configurações.
📁 Servidor do WHMCSEnvie o arquivo .pem para:
modules/gateways/efipixmpay/certs/
Proteja a pasta do certificadoO .pem contém a chave privada da sua conta. Bloqueie o acesso pela web criando o arquivo certs/.htaccess com o conteúdo abaixo (Apache/LiteSpeed). No Nginx, crie uma regra deny all equivalente.
Require all denied
Mantenha somente certificados nesta pasta: todos os arquivos dela aparecem na lista de seleção.
Criar o campo personalizado CPF/CNPJ
A Efí exige o documento do pagador em toda cobrança com vencimento.
⚙️ WHMCS → Configurações → Campos Personalizados dos Clientes- Se ainda não existir, crie um único campo para CPF e CNPJ no perfil do cliente, por exemplo
CPF/CNPJ. - Recomendado: marque o campo como obrigatório e exiba-o no formulário de cadastro, para que todo cliente o preencha.
O documento é validadoClientes com CPF/CNPJ vazio ou inválido não conseguem gerar o Pix. O módulo aceita o número com ou sem pontuação.
Ativar o gateway
⚙️ WHMCS → Apps & Integrations- No painel administrativo, acesse Apps & Integrations.
- Pesquise por “Efí Pay Pix”.
- Clique em Activate.
Também é possível ativar em Configurações → Pagamentos → Gateways de Pagamento → Todos os Gateways, escolhendo EFI PAY PIX - Modules Pay.
Configurar o módulo
Preencha os campos e salve. Os números correspondem aos selos exibidos na tela do WHMCS.
⚙️ WHMCS → Configurações → Pagamentos → Gateways de PagamentoCredenciais e identificação
| Campo | O que informar | |
|---|---|---|
| Exibir o Nome | Obrigatório | Nome do gateway exibido ao cliente, por exemplo Pix. |
| 1Versão | Informativo | Mostra a versão instalada e avisa quando há uma nova versão para baixar. |
| 2Chave de Licença | Obrigatório | Chave da licença Modules Pay. O status da licença aparece logo abaixo do campo. |
| 3Client_Id (Produção) | Obrigatório | Copiado na etapa 3. |
| 4Client_Secret (Produção) | Obrigatório | Copiado na etapa 3. |
| 5Chave Pix da Conta | Obrigatório | Chave aleatória cadastrada na etapa 5. |
| 6Certificado (Produção) | Obrigatório | Selecione o .pem enviado para certs/. |
| 7Tempo de Expiração | Obrigatório | Dias em que a cobrança ainda pode ser paga após o vencimento (1 a 60). Padrão: 5. |
| 8Nome da Empresa | Opcional | Nome fantasia para identificar as faturas. |
| 18Campo CPF/CNPJ | Obrigatório | Selecione o campo criado na etapa 7. |
Valores, taxas e encargos
| Campo | O que informar | |
|---|---|---|
| 9Valor Mínimo | Opcional | Valor mínimo da fatura para aceitar Pix. Ex.: 10.00. Em branco: aceita qualquer valor. |
| 10Taxa Fixa (R$) | Opcional | Valor somado à fatura por usar o Pix. Ex.: 1.00. |
| 11Taxa (%) | Opcional | Percentual sobre o valor da fatura. Ex.: 2.00. |
| 12Multa por Atraso (%) | Opcional | Máximo de 2% (CDC, art. 52, §1º). |
| 13Juros Proporcional | Opcional | Liga juros de 1% ao mês, proporcionais aos dias de atraso (≈ 0,033% ao dia). |
| 14Desconto Antecipado (dias) | Opcional | Quantos dias antes do vencimento o desconto é válido. |
| 15Desconto Antecipado (%) | Opcional | Percentual do desconto. Preencha junto com o campo 14. |
| 16Aplicar Crédito | Opcional | Usa o saldo de crédito do cliente ao gerar a fatura. |
| 17Imagem do botão | Opcional | URL de uma imagem para o botão “Pagar Agora” (160×43 px). Em branco: imagem padrão. |
Use ponto como separador decimalEscreva 10.00, nunca 10,00. Deixe em branco os campos opcionais que não for usar.
Clique em Salvar Alterações. Nesse momento o módulo verifica a licença, a versão do PHP e cria a tabela mod_efimpay, se necessário.
Webhook de confirmação
Não há configuração manual: o módulo cadastra o webhook sozinho.
Quando uma fatura com Pix é aberta pela primeira vez, o módulo registra na Efí, para a sua chave Pix, a URL:
https://SEU-WHMCS/modules/gateways/efipixmpay/webhook/?hmac=<seu-dominio>&ignorar=
É por ela que a Efí avisa o pagamento e a fatura é baixada automaticamente.
- A URL precisa responder por HTTPS com certificado SSL válido.
- Firewall, WAF ou Cloudflare não podem bloquear requisições da Efí para essa URL.
- Se o endereço do WHMCS mudar, abra e salve as configurações do gateway e depois abra uma fatura para que o webhook seja recadastrado.
Fazer o primeiro teste
Confirme o ciclo completo com um valor baixo.
- Crie ou use um cliente de teste com CPF/CNPJ válido e endereço preenchido.
- Gere uma fatura de valor baixo (por exemplo, R$ 1,00) com a forma de pagamento EFI PAY PIX.
- Abra a fatura na área do cliente. Devem aparecer o QR Code e o Pix Copia e Cola.
- Pague com o app do seu banco e mantenha a fatura aberta: a página recarrega como Paga em poucos segundos.
- No admin, confira a transação na fatura e as mensagens
[EFI PIX MPAY]em Utilitários → Logs → Log de Atividades.
| Sintoma | Verifique |
|---|---|
| “Este gateway no momento não está funcional” | Licença inativa ou inválida, ou a fatura não está com a forma de pagamento EFI PAY PIX. |
| “O Token Gerado é Inválido” | Client ID/Secret errados, credenciais de homologação ou certificado de outra aplicação. |
| “Não foi localizado o arquivo do Certificado” | O .pem não está em certs/ ou não foi selecionado no campo 6. |
| “O CPF/CNPJ … não é um documento válido” | Campo do cliente vazio, inválido ou campo errado selecionado no campo 18. |
| Pagou, mas a fatura não baixou | HTTPS, bloqueio de firewall/WAF à URL do webhook e o Log de Atividades. |
| Certificado não aparece na lista | A pasta certs/ existe e o PHP tem permissão de leitura. |
Checklist final
Marque cada item. As marcações não são salvas.
Instalação concluída
Veja como o módulo funciona no dia a dia: cobrança, encargos e baixa automática.