📘 Configurador de Tributos: configuração do Indicador da Operação (cIndOp) nas Regras de Escrituração de IBS e CBS


Data de publicação: 26/08/2026


🎯 Objetivo

Orientar a configuração do Indicador da Operação — IndOp no Configurador de Tributos do TOTVS Protheus, demonstrando como o código deve ser associado às Regras de Escrituração de IBS e CBS para posterior utilização na geração da tag:

<cIndOp>

nos documentos eletrônicos de serviços.

A correta parametrização do Indicador da Operação tornou-se especialmente importante com as adequações da Reforma Tributária do Consumo, uma vez que diversos leiautes de NFS-e passaram a exigir a informação do cIndOp juntamente com dados como:

  • NBS;

  • CST de IBS/CBS;

  • cClassTrib;

  • cálculo de IBS;

  • cálculo de CBS.

A TOTVS direciona as configurações do IndOp para o Configurador de Tributos, especificamente nas Regras de Escrituração utilizadas pelo documento fiscal. (TOTVS Central de Atendimento)


🧩 Ambiente

A orientação está relacionada ao seguinte cenário:

  • Produto: TOTVS Backoffice — Linha Protheus;

  • Módulo: Livros Fiscais;

  • Componente: Configurador de Tributos;

  • Processo: Regras de Escrituração;

  • Tributos: IBS e CBS;

  • Documento relacionado: NFS-e;

  • Informação fiscal: Indicador da Operação — IndOp;

  • Tag do documento eletrônico: cIndOp.

A documentação do Indicador de Operação é utilizada pela própria TOTVS como referência para tratamento de rejeições de NFS-e relacionadas à ausência ou ao preenchimento incorreto do cIndOp. (TOTVS Central de Atendimento)


🔎 O que é o Indicador da Operação — IndOp

O Indicador da Operação identifica a natureza da operação de consumo para fins das novas informações de IBS e CBS.

No documento eletrônico, a informação é representada pela tag:

<cIndOp>XXXXXX</cIndOp>

O código possui relação com a operação efetivamente realizada e deve estar coerente com outras classificações utilizadas no documento fiscal.

Entre os elementos que precisam guardar correlação estão:

Item de Serviço
      ↓
NBS
      ↓
cIndOp
      ↓
cClassTrib

A documentação oficial da NFS-e disponibiliza uma tabela de correlação entre os itens e subitens da lista de serviços, NBS, códigos de Indicador da Operação e códigos de classificação tributária. (SEFA Serra)


🏛️ Relação com a Reforma Tributária

Com a implantação das informações da Reforma Tributária nos documentos de serviços, o processo deixou de depender apenas dos dados tradicionais de ISS.

O tratamento da operação passa a envolver informações como:

  • item ou subitem de serviço;

  • NBS;

  • CST de IBS/CBS;

  • classificação tributária;

  • Indicador da Operação;

  • base de cálculo;

  • alíquotas;

  • valores de IBS e CBS.

Por isso, o cIndOp não deve ser tratado como um código isolado.

Ele precisa representar corretamente a operação que está sendo processada.


📥 Pré-requisito: tabela de Indicadores de Operação

Antes de configurar o IndOp na Regra de Escrituração, os códigos precisam estar disponíveis no Configurador de Tributos.

A TOTVS disponibilizou a rotina de importação da tabela oficial de Indicadores de Operação por meio da FISA170.

O fluxo é:

Tabela oficial IndOp
        ↓
Arquivo XLSX
        ↓
Conversão para CSV
        ↓
Importação pelo Configurador de Tributos
        ↓
Tabela CI1

Após a importação, os códigos ficam disponíveis na estrutura de Códigos Indicadores de Operação.


🗃️ Tabela CI1 — Códigos Indicadores de Operação

Os códigos importados são armazenados na tabela:

CI1

Essa tabela representa a relação de:

Códigos Indicadores de Operação

utilizados posteriormente na configuração das Regras de Escrituração.

O código propriamente dito está relacionado ao campo:

CI1_CODIGO

