Pular para o conteúdo
Categorias · 11. Configurações

Juros de cartão de crédito influenciando alíquotas

Atualizado em

Como funciona a nova configuração de cálculo de impostos no checkout

A partir desta atualização, o sistema passa a permitir que os juros aplicados pelo método de pagamento cartão possam ser considerados na base de cálculo do ICMS.

Isso significa que, além de calcular os impostos apenas sobre o valor do produto ou serviço, o sistema agora pode incluir os juros cobrados pelo meio de pagamento na formação da base do ICMS , quando configurado.

Com essa opção, o cálculo de impostos passa a refletir de forma mais precisa a real base de incidência exigida pela legislação, evitando divergências fiscais e diferenças entre o valor pago pelo cliente e o valor tributado.

1. Ativando a configuração “Considerar juros na base do ICMS”

Para habilitar essa opção, siga o caminho abaixo:

Configurações → Gerais → Pedidos

Na tela de configurações do carrinho, localize a opção “Considerar juros de método de pagamento na base do ICMS”.

Design sem nome.png

Ative a opção marcando o campo correspondente e clique em Salvar.

Quando ativada, o sistema passará a recalcular a base do ICMS automaticamente durante o checkout, incluindo os juros do método de pagamento no parcelamento com juros do cartão.

2. Cadastrando a alíquota para uso com juros

Para que o sistema consiga considerar os juros do método de pagamento no cálculo de ICMS, é obrigatório cadastrar uma alíquota específica para essa finalidade.

Acesse Configurações → Alíquotas e clique em Adicionar.

Na tela de criação da alíquota:

  1. Crie um código de referência e um nome descritivo (ex.: “ICMS com Juros de Pagamento”).

  2. No editor da fórmula, inclua a variável “Juros proporcional”, que representa o valor de juros aplicado ao método de pagamento escolhido pelo cliente no checkout.

  3. Monte a fórmula normalmente com as demais variáveis e regras fiscais necessárias.

1 (15).png
1b9ed1aa-0de4-49d5-bdb0-76115efee97f (1).png

❗ Atenção: A variável “Juros proporcional” é obrigatória quando o objetivo da alíquota for calcular o ICMS considerando os juros. Sem ela, o sistema não incluirá o valor dos juros na base do imposto, mesmo que a configuração geral esteja habilitada.

Após finalizar a configuração da alíquota, clique em Salvar. Essa alíquota será utilizada automaticamente pelo motor fiscal no momento do checkout, sempre que o cliente selecionar um método de pagamento com juros.

3. Como o sistema calcula o ICMS com juros

Durante o processo de checkout, ao selecionar o método de pagamento com juros (como um cartão parcelado) (4), o sistema identifica o acréscimo e recalcula a base de ICMS, somando os juros (5) ao valor total do pedido (6).

0dab986f-f0c4-4f48-9835-b72afd60470f.png
985dbed2-5d54-4917-b45c-b0ab39adc3b6.png

4. Situações em que o cálculo não muda

Existem cenários em que o comportamento do sistema permanece o mesmo:

  • Método de pagamento sem juros: O cálculo do ICMS continua sendo feito apenas sobre o valor do produto ou serviço.

  • Configuração desabilitada: Mesmo que o método de pagamento tenha juros, eles não serão considerados na base do ICMS.

  • Alíquota sem a variável “Juros proporcional”: Os juros não serão incluídos no cálculo do imposto.

5. Como modificar o front-end

Clientes que utilizam template personalizado de checkout precisam realizar uma atualização manual no arquivo index.html do seu template para garantir o correto funcionamento da nova regra de juros de cartão na base de ICMS. Essa atualização é necessária para que o cálculo atualizado do ICMS, incluindo os juros de parcelamento, seja refletido corretamente no checkout.

Etapas para atualização

  1. Acesse o template do checkout personalizado do seu ambiente.

  2. Localize o arquivo index.html correspondente.

  3. Antes da linha que contém:

    $(document).ready(function ()

    substitua ou inclua se não tiver, o seguinte bloco de código:

    let installmentsTotal = 0; (function ($) { var aliquotCalculator; var rawData = "{{aliquotVar}}"; rawData = rawData.replace(/"/g, '\"'); var aliquotsData = JSON.parse(rawData); var isPurchaseDigitalProducts = $('#is-purchase-of-digital-products').val(); {% include 'FlexyFtwoStoreBundle:Checkout:renderCreditcardInstallments.js.twig' %};

  4. Em seguida, dentro do bloco $(document).ready(function (), substitua ou inclua se não tiver também somente a parte do código abaixo:

    $("#checkout_installments").off("change").on('change', function (e) { // Coleta todas as variáveis necessárias para os cálculos const currentBrand = $("[name='checkout[paymentMethod][0][name]']:checked").val() || ''; const currentSubscriptionPlan = $("select[name='checkout[subscription_plan_id]']").val(); const currentCreditCardDiscountText = hasSubscriptionPlan() && currentSubscriptionPlan ? '' : configCreditCardDiscountText(currentBrand); // Coleta valores das alíquotas let currentAliquotsTotal = 0; const aliquotsElements = document.getElementsByClassName("aliquots-total"); if (aliquotsElements.length > 0) { const aliquotsTotalLi = aliquotsElements[0]; const unformattedAliquots = aliquotsTotalLi.innerText; const match = unformattedAliquots.match(/R\$\s*([\d,.]+)/); if (match && match[1]) { const valorString = match[1]; const formattedAliquot = valorString.replace(',', '.'); currentAliquotsTotal = parseFloat(formattedAliquot); } } // Parâmetros para a função handleInstallmentChange const params = { brand: currentBrand, subscriptionPlan: currentSubscriptionPlan, creditCardDiscountText: currentCreditCardDiscountText, aliquotsTotal: currentAliquotsTotal, billingTotal: billingTotal, shippingTotal: shippingTotal, shippingDiscount: shippingDiscount, paymentDiscount: paymentDiscount, shippingIpiTotal: shippingIpiTotal }; // Chama a função centralizada handleInstallmentChange('change_event', params); });

❗Atenções importantes

  • Somente clientes com template customizado precisam realizar essa alteração.

  • Clientes que utilizam o template padrão atualizado já possuem essa implementação nativa.

  • Após a inclusão do código, limpe o cache do navegador e do template antes de testar o checkout.

  • Em caso de dúvidas contate nosso suporte!

6. Boas práticas antes de ativar

⚠ Antes de habilitar a opção, recomenda-se:

  • Validar com o departamento fiscal ou contábil se a inclusão dos juros na base do ICMS é necessária para o seu regime tributário;

  • Cadastrar e revisar a alíquota com a variável “Juros proporcional” antes de ativar a configuração;

  • Garantir que os dados fiscais dos produtos estejam corretos, para evitar inconsistências.