Retorno Automático não funciona para registro de domínios
Tagged: bug, callback, retorno automático
- This topic has 6 replies, 3 voices, and was last updated 7 years, 4 months ago by Gofas.
- AutorPosts
- 25/05/2017 at 13:12 #9351RodrigoParticipant
Boa tarde Gofas,
Estou fazendo alguns testes com o módulo em modo desenvolvimento e me deparei com o seguinte problema:
– Ao efetuar pagamentos para assinar serviços ou adição de fundos, tudo funciona perfeitamente
– Ao efetuar pagamentos para assinar um domínio, o pedido é processado corretamente, aparece “Pagamento aprovado.” na fatura, porém ela continua com status “EM ABERTO”.
– Nenhum erro no php é gerado e o callback é acessado corretamente pelo GerencianetEu não consegui diagnosticar esse problema. Abaixo segue informações mais detalhas.
https://image.prntscr.com/image/47e1f4a47a9b49aba484245776bbbc49.png
https://image.prntscr.com/image/c409fa10d05148a09f9c33a549e0e2e9.png
- 25/05/2017 at 13:16 #9352RodrigoParticipant
Por motivos de segurança, algumas informações foram substituídas.
Uma coisa que achei curiosa, além do problema com o retorno, é a resposta do servidor. Ela inclui todas as informações do cliente e envia até o login e senha do cPanel, isso é um problema grave de segurança, não gostaria que essas informações saíssem do nosso site para nenhum local.
- 25/05/2017 at 13:33 #9353RodrigoParticipant
Dei uma olhada no código do callback.php e aparentemente esse script está enviando informações de debug.
Exemplos:
echo '<br/>Notificacao:<br/><pre>'; print_r($notificationData); echo '<br>$notificationData type: ', $notification_type, '<br>$paymentAmount: ', $origPaymentAmount, '<br></pre>'; // Debug
echo '<br/>Dados do serviço/produto:<br/><pre>'; print_r($clientservice); echo '<br>$SendedInvoiceAmount: ', $SendedInvoiceAmount, '</pre>'; // Debug
//echo json_encode($addtransresult); echo '<br/>Resultado:<br/><pre>'; print_r($addtransresult); echo '</pre>'; // Debug
- 25/05/2017 at 17:04 #9354RodrigoParticipant
Gofas, o retorno não funcionou para uma fatura de serviço normal desta vez, no valor de R$ 31,00. Talvez seja algo relacionado ao valor.
- 26/05/2017 at 09:26 #9356RodrigoParticipant
Bom dia, eu consegui achar a origem do problema diretamente no código, para te ajudar a solucionar!
Esse problema tem haver com o crédito do usuário: quando o usuário possui crédito na conta, ele não passa pela verificação que você colocou nas linhas 144 e 161 do arquivo callback.php. Especificamente$origPaymentAmount == $SendedInvoiceAmount
.Removendo essa verificação, o status do pedido foi aprovado. Esse problema está diretamente relacionado com o que postei hoje.
- 07/06/2017 at 14:49 #9406ricardoParticipant
Olá,
Eu tive um problema muito parecido. O erro era o mesmo, porém no meu caso o cliente agrupou duas faturas pagou e o retorno automatico não funcionou.
- 29/06/2017 at 04:23 #9440GofasKeymaster
Pessoal, gratidão pela ajuda com os testes e por compartilhar as informações de diagnóstico!
Realmente Rodrigo, faturas com crédito ou desconto estavam causando algumas inconsistências na confirmação dos pagamentos por que os valores eram identificados como diferentes do valor original do serviço/produto ou do total da fatura.
Todos esses problemas foram resolvidos na versão 1.2.1:
https://gofas.net/blog/whmcs/atualizacao-modulo-gerencianet-cartao-para-whmcs-v1-2-1/.Ricardo, agora é possível mesclar faturas sem problemas, mesmo faturas que já geraram uma transação na API.
- AutorPosts
- You must be logged in to reply to this topic.