Jump to content

[Módulo Grátis] Boleto Bancário Caixa, Itaú e Santander - Prestashop 1.6


Recommended Posts

Prezados Amigos,
 
Após algum trabalho criei 2 opções de boleto para atenderem Caixa Econômica (boletocef) e Itaú (boletoitau).

 

Agora boletos Caixa Econômica (boletocef), Itaú (boletoitau) e Santander (boletosantander).

 

 
A base dos módulos é a mesma discutida neste tópico: https://www.prestashop.com/forums/topic/210001-boleto-bancário-prestashop-15x-por-prestabr/ que atende bem a versão 1.5.
 
O que há de novo:
 
- Boleto individualizado por banco
- Registro no BO do desconto para pagamento por boleto, quando houver.
 
O registro do desconto é realizado através da criação automática de um Voucher/Cupom que é aplicado na finalização do carrinho sem que o usuário tenha que digitar qualquer código.
 
Como nem tudo é perfeito, para emissão de 2ª via do boleto no BO é necessário fazer uma alteração simples do arquivo:
admin/themes/default/template/controllers/orders/helpers/view/view.tpl 
Mais ou menos na linha 542 antes da abertura de <!-- Customer informations --> cole o código abaixo:

<!-- Segunda Via Boleto -->
{if ($order->module) == 'boletoitau' and ($order->current_state==13) }
<div id="boleto" class="panel">
	<div class="panel-heading">
	<i class="icon-barcode"></i>
	{l s='2ª Via Boleto'}
	</div>
	<div class="panel">
	{assign var=valor_boleto value=$order->total_paid_tax_incl}
        <!-- Boleto block -->
        <a class="btn btn-primary" href="../modules/boletoitau/gera_boleto.php?id_cart={$order->id_cart}&id_order={$order->id}&id_module=77" target="_blank"><i class="icon-print icon-large"></i> Imprimir segunda via</a>	
	</div>
</div>
{/if}

Atenção para algumas informações:

- Após a instalação do módulo verifique a ID do current_state, caso seja diferente de 13 altere

- Se utilizar o boleto Caixa altere na 1ª linha e no href de boletoitau para boletocef

- Pesquise na tabela ps_module a ID de instalação do módulo e altere id_module para o seu ID

 

Quando tiver um tempo vou automatizar este processo e fazer outras melhorias.

 

Outro detalhe é que o módulo não tem opção de 2ª via no painel do cliente, quem tiver necessidade desta opção poderá seguir o modelo acima e implantar para o cliente também.

 

Quanto a possíveis dúvidas de estarem funcionando com parâmetros corretos dos bancos, tenho ambos em produção sem qualquer problema, inclusive no caso da Caixa houve homologação aprovada.

 

 

Por favor testem e postem suas dúvidas neste tópico, sempre que tiver um tempo estarei respondendo.

boletocef-1.0.zip

boletoitau-1.0.1.zip

boletosantander-1.0.1.zip

Edited by mstange (see edit history)
  • Like 7
Link to comment
Share on other sites

Alterar o código do core do Prestashop é uma má prática, pelo que deve ser evitado a todo o custo, pois o Prestashop dá-nos a possibilidade de alterar esse código sem alterar uma linha sequer no código original... esta funcionalidade chama-se overrides.

 

Para o caso acima de querer efectuar um override a um template admin deverá seguir as instruções da documentação oficial em http://doc.prestashop.com/display/PS16/Views+within+PrestaShop .

 

Não se esqueçam que se querem tirar o melhor partido desta Plataforma, seja como simples utilizador ou programador devem sempre ler a documentação oficial, pois assim evitam muitas dores de cabeça desnecessárias e também muitas perguntas que tem lá a resposta ;)

  • Like 2
Link to comment
Share on other sites

Amigo, tudo bem?

 

To com o maior problema para instalar na versão 1.6.08 mas com o banco Santander, vc conseguiria liberar para o Santander Também? 

 

Pretendo criar em breve as variações para Bradesco e Santander, mas ainda não tenho data certa.

Link to comment
Share on other sites