e será utilizado para selecionar o indicador correspondente à operação.


⚠️ Importar a tabela não configura automaticamente as operações

Um ponto importante é que a importação apenas disponibiliza os códigos no ambiente.

Ela não determina automaticamente:

  • qual código será utilizado em determinada prestação;

  • qual IndOp corresponde a uma NBS;

  • qual classificação tributária utilizar;

  • qual regra de escrituração deverá receber determinado código.

A associação precisa ser realizada conforme o cenário tributário da empresa.


⚙️ Configuração nas Regras de Escrituração

Depois que os códigos estiverem disponíveis, acesse o Configurador de Tributos e localize a Regra de Escrituração utilizada no cálculo e na escrituração do IBS/CBS.

Na Regra de Escrituração foi disponibilizado o campo:

Indic. Opera

O nome técnico correspondente é:

CJ2_INDOP

O campo recebe o Código do Indicador da Operação aplicável à regra.

A TOTVS orienta expressamente que o Indicador da Operação seja amarrado às Regras de Escrituração de IBS e CBS dentro do Configurador de Tributos. (TOTVS Central de Atendimento)


🔗 Relacionamento CI1 → CJ2

O relacionamento básico funciona da seguinte maneira:

CI1
Códigos Indicadores de Operação
        ↓
Seleção do código
        ↓
Regra de Escrituração
        ↓
CJ2_INDOP

A regra passa então a possuir o código IndOp correspondente ao tratamento fiscal configurado.


🧾 Exemplo conceitual de configuração

Considere uma Regra de Escrituração para uma determinada prestação de serviços.

A parametrização poderá envolver:

Regra de Escrituração: Serviço sujeito ao IBS/CBS

CST IBS/CBS     = conforme tributação
cClassTrib      = conforme enquadramento
Indic. Opera    = código IndOp aplicável

Tecnicamente:

CJ2_INDOP = Código do Indicador da Operação

O código deve existir previamente na tabela CI1.


🧠 Como escolher o código correto

A definição do cIndOp deve ser realizada considerando a operação fiscal efetivamente praticada.

A análise precisa observar principalmente:

  • serviço prestado;

  • item da lista de serviços;

  • NBS;

  • natureza da operação;

  • CST de IBS/CBS;

  • cClassTrib;

  • regras previstas para a operação.

A TOTVS reforça nos artigos relacionados que dúvidas sobre a configuração ou amarração do Indicador da Operação no Configurador de Tributos devem ser direcionadas à equipe fiscal. (TOTVS Central de Atendimento)

Portanto, não é recomendado utilizar um código apenas porque sua descrição parece semelhante à atividade realizada.


🔗 Correlação entre NBS, cIndOp e cClassTrib

A relação entre essas informações é particularmente importante na NFS-e.

O fluxo conceitual pode ser representado como:

Serviço prestado
       ↓
Item de Serviço
       ↓
NBS
       ↓
cIndOp
       ↓
cClassTrib
       ↓
CST IBS/CBS

O Anexo VIII da documentação técnica da NFS-e estabelece justamente a correlação entre:

  • itens/subitens da LC 116;

  • NBS;

  • cIndOp;

  • cClassTrib. (SEFA Serra)


⚠️ Código existente não significa código correto

Mesmo que o código exista na tabela CI1, ainda é necessário confirmar se ele pode ser utilizado com:

  • a NBS informada;

  • o serviço da operação;

  • o cClassTrib;

  • o tratamento do IBS/CBS.

Nos materiais de rejeição de NFS-e, a TOTVS alerta que um código inválido ou incompatível pode provocar a mesma rejeição encontrada quando o Indicador da Operação não é enviado. (TOTVS Central de Atendimento)


📚 Gravação no Livro Fiscal

Quando um documento fiscal de serviço utiliza uma Regra de Escrituração com:

CJ2_INDOP

preenchido, a informação do Indicador da Operação deve ser transportada para o Livro Fiscal.

O campo correspondente é:

CJ3_INDOP

na tabela:

CJ3

