DiegoFernando Postado Março 20, 2013 Postado Março 20, 2013 bem gente, há um tempo perdi uns fios para tentar mexer nisso. Eu consegui fazer com que o windows crie uma tarefa para: 1 - Abrir o programa da caixa. 2 - Baixar para uma pasta os arquivos ret. 3 - Enviar para uma pasta no servidor via ftp. Agora o mais difícil! Alguem tem que programar o script para ler o arquivo direto da pasta no servidor. Depois integrar para dar baixa no whmcs. Dessa forma basta deixar um pc ligado na internet que a baixa ocorre automaticamente, 100%. Infelizmente da curiosidade é maior que o conhecimento em programação, e as vezes isso não adianta muito. Abs e à disposição! 0 Citar
redirect Postado Março 21, 2013 Postado Março 21, 2013 no site da WHMCS tem um exemplo de módulo para retorno de pagamento, só falta o código que recebe o retorno mas a parte para incluir o pagamento no WHMCS já está lá, protinha. como vc já tem o arquivo de retorno do banco é só incluir nesse script a leitura desse arquivo e jogar em variáveis os dados deste e depois interligar com o código do WHMCS. @diego123, vc pode ensinar a fazer isso que você configurou no windows? 0 Citar
DiegoFernando Postado Março 25, 2013 Postado Março 25, 2013 Para abrir o programa da caixa automaticamente todo dia a certa hora utilize o Agendador de Tarefas. 1 - Abra o agendador e vai no menu AÇÃO> Criar tarefa Básica 2 - Dê um nome a ela (e Descrição se quiser) 3 - Escolha quando deseja que essa tarefa seja executada (diariamente) 4 - Ao apertar avançar você terá que escolher a hora. 5 - Ao avançar selecione Iniciar um programa, depois selecione qual programa no seu computador. (No meu caso uso a Caixa Econ, Fed. e não preciso abrir o programa e colocar usuario e senha para baixar o retorno. Peguei esse macete no suporte deles.) Se o seu for da CAixa também navegue pelo caminho C:\CAIXA\mercador\startClientCobranca.bat (pode-se criar até mesmo um atalho para area de trabalho e puzar o .ret direto sem senha do Cob ou Cobranca Caixa.) 6 - Aperte Concluir e pronto. Todos os dias no horário marcado o agendador do windows abrirá o programa e o mesmo baixará o RET automaticamente. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Agora para mandar por ftp automaticamente a uma pasta no servidor você vai usar o programa Fling FTP Que varre uma pasta e assim que encontra um novo arquivo envia ao servidor ftp. Não vou colocar o tuto aqui porque ele é pago e o meu expirou! Abs 0 Citar
redirect Postado Março 25, 2013 Postado Março 25, 2013 Para abrir o programa da caixa automaticamente todo dia a certa hora utilize o Agendador de Tarefas. 1 - Abra o agendador e vai no menu AÇÃO> Criar tarefa Básica 2 - Dê um nome a ela (e Descrição se quiser) 3 - Escolha quando deseja que essa tarefa seja executada (diariamente) 4 - Ao apertar avançar você terá que escolher a hora. 5 - Ao avançar selecione Iniciar um programa, depois selecione qual programa no seu computador. (No meu caso uso a Caixa Econ, Fed. e não preciso abrir o programa e colocar usuario e senha para baixar o retorno. Peguei esse macete no suporte deles.) Se o seu for da CAixa também navegue pelo caminho C:\CAIXA\mercador\startClientCobranca.bat (pode-se criar até mesmo um atalho para area de trabalho e puzar o .ret direto sem senha do Cob ou Cobranca Caixa.) 6 - Aperte Concluir e pronto. Todos os dias no horário marcado o agendador do windows abrirá o programa e o mesmo baixará o RET automaticamente. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Agora para mandar por ftp automaticamente a uma pasta no servidor você vai usar o programa Fling FTP Que varre uma pasta e assim que encontra um novo arquivo envia ao servidor ftp. Não vou colocar o tuto aqui porque ele é pago e o meu expirou! Abs obrigado, diego, a sua dica foi uma das mais úteis que já vi por aqui, acredito que irá ajudar muita gente. obrigado! 0 Citar
DiegoFernando Postado Março 25, 2013 Postado Março 25, 2013 redirect, Em qual local na whmcs está o exemplo de módulo para retorno de pagamento?? obrigado. 0 Citar
redirect Postado Março 25, 2013 Postado Março 25, 2013 redirect, Em qual local na whmcs está o exemplo de módulo para retorno de pagamento?? obrigado. tem aqui http://docs.whmcs.com/Creating_Modules aqui http://docs.whmcs.com/Gateway_Module_Developer_Docs e aqui http://docs.whmcs.com/API mas o site deles é meio confuso e encontra-se mais informações importantes. 0 Citar
DiegoFernando Postado Março 26, 2013 Postado Março 26, 2013 redirect, Consegui fazer o pagamento de uma fatura pelo API. Agora qual o filho de Deus que vai integrar o retorno PHP com o API!! Código: ////////////////////////////// <?php $url = "http://www.seusite.com.br/pastadowhmcs/includes/api.php"; # URL to WHMCS API file $username = "xxxxx"; # Usuário do admin $password = "xxxxx"; # Senha do admin $postfields["username"] = $username; $postfields["password"] = md5($password); $postfields["action"] = "addinvoicepayment"; #função que marca como pago a fatura $postfields["invoiceid"] = "1283"; #número da fatura (aqui eu acho que deve se chamar do arquivo RET) $postfields["gateway"] = "mailin"; #Esse é pra mandar o email de fatura paga, eu acho kkk $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 100); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields); $data = curl_exec($ch); curl_close($ch); $data = explode(";",$data); foreach ($data AS $temp) { $temp = explode("=",$temp); $results[$temp[0]] = $temp[1]; } if ($results["result"]=="success") { # Result was OK! } else { # An error occured echo "The following error occured: ".$results["message"]; } ?> ++++++++++++++++++++++++++++++++++++++++ Para usar o código basta criar um arquivo php em uma pasta do servidor e acessar pelo navegador (depois que configurar podemos esconder o arquivo no dir home para não ficar acessível dentro do /www no servidor.). Assim que você acessa no navegador o whmcs marca como pagas as faturas e dispara o email. Depois de tudo funcionando podemos criar uma tarefa cron diária para automatizar. Mas precisamos pegar o retorno antes do horário em que o whmcs dispara os avisos de fatura em atraso e suspensões. Normalmente a caixa disponibiliza o retorno cedo da manhã! Qualquer coisa mais que eu possa ajudar... estou aqui! Abs 0 Citar
redirect Postado Março 26, 2013 Postado Março 26, 2013 Você pode colocar esse arquivo fora do public_html e acioná-lo pelo cron job do cpanel. Obrigado pela contribuição! 0 Citar
Alexandre Aleixo Postado Março 27, 2013 Postado Março 27, 2013 Primeiramente, diego123 e redirect, obrigado pelas contribuições. diego123, você conseguiu fazer exatamente a parte que eu estava enrolando pra fazer... O que eu consegui até hoje foi pegar os arquivos que o danielvisnet forneceu no início do tópico e exibir os dados do arquivo de retorno em variáveis PHP. Agora que a inserção dos dados está pronta via API (fiz apenas algumas modificações no código do diego123, como incluir a variável de valor pago, data e etc), fazer a integração das variáveis que eu já tinha feito, com a api vai ser moleza :-) Acho que hoje ainda consigo disponibilizar algo... Retorno assim que tiver algo. Abraços e mais uma vez obrigado a todos que contribuiram. 0 Citar
DiegoFernando Postado Março 27, 2013 Postado Março 27, 2013 Não se esqueça de fazer o script ler o arquivo RET de uma pasta no servidor, pois eu já consegui automatizar o envio do RET via FTP. Aí fica 100% automático usando o cron job e o automatizador de tarefas do windows, . Futuramente é possível programar em java para puxar o RET. Isso quem me disse que é possível foi o pessoal da caixa e também alguem aqui no forum já fez pro bradesco... isso é bom porque elimina o nosso pc ligado fazendo isso. 0 Citar
Posts Recomendados
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.
Nota: Sua postagem exigirá aprovação do moderador antes de ficar visível.