Fórum OpenCart Brasil

Por um e-commerce livre, confiável e profissional

Suporte para extensões de Formas de Pagamento
Avatar do usuário
Por acesbrasil
Mensagens
#11705
Olá Pessoal.

"Fuçando" os porões secretos e abandonados por aí, encontrei esse módulo do Cobredireto para o Opencart 1.5 https://github.com/boldcron/opencart porém ele não está totalmente compatível com a versão 1.5.1.3.

O criador deste módulo é o Mota, foi ele quem fez a versão que funciona no 1.4.9.x e está disponível no site da Cobredireto que é um Gateway de Pagamentos da empresa Cobre Bem que pertence ao grupo UOL.

Esta atualização também foi feita por ele mas só foi até a versão 1.5 e depois parou. Já tentei contato com ele e estou no aguardo. Quem quiser tentar também o email dele esta dentro dos arquivos.

Depois que eu instalei na versão 1.5.1.3 quando a gente chega na última etapa, quando clica no botão "Confirmar Pedido" que é botão que vai levar a página de pagamento (página esta que pode ser personalizada no ambiente do CobreDireto fazendo parecer que é uma página da sua loja ) eu obtenho a seguinte mensagem de erro:

Fatal error: Call to undefined method Tax::getRate() in /home/acesbrasil/public_html/loja/catalog/model/payment/cobredireto.php on line 64

Eu removi essa linha e o sistema funcionou perfeitamente, entendo por dedução lógica que esta linha seja para capturar (get) as taxas dos impostos (tax) (rate = razão, proporção...) e que isso pode influenciar no valor enviado para o Cobredireto.

Porém como minha loja não utiliza (ainda) o uso de impostos, eu deixei sem temporariamente até que o mestres do PHP aqui do fórum nos apresentem uma solução

Creios que para os mestres do PHP aqui do fórum a solução vai ser fácil e estamos todos aguardando para poder com a contribuição de vocês, termos mais um grande opção nas formas de pagamento, pois no Cobredireto você tem custos muito mais baixos, podendo usar isso de forma mais competitiva para poder financiar sem juros e etc.

OBS: Procure conheccer os benefícios e diferenças entre Gateways de Pagamento e Intermediaores de Pagamento, principalmente a relação de Custos X Benefício, por exemplo, proteção contra chargeback, prazo de recebimento e etc.
Avatar do usuário
Por Manoel Vidal
Mensagens Curtidas
#11707
Se eu não me engano resolveria trocando getRate() por getRates() que é o nome da função correta nas versões mais atuais, você poderia testar e dar um feedback ?

Espero ter ajudado :D
Avatar do usuário
Por acesbrasil
Mensagens
#11710
Manoel Vidal escreveu:Se eu não me engano resolveria trocando getRate() por getRates() que é o nome da função correta nas versões mais atuais, você poderia testar e dar um feedback ?

Espero ter ajudado :D
Vida (mestre dos magos) quando eu instalei este módulo na versao 1.5.1.3 eu instalei com a loja toda em inglês e depois da sua recomendação acima, fiz testes e funcionaram muito bem, mas ao instalar a tradução para o Português tive esse problema ao tentar no link das opções de pagamento:

Notice: Error: Could not load language payment/cobredireto! in /home/acesbrasil/public_html/loja/system/library/language.php on line 26

Entretanto, o módulo funciona perfeitamente com a loja toda em Português, apenas impede o acesso ao menu informado

Copiei o arquivo cobredireto.php da pasta /admin/language/english para a pasta /admin/language/portuguese-br e este problema foi resolvido

Agora é só pedir que o pessoal baixe e faça os testes, lembrando que o Cobre Direto concede gratuitamente um ambiente de simulação com total suporte e manual de integração.
Avatar do usuário
Por acesbrasil
Mensagens
#11751
Manoel Vidal escreveu:Publiquei uma versão beta em contribuições:
https://forum.opencartbrasil.com.br/ ... =18&t=2306
O log tá registrando isso aqui:

PHP Notice: Undefined variable: action in /home/acesbrasil/public_html/loja/catalog/view/theme/default/template/payment/cobredireto.tpl on line 1
Por dbomfim
#15080
Se eu não me engano resolveria trocando getRate() por getRates() que é o nome da função correta nas versões mais atuais, você poderia testar e dar um feedback ?
Sim, funcionou!! No entanto precisa passar 2 parâmetros para a função. no meu caso ficou assim:
Código: Selecionar todos
'tax' => $this->tax->getRates($product['total'],$product['tax_class_id'])
Deu certo!!

Abraços