Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

03. Integração novos tributos via Configurador de Tributos (FISA170)

Aviso
titleAtenção

Esta atualização será disponibilizada na Expedição contínua de DEZEMBRO/2025 e o pacote poderá ser acessado através dos links disponibilizados na documentação Pacotes de Atualização - Fiscal.

Informações sobre a Expedição contínua acessar: http://tdn.totvs.com/x/H4uCEw.

Informações sobre o compatibilizador UPDDISTR acessar: Atualizador de dicionário e base de dados - UPDDISTR.

Visando a reforma tributária, o método descrito abaixo tem por objetivo possibilitar o envio dos novos tributos cadastrados no Configurador de Tributos com Operandos de Integração via MSExecAuto Visando a reforma tributária, o método descrito abaixo tem por objetivo possibilitar o envio dos novos tributos cadastrados no Configurador de Tributos com Operandos de Integração via MSExecAuto gravando os tributos diretamente nas tabelas F2D e CJ3.

...

Bloco de código
languagejs
themeMidnight
		 id_tributo
           |_base_valor
  |_base_quantidade
         |_base_umquantidade
  |_aliquota
   |_valor
  |_CST
  |_CCT
  |_vlbase_tributadoum
           |_vl_isento
aliquota
           |_vl_outrosvalor
  |_vl_diferido
  |_pc_diferido
         |_pcesc_reducao_baseCST
  |_base_original
  |_pc_reducao_aliq
         |_aliquota_original

Composição JSON

Bloco de código
languagejs
themeMidnight
{
esc_CCT
      "000060": {
    |_esc_vl_tributado
   "base_valor": 0,
       "base_quantidade": 10000,
|_esc_vl_isento
        "base_um": "UM",
   |_esc_vl_outros
          "aliquota": 10, |_esc_vl_diferido
       "valor": 500,
   |_esc_pc_diferido
    "CST": "000",
       "CCT": "003",
|_esc_pc_reducao_base
         "vl_tributado": 6.55,
  |_esc_base_original
           "vl_isento": 0.00,
|_esc_pc_reducao_aliq
           |_esc_aliquota_original

Composição JSON

Bloco de código
languagejs
themeMidnight
 {"vl_outros": 0.00,
       "vl_diferido000060": 0.00,{
        "pcbase_diferidovalor": 0,
        "pcbase_reducao_basequantidade": 010000,
        "base_originalum": "UM",
        "aliquota": 010,
        "pc_reducao_aliqvalor": 0500,
        "aliquotaesc_originalCST": 0.00
"000",
        }
}
Aviso
titleAtenção

Caso a estrutura não seja respeitada o processamento será interrompido.

Propriedades do Tributo (F2D)

...

Valor da base do imposto

...

number

...

"esc_CCT": "003",
        "esc_vl_tributado": 6.55,
        "esc_vl_isento": 0.00,
        "esc_vl_outros": 0.00,
        "esc_vl_diferido": 0.00,
        "esc_pc_diferido": 0,
        "esc_pc_reducao_base": 0,
        "esc_base_original": 0,
        "esc_pc_reducao_aliq": 0,
        "esc_aliquota_original": 0.00
        }
 } 
Aviso
titleAtenção

Caso a estrutura não seja respeitada o processamento será interrompido.

Propriedades do Tributo (F2D)

PropriedadeDescriçãoTypeObrigatório?
base_valor

Valor da base do imposto

number

Sim

base_quantidadeValor da base quando é operação com quantidadenumberNão*
base_umUnidade de medidacharacterNão*
aliquotaAlíquota do tributonumberSim
valorValor do impostonumberSim

Propriedades de escrituração (CJ3)

PropriedadeDescriçãoTypeObrigatório?
esc_CSTClassificação fiscalcharacterNão
esc_CCTCCT IBS/CBScharacterNão
esc_vl_tributadoValor tributadonumberSim
esc_vl_isentoValor isentonumberSim
esc_vl_outrosValor outrosnumberSim

esc_vl_diferido

Valor diferidonumberNão

esc_pc_diferido

Percentual do diferimentonumberNão

esc_pc_reducao_base

Percentual da reduçãonumberNão

esc_base_original

Base originalnumberNão

esc_pc_reducao_aliq

Percentual de redução de alíquotanumberNão

esc_aliquota_original

Alíquota originalnumberNão

Tributos legados