O fluxo passa a ser:

CI1
 ↓
CJ2_INDOP
 ↓
Documento Fiscal
 ↓
CJ3_INDOP

Esse ponto é muito importante no diagnóstico de problemas relacionados à ausência da tag cIndOp.


🔍 Como validar o indicador no documento

Depois de configurar a Regra de Escrituração, gere um novo documento fiscal de serviço.

Após o processamento, valide se o Indicador da Operação foi gravado no Livro Fiscal:

CJ3_INDOP

O valor deve corresponder ao código selecionado na Regra de Escrituração.

Nos procedimentos oficiais relacionados às rejeições de NFS-e, a TOTVS orienta gerar uma nova nota e confirmar tanto o cálculo de IBS/CBS quanto o Indicador da Operação gravado na tabela CJ3. (TOTVS Central de Atendimento)


🧩 Relação entre CJ2 e CJ3

A diferença entre os dois campos deve ser entendida da seguinte forma:

EstruturaCampoFinalidade
Regra de EscrituraçãoCJ2_INDOPDefine qual IndOp será utilizado pela regra
Livro FiscalCJ3_INDOPRegistra qual IndOp foi efetivamente utilizado no documento

Assim:

CJ2_INDOP = configuração
CJ3_INDOP = resultado no documento

📄 Geração da tag cIndOp

Depois que a informação for processada corretamente, ela poderá ser utilizada na montagem da NFS-e.

O XML deve apresentar:

<cIndOp>XXXXXX</cIndOp>

O campo CJ2_INDOP existe justamente para suportar o código do Indicador da Operação utilizado na tag cIndOp da NFS-e, conforme documentação dos campos do Protheus. (Tabelas Protheus)


🔄 Fluxo completo do IndOp no Protheus

O funcionamento pode ser representado desta forma:

Portal Nacional da NFS-e
        ↓
Tabela oficial IndOp
        ↓
Importação no Protheus
        ↓
CI1
        ↓
Configurador de Tributos
        ↓
Regra de Escrituração IBS/CBS
        ↓
CJ2_INDOP
        ↓
Documento Fiscal de Serviço
        ↓
Escrituração
        ↓
CJ3_INDOP
        ↓
Geração da NFS-e
        ↓
<cIndOp>
        ↓
TSS
        ↓
Prefeitura / Ambiente Nacional

🚨 Diagnóstico: cIndOp não está sendo gerado

Quando a tag:

<cIndOp>

não aparecer no XML, o diagnóstico deve começar pela origem da informação.


1. A tabela CI1 possui os códigos?

❌ Não

Será necessário importar a tabela oficial de Indicadores de Operação.

✅ Sim

Avance para a análise da Regra de Escrituração.


2. O CJ2_INDOP está preenchido?

Verifique a regra utilizada pelo documento.

❌ Não

A Regra de Escrituração não possui um Indicador da Operação configurado.

Preencha o campo:

Indic. Opera

correspondente a:

CJ2_INDOP

com o código validado pela área fiscal.


3. O código selecionado existe na CI1?

O valor informado no CJ2_INDOP deve corresponder a um código válido da tabela de Indicadores.

Caso contrário, revise a importação da tabela e a parametrização da regra.


4. A regra correta foi utilizada?

Mesmo que CJ2_INDOP esteja preenchido, é necessário confirmar se essa Regra de Escrituração foi efetivamente aplicada ao documento.

Verifique:

  • perfil de operação;

  • perfil de produto;

  • regra tributária;

  • CST;

  • cClassTrib;

  • demais critérios do Configurador de Tributos.


5. O CJ3_INDOP foi preenchido?

Após gerar a nota, consulte:

CJ3_INDOP

❌ Campo vazio

O Indicador não chegou ao Livro Fiscal.

A análise permanece na camada fiscal e na Regra de Escrituração.

✅ Campo preenchido

A informação chegou ao documento fiscal.

Se a tag ainda não for gerada, a análise deve avançar para a geração do documento eletrônico.


🚨 Código IndOp informado, mas documento continua rejeitado

