Page tree

Configuração sobre impostos variáveis


Produto: Microsiga Protheus

Versões: 11 e 12
Ocorrência: Como realizar configuração para impostos variáveis ?

Rotina de Impostos Variaveis:
Permite a criação e tratamento de impostos, com o objetivo de facilitar a localização da tributação para outros países.
Pode ser utlizada para criação de impostos nacionais, apesar de não ser aconselhável, pois devido sua concepção para o mercado internacional, não preve todas as integrações necessárias ao mercado interno, como NF-e e Financeiro.
Caso tenha um tributo nacional não homologado pelo Protheus, deve efetuar abertura de issue solicitando homologação do mesmo, juntamente com a legislação pertinente, para que o sistema possa atendê-lo de forma correta.


Passo a passo:

1. Criar os campos para as tabelas SF1/SF2/SF3/SD1 e SD2 para gravar a BASE, ALÍQUOTA e VALOR.

Os campos devem conter os nomes “_VALIMP?, _BASIMP? e _ALQIMP?”, onde a “?” identifica um número de “1” a “9” e/ou “A” a “Z”.

A tela abaixo refere-se à um exemplo ilustrativo.




2. Construir uma USER FUNCTION para efetuar o cálculo. O nome desta será utilizado no cadastro do “Imposto Variável”.

O print abaixo contém um exemplo para calculo do FETHAB SOJA.



User Function FETSOJA

local nRet := 0
Local      cCalculo := PARAMIXB[1]
Local nItem := PARAMIXB[2]
Local nVlrUPF := 100
Local nAlq := 19.21

Do Case
       Case cCalculo=="B"
            nRet := nVlrUPF

       Case cCalculo=="A"
            nRet := nAlq

       Case cCalculo=="V"
            nRet := nVlrUPF*MafisRet(nItem,"IT_QUANT")*(nAlq/100)

Endcase
return nRet



Obs: Pode-se observar que o valor da UPF (variável nVlrUPF) e a Alíquota da contribuição (variável nAlq) estão fixas no RDMAKE, para alterar estes valores deve-se alterar o RDMAKE, pelo menos neste primeiro momento.


3. Após execução dos itens 1 e 2, acessar a rotina de “Impostos variáveis”(MATA995) e cadastrar a contribuição para que seja efetuado o cálculo. Neste cadastro informar o campo “Descrição” com a string que será impressa no rodapé da NF,

informar a “Formula Entr” e “Formula Said” com o nome da USER FUNCTION responsável pelo cálculo e por final, informar qual o carácter final do campo criado no item anterior (1) no campo “Cpo Lvr Fis”.

O print abaixo refere-se à um exemplo ilustrativo.



4. Após executado os procedimentos anteriores efetue a amarração do “Imposto Variável” cadastrado, no TES utilizado nas operações.

Para ativar a aba de impostos variáveis altere o parâmetro MV_GERIMPV = S                                                                                                                                                                                                                                               

O print abaixo refere-se à um exemplo ilustrativo.



Obs: Neste exemplo é importante observarmos as marcações em amarelo que precisam estar iguais. O único que pode variar é o primeiro, dependendo do destinatário (PJ ou PF). PJ mantém como está,