Tudo certo com a segunda via, só que aqui segui os passos indicados pelo @exadra37, criei um caminho em override override/controllers/admin/templates/orders/helpers/view, copiei o view.tpl e colei na pasta view no override, modificou de boa o

Que ótimo que deu certo.

Minha idéia é postar na próxima semana um ajuste do módulo já com esse override nativo.

Link to comment
Share on other sites

Amigo, fiz a instalação do boleto Itau mas não está gravando o desconto no BO o valor da compra continua bruto...o que pode ser?

RCAMU, primeiro verifique nas regras do carrinho se aparece cadastrado o voucher/cupom de nome "BLTBANK" se não estiver aparecendo é porque ocorreu um erro no registro do desconto que você lançou na instalação do módulo.

Acabei de postar uma nova versão que corrige a query de exclusão do voucher/cupom quando o valor do desconto é alterado para zero.

Link to comment
Share on other sites

Boa Tarde sou iniciante no PrestaShop contudo consegui instalar o modulo de pagamento BOLETO da Caixa e Itau... Dentre tanto quando clico na forma de pagamento boleto Itau por Exemplo e depois em Concluir simplesmente aparece uma tela em branco e não imprime o boleto.. Tanto Itau quanto da Caixa.... Gostaria de saber dos nobres colegas o que poderia estar acontecendo? Alem das contas tenho que configurar algo a mais?

 

Aguardo

Link to comment
Share on other sites

Boa Tarde sou iniciante no PrestaShop contudo consegui instalar o modulo de pagamento BOLETO da Caixa e Itau... Dentre tanto quando clico na forma de pagamento boleto Itau por Exemplo e depois em Concluir simplesmente aparece uma tela em branco e não imprime o boleto.. Tanto Itau quanto da Caixa.... Gostaria de saber dos nobres colegas o que poderia estar acontecendo? Alem das contas tenho que configurar algo a mais?

 

Aguardo

Por favor ative o debug do prestashop em config/defines.inc.php e altere define('_PS_MODE_DEV_', false); para define('_PS_MODE_DEV_', true); 

Assim vc poderá identificar melhor o erro.

Link to comment
Share on other sites

Por favor ative o debug do prestashop em config/defines.inc.php e altere define('_PS_MODE_DEV_', false); para define('_PS_MODE_DEV_', true); 

Assim vc poderá identificar melhor o erro.

 

 

Cara esta dando o seguinte: Tenho que alterar algo?

 

[PrestaShopDatabaseException]

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

 

UPDATE `ps_cart_rule` SET `active` = 1 WHERE `id_cart_rule`=

 

at line 646 in file classes/db/Db.php

 

641.             WebserviceRequest::getInstance()->setError(500, '

 '.$this->getMsgError().'. From '.(isset($dbg[3]['class']) ? $dbg[3]['class'] : '').'->'.$dbg[3]['function'].'() Query was : '.$sql, 97);

642.         }

643.         elseif (_PS_DEBUG_SQL_ && $errno && !defined('PS_INSTALLATION_IN_PROGRESS'))

644.         {

645.             if ($sql)

646.                 throw new PrestaShopDatabaseException($this->getMsgError().'<br /><br /><pre>'.$sql.'</pre>');

647.             throw new PrestaShopDatabaseException($this->getMsgError());

648.         }

649.     }

650.