Para o funcionamento correto, os tributos legados (tributos correntes atualmente, antes da reforma) precisam ter pelo menos a seguinte estrutura:

Bloco de código
languagejs
themeMidnight
id_tributo
  |_base_valor
  |_aliquota
  |_valor

Composição JSON

Bloco de código
languagejs
themeMidnight
{
      "000021": {
        "base_valor": 10000,
        "aliquota": 10,
        "valor": 500,
        }
 }


Propriedades do Tributo (F2D)

Propriedade

Descrição

type

Obrigatório

base_valor

Valor da base do imposto

number

Sim

base_quantidadeValor da base quando é operação com quantidadenumberNão*
base_umUnidade de medida (preenchimento obrigatório caso haja valor na propriedade base_quantidade)characterNão*
aliquotaAlíquota do tributonumberSim
valorValor do impostonumberSim

mva

Índice de cálculo MVAnumberNão

aux_mva

Índice de cálculo auxiliar do MVAnumberNão

pauta

PautanumberNão

vl_majorado

Percentual de MajoraçãonumberNão

aux_majoracao

Indice auxiliar do percentual de majorçãonumberNão

vl_majoracao

Valor MajoraçãonumberNão

pc_majorcao

Alíquota MajoraçãonumberNão

aliquota_tribut

Alíquota do Tributo por regra de NCMnumberNão

ded_dep

Dedução por dependentesnumberNão

Base quantidade

* Em casos onde é necessário enviar o valor da base por quantidade é obrigatório o envio de todas as propriedades do tributo, sendo necessário também o preenchimento da propriedade base_um, exemplo:

Bloco de código
languagejs
themeMidnight
id_tributo
  |_base_valor
  |_base_quantidade
  |_base_um
  |_aliquota
  |_valor

Composição JSON

Bloco de código
languagejs
themeMidnight
{
      "000021": {
        "base_valor": 0,
        "base_quantidade": 10000,
        "base_um": "UM",
        "aliquota": 10,
        "valor": 500,           
        }
    }

Propriedades de escrituração (CJ3)

PropriedadeDescriçãotypeObrigatório?

esc_tab_CST

Tabela CSTcharacterNão
esc_CSTCSTcharacterNão
esc_vl_tributadoValor tributadonumberSim
esc_vl_isentoValor isentonumberSim
esc_vl_outrosValor outrosnumberSim

esc_vl_diferido

Valor diferidonumberNão

esc_pc_diferido

Percentual do diferimentonumberNão

esc_pc_reducao_base

Percentual da reduçãonumberNão

esc_base_original

Base originalnumberNão

esc_pc_reducao_aliq

Percentual de redução de alíquotanumberNão

esc_aliquota_original

Alíquota originalnumberNão

Estrutura JSON tributos legados completa

Bloco de código
languagejs
themeMidnight
		id_tributo 
 			|_base_valor
		 	|_base_quantidade
        	|_base_um
        	|_aliquota
        	|_valor
 		 	|_mva
			|_aux_mva
			|_pauta
			|_vl_majorado
			|_aux_majoracao
			|_vl_majoracao
			|_pc_majorcao
			|_aliquota_tribut
			|_ded_dep 
            |_esc_tab_CST
        	|_esc_CST
        	|_esc_vl_tributado
        	|_esc_vl_isento
        	|_esc_vl_outros
        	|_esc_vl_diferido
        	|_esc_pc_diferido
        	|_esc_pc_reducao_base
        	|_esc_base_original
        	|_esc_pc_reducao_aliq
        	|_esc_aliquota_original

Composição JSON