Existe também o cenário em que:

<cIndOp>XXXXXX</cIndOp>

é gerado corretamente, mas a NFS-e continua sendo rejeitada.

Nesse caso, não se trata mais de ausência da tag.

É necessário verificar se o código informado é válido para a combinação da operação.


🔍 Validar a correlação

Confira:

Item de Serviço
        ↓
NBS
        ↓
cIndOp
        ↓
cClassTrib

A TOTVS alerta, nos artigos correlatos, que o código precisa ser válido e estar vinculado à NBS e ao cClassTrib. Caso contrário, a rejeição pode continuar mesmo com a informação presente no documento. (TOTVS Central de Atendimento)


🧪 Recomendações para homologação

Antes de disponibilizar a configuração em produção, recomenda-se:

  1. confirmar a atualização do Configurador de Tributos;

  2. importar a tabela oficial IndOp;

  3. identificar uma operação conhecida;

  4. validar a NBS;

  5. validar o CST de IBS/CBS;

  6. validar o cClassTrib;

  7. identificar o cIndOp correspondente;

  8. configurar o CJ2_INDOP;

  9. gerar uma nova nota;

  10. validar o cálculo do IBS e da CBS;

  11. conferir o CJ3_INDOP;

  12. gerar o XML;

  13. validar a tag <cIndOp>;

  14. transmitir em homologação;

  15. registrar a evidência do processamento.


⚠️ O que não fazer

Durante a configuração, não é recomendado:

  • escolher um código IndOp aleatoriamente;

  • copiar o código utilizado por outra empresa sem análise;

  • preencher diretamente o CJ3_INDOP pelo banco;

  • editar manualmente o XML para inserir cIndOp;

  • alterar a tabela CI1 diretamente por SQL;

  • ignorar a correlação com NBS;

  • ignorar o cClassTrib;

  • considerar apenas a descrição textual do código;

  • reutilizar uma nota gerada antes da alteração para validar a correção.

A configuração deve ocorrer na origem, dentro do Configurador de Tributos.


✅ Checklist de configuração

📥 Tabela IndOp

  •  Tabela oficial obtida;

  •  versão da tabela conferida;

  •  importação realizada;

  • códigos disponíveis na CI1;

  •  código aplicável identificado pela área fiscal.

⚙️ Configurador de Tributos

  •  Regra de Escrituração identificada;

  •  regra de IBS/CBS correta;

  •  CST validado;

  • cClassTrib validado;

  •  NBS validada;

  • campo Indic. Opera preenchido;

  • CJ2_INDOP conferido.

🧾 Documento Fiscal

  •  Nova nota criada após a configuração;

  •  IBS calculado;

  •  CBS calculada;

  •  Regra de Escrituração aplicada;

  •  Livro Fiscal gerado;

  • CJ3_INDOP preenchido.

📄 Documento eletrônico

  •  XML gerado novamente;

  • tag <cIndOp> localizada;

  •  código conferido;

  •  NBS compatível;

  • cClassTrib compatível;

  •  documento transmitido;

  •  retorno do município ou ambiente nacional validado.


✅ Resultado esperado

Após a correta importação e parametrização do Indicador da Operação, o Protheus deverá:

  1. disponibilizar os códigos IndOp na tabela CI1;

  2. permitir a seleção do indicador na Regra de Escrituração;

  3. armazenar o código configurado em:

CJ2_INDOP
  1. utilizar a Regra de Escrituração na operação;

  2. transportar o indicador para:

CJ3_INDOP
  1. disponibilizar a informação para geração da NFS-e;

  2. montar corretamente a tag:

<cIndOp>XXXXXX</cIndOp>
  1. transmitir o documento com o Indicador da Operação correspondente ao tratamento fiscal aplicado.