651.     /**

Link to comment
Share on other sites

RCAMU, primeiro verifique nas regras do carrinho se aparece cadastrado o voucher/cupom de nome "BLTBANK" se não estiver aparecendo é porque ocorreu um erro no registro do desconto que você lançou na instalação do módulo.

Acabei de postar uma nova versão que corrige a query de exclusão do voucher/cupom quando o valor do desconto é alterado para zero.

 

A regra aparece no carrinho o desconto é feito no boleto mas o valor do pedido fica o valor total e não grava o desconto no campo desconto

Link to comment
Share on other sites

Cara esta dando o seguinte: Tenho que alterar algo?

 

[PrestaShopDatabaseException]

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

 

UPDATE `ps_cart_rule` SET `active` = 1 WHERE `id_cart_rule`=

 

at line 646 in file classes/db/Db.php

 

641.             WebserviceRequest::getInstance()->setError(500, '

 '.$this->getMsgError().'. From '.(isset($dbg[3]['class']) ? $dbg[3]['class'] : '').'->'.$dbg[3]['function'].'() Query was : '.$sql, 97);

642.         }

643.         elseif (_PS_DEBUG_SQL_ && $errno && !defined('PS_INSTALLATION_IN_PROGRESS'))

644.         {

645.             if ($sql)

646.                 throw new PrestaShopDatabaseException($this->getMsgError().'<br /><br /><pre>'.$sql.'</pre>');

647.             throw new PrestaShopDatabaseException($this->getMsgError());

648.         }

649.     }

650.

651.     /**

Faça a reinstalação do módulo, entre com os parâmetros de configuração e faça um novo teste. Esse erro ocorreu por não ter sido encontrado a regra de desconto do carrinho.

Link to comment
Share on other sites

A regra aparece no carrinho o desconto é feito no boleto mas o valor do pedido fica o valor total e não grava o desconto no campo desconto

Tem alguma mudança/personalização por override na sua instalação do prestashop? Qual a versão que está usando?  

Link to comment
Share on other sites

Tem alguma mudança/personalização por override na sua instalação do prestashop? Qual a versão que está usando?  

Estou usando a versão 1.6.08 apenas estou usando o modulo transferência bancaria com desconto será que é isso?

Esse modulo está funcionando normalmente..

 

Obrigado por disponibilizar o Banco Santander

Link to comment
Share on other sites

Bom dia,

 

Baixei essa versão para Santander. 

Porém, na hora de gerar o boleto ele vai para uma página em branco com a seguinte url: meudominio/module/boletosantander/validation

 

O que pode ser isso? Algum problema com o banco? 

 

Presta 1.6.0.9

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Alguém pode me dar uma luz ? to tentando instalar uns módulos na loja mas diz assim quando clico em adicionar novos módulos:

 

"

Posso adicionar meus próprios módulos?

Por favor, entenda que, por questões de segurança, você só pode adicionar módulos distribuídos pelo Addons do PrestaShop, nosso MarketPlace oficial."

Link to comment
Share on other sites

Alguém pode me dar uma luz ? to tentando instalar uns módulos na loja mas diz assim quando clico em adicionar novos módulos:

 

"

Posso adicionar meus próprios módulos?

Por favor, entenda que, por questões de segurança, você só pode adicionar módulos distribuídos pelo Addons do PrestaShop, nosso MarketPlace oficial."

Esta a usar o Prestashop Cloud? Se sim não poderá usar este modulo como esta indicado na própria mensagem.

Link to comment
Share on other sites

  • 1 month later...
  • 3 weeks later...

Olá a todos, testei todos os tres bancos e nenhum funcionou 100%. O da caixa aparece o desconto para o cliente porém no comprovante de email aparece sem desconto e também no backofice.

Os outros dois quando se vai confirmar o pagamento fica em branco.

Uso o 1.6.0.9

Link to comment
Share on other sites

  • 2 weeks later...

Ola Pessoal

 

Instalei o modulo, mas não esta aparecendo o numero do pedido no campo nosso numero do boleto...

 

Tenho outro problema tambem,...

Como uso multiloja, preciso que saia no boleto o numero do pedido e o numero da loja.

Teria que ficar no campo nosso numero:

 

175/000 numero do pedido - id da loja

exemplo (175/00000100-1)

 

 

Segue o codigo atual php 

 

 $dadosboleto['valor_boleto'] = number_format((float)$valor_boleto, 2, ',', '.');
                $dadosboleto['nosso_numero_const1'] = "2";
                $dadosboleto['nosso_numero_const2'] = "4";
                $dadosboleto['nosso_numero3'] = ($id_order);
                $dadosboleto['numero_documento'] = (str_pad($id_order, 7, 0, STR_PAD_LEFT)); 
                $dadosboleto['data_vencimento'] = ($data_venc);
 
Link to comment
Share on other sites

  • 3 weeks later...
  • 3 weeks later...
  • 2 months later...
×
×
  • Create New...