Bloco de código
languagejs
themeMidnight
{
      "000021": {          
	    "base_valor": 0,
        "base_quantidade": 10000,
        "base_um": "UM",
        "aliquota": 10,
        "valor": 500,
		"mva": 0,
		"aux_mva": 0,
		"pauta" : 0,
		"vl_majorado": 0,
		"aux_majoracao": 0,
		"vl_majoracao": 0,
		"pc_majorcao": 0,
		"aliquota_tribut": 0,
		"ded_dep": 0

Propriedades de escrituração (CJ3)

PropriedadeDescriçãoType
CSTClassificação fiscalcharacter
CCTCCT IBS/CBScharacter
vl_tributadoValor tributadonumber
vl_isentoValor isentonumber
vl_outrosValor outrosnumber

vl_diferido

Valor diferidonumber

pc_diferido

Percentual do diferimentonumber

pc_reducao_base

Percentual da reduçãonumber

base_original

Base originalnumber

pc_reducao_aliq

Percentual de redução de alíquotanumber

aliquota_original

Alíquota originalnumber

Tributos legados

Para o funcionamento correto, os tributos legados (tributos correntes atualmente, antes da reforma) precisam ter pelo menos a seguinte estrutura:

Bloco de código
languagejs
themeMidnight
id_tributo
  |_base_valor
  |_aliquota
  |_valor

Composição JSON

Bloco de código
languagejs
themeMidnight
{
      "000021": {
        "base_valor": 10000,
        "aliquota": 10,
        "valor": 500,
        }
 }

Propriedades do Tributo (F2D)

Propriedade

Descrição 

Type

base_valor

Valor da base do imposto

number

base_quantidadeValor da base quando é operação com quantidadenumber
base_umUnidade de medida (preenchimento obrigatório caso haja valor na propriedade base_quantidade)character
aliquotaAlíquota do tributonumber
valorValor do impostonumber

Base quantidade

Em casos onde é necessário enviar o valor da base por quantidade é obrigatório o envio de todas as propriedades do tributo, sendo necessário também o preenchimento da propriedade base_um, exemplo:

Bloco de código
languagejs
themeMidnight
id_tributo
  |_base_valor
  |_base_quantidade
  |_base_um
  |_aliquota
  |_valor

Composição JSON

Bloco de código
languagejs
themeMidnight
{
      "000021": {
        "base_valor": 0,
        "base_quantidade": 10000,
        "base_um": "UM",
        "aliquota": 10,
        "valor": 500,           
        }
    }

Propriedades de escrituração (CJ3)

Propriedade

DescriçãoType

tab_CST

Tabela CSTcharacter
CSTCSTcharacter
vl_tributadoValor tributadonumber
vl_isentoValor isentonumber
vl_outrosValor outrosnumber

vl_diferido

Valor diferidonumber

pc_diferido

Percentual do diferimentonumber

pc_reducao_base

Percentual da reduçãonumber

base_original

Base originalnumber

pc_reducao_aliq

Percentual de redução de alíquotanumber

aliquota_original

Alíquota originalnumbe

Em casos onde é necessário enviar a escrituração é obrigatório que todas as propriedades de escrituração estejam no JSON:

Estrutura JSON tributos legados completa

Bloco de código
languagejs
themeMidnight
id_tributo
   |_base_valor
   |_base_quantidade
   |_base_um
   |_aliquota
   |_valor
   |_tab_CST
   |_CST
   |_vl_tributado
   |_vl_isento
   |_vl_outros
   |_vl_diferido
   |_pc_diferido
   |_pc_reducao_base
   |_base_original
   |_pc_reducao_aliq
   |_aliquota_original

Composição JSON

Bloco de código
languagejs
themeMidnight
{
      "000021": {
        "base_valor": 0,
        "base_quantidade": 10000,
        "base_um": "UM",
        "aliquota": 10,
        "valor": 500,
        "esc_tab_CST": "000001",
        "esc_CST": "001",
        "esc_vl_tributado": 6.55,
        "esc_vl_isento": 0.00,
        "esc_vl_outros": 0.00,
        "esc_vl_diferido": 0.00,
        "esc_pc_diferido": 0,
        "esc_pc_reducao_base": 0,
        "esc_base_original": 0,
        "esc_pc_reducao_aliq": 0,
        "esc_aliquota_original": 0.00
            }
    }

Regras Operandos de Integração

Novos tributos

Para que a integração funcione é necessário que o Operandos de integração esteja configurado nas seguintes regras:

  • Regra de Base
  • Regra de Alíquota
  • Regra de Escrituração
  • Regra de Cálculo

Caso alguma dessas configurações não esteja de acordo será retornada uma mensagem de warning e o processamento será interrompido.

...

Para que a integração funcione é necessário que o Operando de integração esteja configurado nas seguintes regras:

  • Regra de Base
  • Regra de Alíquota
  • Regra de Cálculo

No caso da Regra de Escrituração ela só será necessária, caso no JSON, seja informada alguma propriedade de escrituração. Caso o contrário a classe respeitará a regra de escrituração amarrada ao tributo, se houver.

...