Cotação de Moedas, Magento Cambista

Escrito por Mario SAM

Já falamos aqui no blog sobre a internacionalização de lojas Magento, onde podemos configurar diversos idiomas de navegação no frontend da loja.

Mas só alterar o idioma não ajuda muito a vender, é preciso alterar também a moeda de representação monetária – os valores dos produtos. E o Magento possui um módulo nativo para esse controle de câmbio, que veremos abaixo como funciona.

Menos é mais

Assim que instalamos o Magento, por padrão, ele carrega diversas moedas. Mas o normal seria utilizarmos apenas uma (ou duas) moedas no sistema.

Então carregar menos moedas no sistema é mais inteligente e otimizado para sua loja. Para isso acesse:

Sistema > Configuração > Avançado > Sistema [Moeda]

Na lista de moedas instaladas você deve selecionar apenas as que deseja usar no sistema, para que ele não carregue opções desnecessárias.

selecionar moedas do sistema

Neste exemplo iremos trabalhar com Real Brasileiro e Dólar Norte-Americano.

Preços na vitrine

Por padrão, o sistema exibe apenas uma moeda na sua visão de loja, apenas a moeda padrão – informada durante a instalação do Magento.

Para ter outras opções de moeda, você deve acessar:

Sistema > Configuração > Geral > Configuração de Moedas [Opções e Moeda]

No campo “Moedas Permitidas” serão listados todas as moedas do sistema, aquelas que você configurou anteriormente. Basta selecionar as opções que deseja disponibilizar em frontend.

moedas permitidas

O campo “Moeda Base” é referente à cobrança dos produtos, como os clientes devem considerar a compra/pagamento dos itens, então mesmo visualizando em outra moeda o formato válido para pagamento é o da moeda base. Por padrão você tem apenas uma moeda base para todo o sistema, caso queira ter uma moeda base para cada website, você deve primeiro ir em:

Sistema > Configuração > Catálogo > Catálogo [Preço]

E alterar o escopo de preços para “Website“.

escopo de preços por website

Em seguida você deve reindexar os índices das tabelas conforme solicitado pelo sistema.

Se você alterar o escopo para “website” durante a criação/edição de um produto, pode definir preços diferentes para o mesmo produto. (exemplo no vídeo)

Já o campo “Exibir Moeda Padrão” influencia apenas na forma como seus produtos serão apresentados durante a navegação do usuário. Assim que ele entrar na sua loja, antes dele escolher o formato de moeda que deseja visualizar, qual a moeda será apresentada? Você decide neste campo.

Fazendo a cotação

Não basta apenas selecionar as opções de moedas para o sistema, é preciso informar o valor cambial de cada nova cifra. Para isso você precisa acessar:

Sistema > Gerenciar Moeda > Tarifas

Alguns campos estarão em branco para você preencher manualmente, ou… basta clicar no botão [+ Importar]. E a cotação será importada automaticamente do serviço Webservicex.

controle de cambio

Se você estiver de acordo com o valor informado, basta clicar em Salvar.

Agora que o sistema conhece os valores de cada moeda, ele pode apresentar na visão da sua loja as opções para o cliente escolher como deseja visualizar os preços.

seleciona sua moeda visitante

Atualize a página (e o cache se necessário) para ver o resultado. No final do post eu revelo qual arquivo é responsável por essa apresentação.

Controle de câmbio

Você provavelmente não deseja fazer esse controle manualmente, todo dia acessando o backend para atualizar os preços do dólar/euro/real, etc. Por isso vamos a mais algumas configurações, em:

Sistema > Configuração > Geral > Configuração de Moedas [Webservicex]

Você tem apenas um campo, no qual não precisa se preocupar.

tempo conexao webservicex

Este campo informa em segundos, por quanto tempo ele vai tentar uma conexão com o webservice da Webservicex para obter atualização dos valores. Mas você pode aumentar esse número caso queira uma garantia maior de resposta do servidores deles.

Agora a configuração que realmente interessa fica em:

Sistema > Configuração > Geral > Configuração de Moedas [Opções de Importação Agendadas]

Aqui não tem muito o que explicar, é tudo bem sugestivo na verdade – sem truques.

configuracoes de agendamento webservicex

Basta “habilitar” o módulo. O serviço disponível é apenas o “Webservicex“, pelo menos até a versão 1.7.0.2 do Magento CE. A frequência normalmente será “Diariamente“, pois os valores são sempre atualizados. O horário é uma decisão mais administrativa, você pode fazer isso todo dia à meia-noite, ou então após o fechamento do pregão.

Os últimos 3 (três) campos referentes ao campo email, são para os casos em que a cotação automática falhar – assim você pode ser avisado por email.

Os arquivos de leiaute

No template padrão do Magento, este campo de seleção de moedas é apresentado sempre na coluna da esquerda. Caso queira modificar isso, saiba que o arquivo responsável por ele é o directory.xml que fica em:

app > design > frontend > base > default > layout > directory.xml

E o arquivo currency.phtml é quem carrega as informações na tela:

app > design > frontend > base > default > template > directory > currency.phtml

Lembre-se de nunca alterar o arquivo em base/default, faça sempre uma cópia dele para default/default, ou então para seu template/tema customizado.

E basicamente é isso que você precisa saber sobre o controle de moedas no Magento. Qualquer dúvida basta acessar o fórum da Escola Magento.

Sucesso!

O Autor

Mario SAM

Desenvolvedor Magento com certificação M1 Developer e M1 FrontEnd Developer. Graduado em Web Design e Programação, pós-graduado em Gestão de Projetos e TI. Não sou matemático mas estou aqui para somar.