subtraindo o valor do título principal (da NF) e PF deve estar como “Indiferente”, mantendo o valor original.


  • Cod. Imposto: deve ser selecionado o imposto que aplicado nessa operação, de acordo com o cadastro de impostos variáveis.
  • Soma na Dupl.: define como o imposto deve ser agregado ao valor total dos títulos:
    • Somar: adiciona o valor dos impostos ao valor do título a pagar ou a receber.
    • Subtrair: subtrai o valor dos impostos do valor do título a pagar ou a receber.
    • Indiferente: não considera o valor dos impostos nos títulos a pagar/receber. O valor do imposto já está embutido no preço do produto.
  • Soma Tot. Not:  define como o imposto deve ser agregado ao valor total da nota:
    • Somar: adiciona o valor dos impostos ao valor total da nota. O valor deve ser somado, por exemplo, quando o imposto não está incluído no preço do produto.
    • Subtrair: subtrai o valor dos impostos do valor total da nota.
    • Indiferente: não considera o valor dos impostos no valor total da nota. O valor do imposto já está embutido no preço do produto.
      Obs. Devido contexto de criação da rotina ser para o mercado internacional, não atenderá, por exemplo a geração da NF - e, caso seja necessário.
  • Soma Custo: define como imposto deve ser agregado ao valor total do custo (usado apenas na configuração de operações com o fornecedor):
  •  Somar: adiciona o valor dos impostos ao custo da mercadoria. O valor deve ser somado, por exemplo, quando o imposto não está incluído no preço do produto e não é obtido crédito desse imposto.
  • Subtrair: subtrai o valor dos impostos ao custo da mercadoria. O valor deve ser subtraído, por exemplo, quando o imposto está incluído no preço do produto e é obtido crédito desse imposto.
  • Indiferente: não considera o valor dos impostos no custo. O valor do imposto está embutido no preço do produto e por ele não é obtido crédito, ou quando o valor do imposto não está embutido no preço do produto, mas por ele é obtido crédito.
  • Inc. Imposto: se o valor base do imposto (X) precisa ser composto como o valor de outro (Y), clique no em Consulta para selecioná-lo. Exemplo: o valor do imposto Y somado ao valor de mercadorias, serve de base para o imposto X.
  • Calcula Sobre: selecione a forma de cálculo do imposto:
    • Itens da NF: o imposto é calculado sobre o valor do item da nota (por TES).
    • Total da NF: o imposto é calculado sobre o valor total da nota.
  • Calc. s/ Liq.: selecione Sim para que o imposto seja calculado sobre o valor líquido da nota, sem considerar despesas e descontos. Selecione Não para que o imposto seja calculado sobre o valor bruto da nota.
  • Agreg. Base:Informe o mesmo grupo para todos os impostos que devem ser agrupados (suas bases) para o calculo (esta configuração deverá ser utilizada para o calculo de varios impostos incluidos para um item).
  • Província: Informe a província. 


5. Após os procedimentos acima, o resultado fica da seguinte forma.


Faturamento


Financeiro




Casos de uso


a) O roteiro acima refere-se a implementação de uma contribuição desde o primeiro passo.  Para implementar os outros, deve-se criar um “imposto variável” (etapa 3) para cada um deles e amarrar na respectiva TES, conforme etapa 4. Ex:

“Imposto Variável” 001 – FET SOJA,

“Imposto Variável” 002 – FET ALGODÃO,

“Imposto Variável” 003 – FET GADO, e assim por diante.


b) Se houver necessidade de ter o cálculo de uma determinada contribuição tanto para pessoa física(PF) quanto para pessoa jurídica (PJ), deve-se ter um “Imposto Variável” e um TES para cada finalidade, efetuando as devidas amarrações (etapa 4). Ex:

Imp. Var. -> 001 para PF e 002 para PJ

TES -> 501 para PF (nesta amarraremos o “Imposto Variável” 001) e 502 para PJ (nesta amarraremos o “Imposto Variável” 002)


c) Para o cálculo, deve-se construir um RDMAKE para cada contribuição, neste roteiro foi construído o FETSOJA para o calculo do FETHAB SOJA, para os outros segue a mesma regra, basta alterar a regra de calculo. No exemplo deste roteiro a BASE é o valor da UPF, a ALÍQUOTA é a alíquota do calculo e o VALOR da contribuição é a BASE*QUANTIDADE  DA NF*ALIQUOTA.


d) O lançamento do título a pagar no Financeiro das contribuições deverá ser lançado manualmente até disponibilizarmos a rotina oficial. O cliente nos disse que paga mensalmente essas contribuições, portanto terá de fazer somente o mês de janeiro. O valor a ser recolhido será gravado no campo “_VALIMP?” criado na etapa1.



  • No Configurador (SIGACFG) acesse Ambientes/Cadastros/Parâmetros (CFGX017). Verifique os parâmetros necessários à rotina, conforme orientações a seguir e altere-os, quando necessário:


Nome da Variável MV_GERIMPV
Tipo Caractere
Descrição Determina se a Empresa vai utilizar roteiro para calculo de Impostos Variáveis (Internacionalização)
Valor Padrão N