💡 Boas práticas

  • manter a tabela IndOp atualizada;

  • registrar a versão do arquivo importado;

  • validar todos os códigos com a área fiscal;

  • documentar as regras que utilizam CJ2_INDOP;

  • não configurar o IndOp isoladamente da NBS e do cClassTrib;

  • realizar testes em homologação;

  • gerar sempre uma nova nota após alterações de parametrização;

  • conferir CJ3_INDOP antes de direcionar o diagnóstico ao TSS;

  • preservar XMLs de teste para comparação;

  • revisar a parametrização sempre que houver atualização oficial das tabelas da Reforma Tributária.


❓ FAQ

1. Onde é configurado o Indicador da Operação?

Na Regra de Escrituração do Configurador de Tributos, por meio do campo:

Indic. Opera

correspondente tecnicamente a:

CJ2_INDOP

A TOTVS utiliza essa parametrização como referência oficial para geração do cIndOp em NFS-e. (TOTVS Central de Atendimento)


2. Onde ficam armazenados os códigos disponíveis?

Na tabela:

CI1

de Códigos Indicadores de Operação.


3. O que é o CJ2_INDOP?

É o campo da Regra de Escrituração que recebe o código do Indicador da Operação utilizado pela regra.


4. O que é o CJ3_INDOP?

É o campo do Livro Fiscal que recebe o Indicador da Operação utilizado no documento.


5. Qual é o fluxo entre os campos?

CI1 → CJ2_INDOP → Documento → CJ3_INDOP → cIndOp

6. Importar a tabela configura automaticamente o IndOp?

Não.

A importação apenas disponibiliza os códigos. A Regra de Escrituração precisa ser configurada com o indicador correspondente.


7. Como saber qual código utilizar?

O código deve ser validado com base na natureza da operação e em sua correlação com:

  • item de serviço;

  • NBS;

  • cClassTrib;

  • tratamento do IBS/CBS.

A TOTVS orienta que dúvidas de configuração e amarração sejam tratadas pela área fiscal. (TOTVS Central de Atendimento)


8. O CJ2_INDOP está preenchido, mas o CJ3_INDOP está vazio. O que verificar?

Valide:

  • se a regra correta foi utilizada;

  • se a nota foi criada depois da configuração;

  • se IBS e CBS foram calculados;

  • se o cClassTrib está correto;

  • se o documento fiscal de serviço foi processado corretamente.


9. O CJ3_INDOP está preenchido, mas a tag não aparece no XML. O que fazer?

Nesse cenário, a informação fiscal já chegou ao documento.

A análise deve avançar para:

  • atualizações do Protheus;

  • fonte responsável pela NFS-e;

  • montagem do XML;

  • RPO efetivamente carregado;

  • integração com o TSS.


10. A tag cIndOp está no XML, mas a nota continua rejeitada. Por quê?

O código pode não ser compatível com a NBS, com o item do serviço ou com o cClassTrib.

A presença da tag não garante que seu conteúdo esteja fiscalmente correto. (TOTVS Central de Atendimento)


11. O IndOp é utilizado apenas em uma prefeitura específica?

Não.

A informação está relacionada ao novo tratamento de IBS/CBS da NFS-e e já aparece em integrações e validações de diferentes municípios e do padrão nacional.


12. Devo alterar diretamente a CI1, CJ2 ou CJ3 pelo banco?

Não é recomendado.

A manutenção deve ser realizada pelas rotinas e parametrizações do Protheus para preservar consistência, rastreabilidade e integridade dos dados.


🔗 Referências oficiais

TOTVS TDN — Configuração do Indicador da Operação no Configurador de Tributos

A orientação dessa documentação também é referenciada pelos artigos oficiais da TOTVS sobre falha de schema da NFS-e de São Paulo e rejeição 817 de Barueri, nos quais a TOTVS determina a amarração do Indicador da Operação nas Regras de Escrituração de IBS e CBS. (TOTVS Central de Atendimento)


👤 Autor

Fabrizio Augusto Ventavolo
Consultor Especialista TOTVS — Mastersiga Consultoria

“Conectamos tecnologia, processos e pessoas para acelerar resultados com excelência em sistemas TOTVS.”


Atualizado em 26/08/2026
Este artigo foi útil?  
Agradecemos sua avaliação.