magento
Integração ao Bradesco
Atender o mercado de módulos para Magento oferecendo melhorias e um excelente suporte
Para obter o devido suporte Clique aqui, relatando o motivo da ocorrência o mais detalhado possível e anexe o print da tela para nosso entendimento
No checkout é feito o processo de autorização
Na página de sucesso é exibido a janela que acessa o tipo de pagamento
Via CRON deve ser processado a notificação da transação,
No processamento da notificação caso o pagamento seja confirmado, deve ser alterado o “state/status” do pedido para “processing” ou seja “Processando”, liberando as ações para processar a fatura e o envio
Antes do envio da mercadoria, sempre confira as informações do pedido, se o status da transação está sendo exibido que o pagamento foi confirmado, inclusive junto a operadora financeira se a transação foi capturada, caso algo esteja inconsistente será necessário cancelar o pedido até a correção da ocorrência
Quando o pedido é enviado o status é alterado para “complete” ou seja “Completo”
Foi implementada automação para a cada 5 minutos ser feito a consulta do status da transação para ser atualizado o status do pedido
Para o uso do método é necessário ativar a CRON para o Magento
Clique aqui para visualizar o documento da MOZG
Certifique-se de que ação esteja sendo executado a cada minuto
Esse módulo usa o cronjob para processar as notificações
O módulo executa as notificações que foram recebidas há pelo menos 5 minutos.
Gostaria de apresentar o aplicativo que disponibilizei para a plataforma Heroku
Com apenas 1 clique, o aplicativo cria sua loja virtual usando a plataforma de comércio eletrônico Magento e instala os módulos da MOZG
https://github.com/mozgbrasil/heroku-magento#descrição
—
Sugiro “printar” as telas com todos os procedimentos executados
Envie para nós as imagens das telas na eventualidade de quaisquer dificuldades
—
Este módulo destina-se a ser instalado usando o Composer
Execute o seguinte comando no terminal, para visualizar a existencia do Composer e sua versão
composer --version
Caso não tenha o Composer em seu ambiente, sugiro ler o seguinte artigo Clique aqui
—
É necessário que o servidor tenha o suporte a extensão ionCube PHP Loader
Para visualizar a existência da extensão nesse ambiente denominado PHP CLI, execute o seguinte comando no terminal
php -v
Para visualizar se essa extensão está ativa em seu servidor no ambiente denominado PHP WEB
Certique se da presença do arquivo phpinfo.php na raiz do seu projeto
<?php phpinfo(); ?>
Caso não exista o arquivo phpinfo.php na raiz do projeto Magento, crie o mesmo adicionado o conteúdo acima
Acesse o arquivo pelo browser
Em seguida pesquise pelo termo “ionCube PHP Loader”
Caso o seu servidor não tenha o suporte a extensão, entre em contato com sua empresa de hospedagem e peça para que eles ativem a extensão
Caso tenha a permissão e queira ativar a extensão, Clique aqui
Em “Loader Downloads API”, efetue download do pacote compatível com o seu servidor
Descompacte o pacote e faça upload do arquivo “loader-wizard.php” para seu servidor, onde será demonstrado o passo a passo para a ativação da extensão
Clique aqui para ver os processos executados
—
Na presença do “ionCube PHP Loader” efetue o download do seguinte arquivo e coloque na raiz do seu servidor e acesse, se funcionar quer dizer que o “ionCube” está lendo esse tipo de encriptação
—
Para utilizar o(s) módulo(s) da MOZG é necessário aceitar o Acordo de licença do usuário final
—
Sugiro manter um ambiente de testes para efeito de testes e somente após os devidos testes aplicar os devidos procedimento no ambiente de produção
—
Sugiro efetuar backup da plataforma Magento e do banco de dados
—
Antes de efetuar qualquer atualização no Magento sempre mantenha o Compiler e o Cache desativado
—
Certique se da presença do arquivo composer.json na raiz do seu projeto Magento e que o mesmo tenha os parâmetros semelhantes ao modelo JSON abaixo
{
"minimum-stability": "dev",
"prefer-stable": true,
"license": [
"proprietary"
],
"repositories": [
{
"type": "composer",
"url": "https://packages.firegento.com"
}
],
"extra": {
"magento-root-dir": "./",
"magento-deploystrategy": "copy",
"magento-force": true
}
}
Caso não exista o arquivo composer.json na raiz do projeto Magento, crie o mesmo adicionado o conteúdo acima
composer require mozgbrasil/magento-bradesco-php_72:dev-master
Você pode verificar se o módulo está instalado, indo ao backend em:
STORES -> Configuration -> ADVANCED/Advanced -> Disable Modules Output
—
Antes de efetuar qualquer processo que envolva atualização no Magento é recomendado manter o Compiler e Cache desativado
composer update
Na ocorrência de erro, renomeie a pasta /vendor/mozgbrasil e execute novamente
Para checar a data do módulo execute o seguinte comando
grep -ri --include=*.json 'time": "' ./vendor/mozgbrasil
—
composer remove mozgbrasil/magento-bradesco-php_72
—
Antes de efetuar qualquer processo que envolva atualização sobre o Magento é necessário manter o Compiler e Cache desativado
Caso queira desativar os módulos da MOZG renomeie a seguinte pasta app/code/local/Mozg
A desativação do módulo pode ser usado para detectar se determinada ocorrência tem relação com o módulo
Para configurar o método de pagamento, acesse no backend em:
STORES -> Configuration -> Sales/Payment Methods -> Bradesco (powered by MOZG)
Você terá os campos a seguir
Deve ser informado o devido ambiente
Ao se logar em
https://homolog.meiosdepagamentobradesco.com.br/gerenciadorapi/login.jsp
Na parte superior direita temos essa informação como MID
Em
https://homolog.meiosdepagamentobradesco.com.br/gerenciadorapi/meiopagamento/form
É possível gerar a chave de segurança caso não tenha definido
A informação deve ser fornecido pelo Bradesco
A informação deve ser fornecido pelo Bradesco
Status dos pedidos recém-criados, antes da confirmação de resultado de pagamento via notificações de servidor da operadora
Status dos pedidos após autorização confirmada por uma notificação de AUTORIZAÇÃO da operadora
Status dos pedidos após captura confirmada por uma notificação de AUTORIZAÇÃO da operadora
Status dos pedidos após cancelamento confirmada por uma notificação de CANCELAMENTO da operadora
Se as encomendas já estiverem faturadas, não poderão ser canceladas
Selecione somente o status atribuído ao estado concluído, deixe vazio para usar o mesmo que os produtos normais
Status dos pedidos após reembolso confirmada por uma notificação de REEMBOLSO da operadora
Status dos pedidos após reembolso (parcial) confirmada por uma notificação de REEMBOLSO_PARCIAL da operadora. Recomendamos que não defina este status e deixe Magento decidir o status.
Status dos pedidos após notificação de PENDENCIA da operadora
A opção “automática” deve ser selecionado, na necessidade do uso dessa automação que deve ser executada no processamento da notificação que é executada via CRON
A opção “manual” deve ser selecionado, na necessidade de capturar a transação manualmente, essa ação é feita acessando a fatura do pedido e clicando no botão “Capturar”
Isso criará uma fatura pendente se a notificação de AUTORIZAÇÃO for recebida.
Nota: isto fará com que Magento empurre todas as encomendas para o estado: ‘Processamento’ uma vez que a factura é criada, ignorando todas as outras definições.
Se você habilitar esta função será feito uma solicitação de captura para a operadora se você fizer o envio
Se uma pedido é cancelada por algum motivo, mas recebeu uma notificação de que o pagamento é autorizado, isso cancelará automaticamente o pedido
Ativar / Desativar reembolso automático ao cancelar um pedido
Ativar / desativar atualizações de e-mails
Ativar / desativar e-mails de atualização para todas as alterações no status do pedido para o cliente
Deve ser armazenado os processos do módulo em var/log/
O arquivo
DATE_mozg.log
se trata de log do módulo sendo um log mais detalhado contendo todos os processos inclusive das execuções realizadas pelas bibliotecas externas do módulo
O arquivo
payment_METHOD.log
Se o reembolso for feito na operadora, e a mesma enviar uma notificação de reembolso para o Magento, deve ser criado automaticamente uma nota de crédito. Se você definir essa configuração como ‘Sim’, isso não acontecerá porque ele não processará nenhuma das notificações de REEMBOLSO recebidas.
Determina como os compradores são redirecionados após cancelar um pagamento.
Determina se os métodos de pagamento serão exibidos com seu logotipo ou apenas o nome.
Isso substituirá o local do cliente padrão do armazenamento do Magento.
Deixe vazio para deixar Magento decidir (Ex: nl_NL)
Isso irá substituir o país do endereço de faturamento do comprador ao determinar quais métodos de pagamento serão exibidos.
Para “ativar” ou “desativar” o uso do método
É a ordem apresentada em métodos de entrega no passo de fechamento de pedido
Nome do método que deve ser exibido
Você pode definir se o método deve funcionar para “Todos os Países aceito” ou “Especificar Países “
Você deve selecionar os países que o método deve ser funcional
Nome do beneficiário/cedente
Carteira
Vencimento
Logo
O tamanho da imagem deve ser de 120px largura por 80px de altura
Mensagem de cabeçalho exibida no topo do boleto
Instruções (máximo de três linhas)
Com Boleto é possível pagar menos do que o valor total. Selecione aqui o status, se este for o caso. Se você deixar isso em branco, ele tomará o status de pedido de pagamento autorizado como status padrão
Com Boleto é possível pagar mais do que o valor total. Selecione aqui o status, se este for o caso. Se você deixar isso em branco, ele tomará o status de pedido de pagamento autorizado como status padrão
Determine a visibilidade desse método de pagamento no frontend e/ou backend do Magento
Para “ativar” ou “desativar” o uso do método
É a ordem apresentada em métodos de entrega no passo de fechamento de pedido
Nome do método que deve ser exibido
Você pode definir se o método deve funcionar para “Todos os Países aceito” ou “Especificar Países “
Você deve selecionar os países que o método deve ser funcional
Selecione as bandeiras liberadas pela operadora
Com Boleto é possível pagar menos do que o valor total. Selecione aqui o status, se este for o caso. Se você deixar isso em branco, ele tomará o status de pedido de pagamento autorizado como status padrão
Com Boleto é possível pagar mais do que o valor total. Selecione aqui o status, se este for o caso. Se você deixar isso em branco, ele tomará o status de pedido de pagamento autorizado como status padrão
Determine a visibilidade desse método de pagamento no frontend e/ou backend do Magento
Primeiro deve ser feito o teste sobre o ambiente de homologação
Acesse o gerenciador do Bradesco
https://homolog.meiosdepagamentobradesco.com.br/gerenciadorapi/login.jsp
Acesse: Configurações -> Meios de Pagamentos
E obtenha as informações
merchantId=???
email=???
chaveSeguranca=???
Atualize essas configurações no método de pagamento no Magento
Crie um pedido de teste de R$ 1,00
Efetue testes de finalização do pedido
Caso seja exibido a transação do pedido
Envie e-mail para a Scopus solicitando homologação dessa integração e solicitando os dados para ser usados em ambiente de produção
https://meiosdepagamentobradesco.com.br/gerenciadorapi/login.jsp
Para o processamento do Boleto e TEF, a cada 5 minutos a CRON acessa a operadora para obter o status da transação a fim de efetuar o processamento da notificação
O serviço da CRON “mozg_bradesco_trigger_notification” deve estar operando
É mencionado acima o mesmo processo que deve ser executado no acesso a URL de notificação
-
Devido a possibilidade de incompatibilidade de TLS, entre os ambientes: Bradesco x Loja
A Scopus sugere a utilização da seguinte URL de notificação
https://meiosdepagamentobradesco.com.br/notification
Foi retornado o erro na tentativa de transação por boleto “O valor da Carteira deve conter o valor 25 ou 26” alterei para 26 e funcionou
Pode ser adicionado a imagem, contendo qualquer uma das nomenclaturas a seguir
E adicione a imagem no diretório do seu template
/skin/frontend//default/images/mozg_bradesco
Abaixo temos uma transação com o seguinte cabeçalho de autorização Que equivale ao recurso “base64_encode(merchantId:chaveSeguranca)” Podemos usar o seguinte serviço para codificar a informação Acesse e informe seu_merchantId:sua_chaveSeguranca No meu caso é os dados a seguir “100006873:mVyang6ifoF63d1a5PQjwnFCvkX34m_Y1ePDJcBk7rQ” Abaixo simulação usando o ambiente de teste do bradesco e meus dados, veja que funciona o retorno de autenticação suporte@cerebrum.com.br:mVyang6ifoF63d1a5PQjwnFCvkX34m_Y1ePDJcBk7rQ Sistema de Pagamento Seguro https://homolog.meiosdepagamentobradesco.com.br/manual/Manual_BoletoBancario.pdf https://homolog.meiosdepagamentobradesco.com.br/manual/Manual_ConsultaPedidos.pdf https://homolog.meiosdepagamentobradesco.com.br/manual/Manual_API_Transferencia.pdf Equipe MozgComo é criado o cabeçalho de autorização para a transação
--header 'Authorization: Basic MTAwMDA2ODczOm1WeWFuZzZpZm9GNjNkMWE1UFFqd25GQ3ZrWDM0bV9ZMWVQREpjQms3clE='
Simulação de autenticação
merchantId=100006873
email=suporte@cerebrum.com.br
chaveSeguranca=mVyang6ifoF63d1a5PQjwnFCvkX34m_Y1ePDJcBk7rQ
curl --request GET https://homolog.meiosdepagamentobradesco.com.br/SPSConsulta/Authentication/100006873 --header 'Content-Type: application/json' --header 'Authorization: Basic c3Vwb3J0ZUBjZXJlYnJ1bS5jb20uYnI6bVZ5YW5nNmlmb0Y2M2QxYTVQUWp3bkZDdmtYMzRtX1kxZVBESmNCazdyUQ==' --data '' --verbose
Simulação de transação para boleto
curl --request POST https://homolog.meiosdepagamentobradesco.com.br/apiboleto/transacao --header 'Content-Type: application/json' --header 'Authorization: Basic MTAwMDA2ODczOm1WeWFuZzZpZm9GNjNkMWE1UFFqd25GQ3ZrWDM0bV9ZMWVQREpjQms3clE=' --data '{
"merchant_id":"100006873",
"meio_pagamento":"300",
"pedido":{
"numero":"145000639",
"valor":10000,
"descricao":"Compra pelo site http://127.0.0.1/public_html/magento-1.9.3.1-dev34/root/"
},
"comprador":{
"nome":"Eula Jackson",
"documento":"25739569000102",
"endereco":{
"cep":"08215070",
"logradouro":"Avenida Córrego do Jacuu",
"numero":"12",
"complemento":"ap. 23 B",
"bairro":"Itaquera",
"cidade":"São Paulo",
"uf":"CE"
},
"ip":"127.0.0.1",
"user_agent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:53.0) Gecko/20100101 Firefox/53.0"
},
"boleto":{
"beneficiario":"ACME (American Company Makes Everything)",
"carteira":"25",
"nosso_numero":"145000639",
"data_emissao":"2017-05-25",
"data_vencimento":"2017-06-01",
"valor_titulo":10000,
"url_logotipo":"",
"mensagem_cabecalho":"mensagem de cabecalho",
"tipo_renderizacao":"2",
"instrucoes":{
"instrucao_linha_1":"- instrucao_linha_1",
"instrucao_linha_2":"- instrucao_linha_2",
"instrucao_linha_3":"- instrucao_linha_3"
},
"registro":null
},
"token_request_confirmacao_pagamento":"a784f7b1e854b967da7fc2e2bc91ef2465712196"
}' --verbose
Simulação de transação para transferência eletrônica
curl --request POST https://homolog.meiosdepagamentobradesco.com.br/transf/transacao --header 'Content-Type: application/json' --header 'Authorization: Basic MTAwMDA2ODczOm1WeWFuZzZpZm9GNjNkMWE1UFFqd25GQ3ZrWDM0bV9ZMWVQREpjQms3clE=' --data '{
"merchant_id":"100006873",
"meio_pagamento":"800",
"pedido":{
"numero":"145000641",
"valor":100,
"descricao":"Compra pelo site http://127.0.0.1/public_html/magento-1.9.3.1-dev34/root/"
},
"comprador":{
"nome":"Eula Jackson",
"documento":"25739569000102",
"endereco":{
"cep":"08215070",
"logradouro":"Avenida Córrego do Jacuu",
"numero":"12",
"complemento":"ap. 23 B",
"bairro":"Itaquera",
"cidade":"São Paulo",
"uf":"CE"
},
"ip":"127.0.0.1",
"user_agent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:53.0) Gecko/20100101 Firefox/53.0"
},
"token_request_confirmacao_pagamento":"a784f7b1e854b967da7fc2e2bc91ef2465712196"
}' --verbose
Dados de contato - SCOPUS TECNOLOGIA
Suporte Técnico
Scopus Tecnologia
(11) 3909-3482
(11) 3909-3637
kit@scopus.com.br, homologacao@scopus.com.br, comerciobradesco@scopus.com.brManual
Contribuintes
License
Badges