Data de publicação: 05/08/2026
🎯 Objetivo
Orientar a atualização e a configuração do ambiente TOTVS Protheus integrado ao TSS para transmissão de NFS-e pelo provedor GissOnline, considerando o novo leiaute relacionado à Reforma Tributária do Consumo e os principais erros já mapeados.
O processo envolve:
atualização dos componentes do TSS;
atualização dos arquivos de schema;
atualização do arquivo
tssnewnfse.json;compilação da versão atualizada do
NFSEXMLENV;aplicação do pacote correspondente à release do Protheus;
reconfiguração completa do
Wizard.cfg;revisão dos parâmetros relacionados às retenções;
validação dos títulos de PCC;
geração de uma nova NFS-e para homologação.
🧩 Ambiente
A orientação aplica-se ao seguinte cenário:
Produto: TOTVS Service SOA — TSS;
Integração: TOTVS Backoffice — Linha Protheus;
Processo: Transmissão de Documentos Eletrônicos;
Documento: NFS-e;
Provedor: GissOnline;
Contexto fiscal: Reforma Tributária do Consumo;
Rotina de configuração:
FISA022.
🔎 Visão geral
O provedor GissOnline utiliza versões distintas de leiaute de NFS-e, conforme o município responsável pela emissão do documento.
As versões disponibilizadas no assistente de configuração incluem:
2.04_RT
e:
3.01
A versão correta não deve ser escolhida somente pelo nome do provedor. É necessário confirmar qual leiaute é utilizado pelo município emissor, pois a seleção incorreta pode gerar um XML incompatível com o schema esperado.
Com o novo leiaute RTC, passaram a existir validações adicionais envolvendo:
IBS;
CBS;
NBS;
totalização dos tributos;
retenções tributárias;
demais grupos fiscais previstos pelo schema municipal.
Por isso, alterar apenas a versão no Wizard.cfg pode não ser suficiente. O Protheus e o TSS precisam estar atualizados e compatíveis entre si.
⚙️ Atualizações necessárias no TSS
1. 🖥️ Atualizar o repositório do TSS
O primeiro procedimento é atualizar o repositório de objetos do TSS com o pacote compatível com a release instalada.
Antes da aplicação, recomenda-se:
identificar a release do ambiente;
confirmar a compatibilidade do pacote;
realizar backup do RPO atual;
registrar a versão aplicada;
executar inicialmente em homologação;
reiniciar os serviços após a atualização;
conferir o console do AppServer;
analisar os logs do TSS.
A atualização do repositório disponibiliza as rotinas necessárias para processar os novos leiautes do GissOnline.
2. 📂 Atualizar os arquivos XSD
Os arquivos .XSD correspondentes à release do TSS devem ser incluídos na pasta:
SCHEMAS
Os schemas são responsáveis por validar a estrutura do XML gerado.
Caso estejam desatualizados ou incompatíveis com o leiaute configurado, a NFS-e poderá ser rejeitada mesmo quando os dados fiscais estiverem corretamente calculados no Protheus.
É importante observar que os arquivos utilizados devem corresponder exatamente à release do TSS instalada no ambiente.
3. 📄 Atualizar o arquivo tssnewnfse.json
Também deve ser atualizado o arquivo:
tssnewnfse.json
O arquivo deve ser colocado na pasta:
SYSTEM
A versão do arquivo precisa ser compatível com a release do TSS.
Não se recomenda copiar arquivos de outra versão nem substituir indiscriminadamente todo o conteúdo da pasta SYSTEM. A atualização deve ser realizada somente com os artefatos oficiais aplicáveis ao ambiente.
4. 🧱 Incluir o schema tss_nfse_tipos_v2.00.xsd
Também deve ser conferida a existência do arquivo:
tss_nfse_tipos_v2.00.xsd
na pasta:
SCHEMAS
Esse arquivo participa da validação dos tipos utilizados na estrutura da NFS-e.
Sua ausência, desatualização ou incompatibilidade pode provocar erros de schema durante a geração ou transmissão do documento.
5. ☁️ Ambientes com TSS compartilhado
Nos ambientes em que o TSS é compartilhado e administrado pela estrutura cloud da TOTVS, as atualizações do próprio TSS podem já estar contempladas.
Mesmo nesse cenário, ainda devem ser revisados no ambiente do cliente:
pacote do Protheus;
versão do
NFSEXMLENV;configuração do
Wizard.cfg;cálculo dos tributos;
parâmetros de retenção;
geração dos títulos financeiros;
informações encaminhadas ao TSS.
A utilização de TSS compartilhado não elimina a necessidade de atualização e configuração correta do Protheus.
🧱 Atualizações necessárias no Protheus
1. 🧾 Compilar o NFSEXMLENV atualizado
Deve ser compilada a versão mais recente e compatível do rdmake:
NFSEXMLENV
Esse programa participa da preparação das informações que serão encaminhadas ao TSS para montagem do XML da NFS-e.
Antes da compilação, valide:
release do Protheus;
origem do fonte;
data da versão;
compatibilidade com o pacote aplicado;
existência de alterações locais;
backup do RPO anterior;
disponibilidade de ambiente de homologação.
Uma versão desatualizada ou incompatível pode provocar:
ausência de tags;
geração incorreta de grupos;
falhas na totalização dos tributos;
inconsistências nas retenções;
rejeições de schema.
2. 📦 Aplicar o pacote correspondente à release
O pacote oficial correspondente à release do Protheus também deve ser aplicado.
A atualização precisa ser tratada como um conjunto:
RPO do TSS
+
Schemas
+
tssnewnfse.json
+
tss_nfse_tipos_v2.00.xsd
+
Pacote do Protheus
+
NFSEXMLENV
Atualizar somente um dos componentes pode manter incompatibilidades entre as informações geradas pelo Protheus e o XML processado pelo TSS.
🛠️ Reconfiguração completa do GissOnline
1. Acessar a rotina FISA022
Depois de concluir as atualizações, acesse no Protheus:
FISA022
Localize a configuração correspondente ao município atendido pelo GissOnline e abra o respectivo assistente.
2. Refazer integralmente o Wizard.cfg
A configuração deve ser refeita por completo, e não apenas alterada no campo referente à versão.
No assistente, utilize:
Modelo: 1 - NFS-e Prefeitura
Depois, selecione a versão correspondente ao município:
2.04_RT
ou:
3.01
Também devem ser revisadas todas as informações solicitadas pelo assistente:
município;
ambiente de transmissão;
série;
autenticação;
certificado digital;
versão do leiaute;
parâmetros do provedor;
informações da entidade emissora;
dados de comunicação com o TSS.
3. 🧪 Gerar uma nova NFS-e
Após a atualização e a reconfiguração, deve ser incluída uma nova NFS-e para teste.
Não se recomenda utilizar exclusivamente uma nota gerada antes da atualização, pois o documento pode manter:
cálculo fiscal anterior;
estrutura tributária antiga;
dados gravados antes da correção;
XML montado pela versão anterior;
informações incompatíveis com o novo leiaute.
A validação deve ocorrer com uma NFS-e criada, calculada, gerada e transmitida integralmente após a atualização.
🚨 Erros mapeados
1. Ausência do grupo totTrib
Mensagem
Element '{http://www.giss.com.br/tipos-v2_04.xsd}trib':
Missing child element(s).
Expected is:
({http://www.giss.com.br/tipos-v2_04.xsd}totTrib)
🔎 Significado
A mensagem indica que, dentro do grupo trib, o schema esperava encontrar o bloco:
<totTrib>
O grupo totTrib é utilizado para apresentar os percentuais totais aproximados dos tributos:
federais;
estaduais;
municipais.
Quando o grupo não é gerado, o XML fica incompatível com o schema utilizado pelo GissOnline.
🛠️ O que verificar
atualização do Protheus;
versão do
NFSEXMLENV;atualização do TSS;
schemas utilizados;
versão selecionada no
Wizard.cfg;informações tributárias do documento;
configuração responsável pela totalização dos tributos;
XML gerado após a atualização.
2. Rejeição E160 — Arquivo em desacordo com o XML Schema
Mensagem
E160 - Arquivo em desacordo com o XML Schema
🔎 Significado
A rejeição indica que o XML transmitido não está de acordo com a estrutura prevista no schema do GissOnline.
Entre as causas possíveis estão:
versão incorreta selecionada no
Wizard.cfg;schemas desatualizados;
ausência do
tss_nfse_tipos_v2.00.xsd;tssnewnfse.jsonincompatível;RPO do TSS desatualizado;
pacote do Protheus não aplicado;
versão antiga do
NFSEXMLENV;documento gerado antes da atualização.
🛠️ Procedimento recomendado
Confirmar a versão utilizada pelo município.
Atualizar o RPO do TSS.
Atualizar a pasta
SCHEMAS.Incluir ou atualizar o
tss_nfse_tipos_v2.00.xsd.Atualizar o
tssnewnfse.json.Aplicar o pacote do Protheus.
Compilar o
NFSEXMLENVatualizado.Refazer completamente o
Wizard.cfg.Gerar uma nova NFS-e.
Validar o novo XML antes da transmissão.
3. Erro 9999 — Valor retido de CSLL informado para tipo de retenção sem CSLL
Mensagem
9999 - Valor retido de CSLL informado para tipo de retenção sem CSLL
🔎 Causa
A rejeição ocorre quando a tag:
<tpRetPisCofins>
é gerada com um tipo de retenção que contempla somente PIS e COFINS, enquanto o XML também apresenta valor retido de CSLL.
Esse comportamento pode estar relacionado ao parâmetro:
MV_NT007 = .F.
Quando o parâmetro está configurado como falso, o tipo de retenção pode ser montado sem considerar a CSLL existente na operação.
✅ Correção
Criar ou alterar o parâmetro para:
MV_NT007 = .T.
Também deve ser confirmado se os títulos de PCC retido foram corretamente gerados na tabela:
SE1
Além disso, o parâmetro MV_NFSEPCC deve representar o momento da retenção utilizado pela empresa.
Retenção na emissão
MV_NFSEPCC = F
Retenção na baixa
MV_NFSEPCC = T
A configuração deve estar alinhada ao processo fiscal e financeiro efetivamente adotado.
4. Erro 9999 — Valor de PIS inconsistente com alíquota
Mensagem
9999 - Valor de PIS inconsistente com alíquota
🔎 Causa
Esse erro pode ocorrer principalmente quando existem:
cálculo de PCC retido;
alíquotas diferentes entre os tributos;
divergência entre o cálculo fiscal e os títulos financeiros;
retenção configurada em momento diferente daquele utilizado na operação;
inconsistência entre PIS, COFINS e CSLL.
✅ Correção
Validar:
MV_NT007 = .T.
Para retenção na emissão:
MV_NFSEPCC = F
Para retenção na baixa:
MV_NFSEPCC = T
Também é necessário conferir se os títulos de PCC retido foram corretamente gravados na tabela SE1.
⚠️ Quando envolver a área fiscal
Caso o ambiente esteja configurado para retenção na emissão, mas os títulos correspondentes não sejam gerados na SE1, a análise deve envolver a área fiscal.
Devem ser revisados:
cálculo das retenções;
escrituração fiscal;
momento da retenção;
geração dos títulos;
natureza financeira;
configuração tributária;
dados do documento;
regras utilizadas no cálculo.
A atualização técnica corrige o processo de geração e transmissão, mas não substitui a validação da origem fiscal e financeira dos valores.
📋 Resumo dos principais parâmetros
| Parâmetro | Conteúdo | Finalidade |
|---|---|---|
MV_NT007 | .T. | Considerar corretamente o tipo de retenção envolvendo PIS, COFINS e CSLL |
MV_NFSEPCC | F | Retenção de PCC realizada na emissão |
MV_NFSEPCC | T | Retenção de PCC realizada na baixa |
O conteúdo do MV_NFSEPCC deve representar o momento efetivo da retenção adotado pela empresa.
🔄 Fluxo técnico recomendado
Identificar as releases do Protheus e do TSS
↓
Realizar os backups
↓
Atualizar o RPO do TSS
↓
Atualizar os arquivos XSD
↓
Incluir tss_nfse_tipos_v2.00.xsd
↓
Atualizar tssnewnfse.json
↓
Aplicar o pacote do Protheus
↓
Compilar NFSEXMLENV
↓
Reconfigurar completamente o Wizard.cfg
↓
Revisar MV_NT007 e MV_NFSEPCC
↓
Validar os títulos de PCC na SE1
↓
Gerar uma nova NFS-e
↓
Validar o XML
↓
Transmitir em homologação
✅ Checklist de atualização
🖥️ TSS
Release do TSS identificada;
backup do RPO realizado;
RPO atualizado;
pasta
SCHEMASatualizada;tss_nfse_tipos_v2.00.xsdincluído;tssnewnfse.jsonatualizado na pastaSYSTEM;arquivos compatíveis com a release;
serviços reiniciados;
logs conferidos.
🧱 Protheus
Release identificada;
pacote oficial aplicado;
NFSEXMLENVatualizado e compilado;backup do RPO realizado;
eventuais customizações avaliadas;
ausência de erros de compilação;
comunicação com o TSS validada.
⚙️ Configuração do município
município emissor confirmado;
versão correta identificada;
modelo
1 - NFS-e Prefeituraselecionado;Wizard.cfgrefeito integralmente;certificado digital conferido;
autenticação validada;
ambiente de homologação configurado.
💰 Retenções
MV_NT007 = .T.;MV_NFSEPCCcoerente com o momento da retenção;títulos de PCC gerados na
SE1;PIS validado;
COFINS validada;
CSLL validada;
alíquotas conferidas pela área fiscal.
🧪 Homologação
nova NFS-e criada do zero;
cálculo fiscal conferido;
grupo
totTribvalidado;XML compatível com o schema;
documento transmitido;
retorno do GissOnline registrado;
autorização confirmada.
✅ Resultado esperado
Após a atualização conjunta do Protheus e do TSS, a substituição dos arquivos necessários, a compilação do NFSEXMLENV, a reconfiguração completa do Wizard.cfg e a revisão dos parâmetros de retenção, o ambiente deverá gerar a NFS-e conforme o leiaute utilizado pelo município.
O XML deverá contemplar corretamente:
estrutura do GissOnline;
dados de IBS e CBS, quando aplicáveis;
NBS;
grupo de totalização dos tributos;
retenções de PIS, COFINS e CSLL;
demais elementos exigidos pelo schema.
A transmissão deverá ocorrer sem as rejeições estruturais e de retenção tratadas neste artigo.
💡 Boas práticas
aplicar as atualizações inicialmente em homologação;
utilizar somente pacotes compatíveis com cada release;
manter backup do RPO e dos arquivos substituídos;
documentar a versão utilizada por município;
não copiar schemas entre releases diferentes;
gerar uma nova nota após a reconfiguração;
validar o XML antes da transmissão;
documentar os parâmetros por empresa e filial;
envolver a área fiscal na conferência das retenções;
manter evidências dos testes e dos retornos do provedor.
❓ FAQ
1. Qual versão deve ser utilizada para o GissOnline?
Depende do município. As versões disponíveis são 2.04_RT e 3.01. A versão correta deve ser confirmada antes da configuração.
2. Basta alterar a versão no Wizard.cfg?
Não. O ambiente deve ser atualizado e o Wizard.cfg precisa ser reconfigurado por completo.
3. Qual modelo deve ser selecionado?
1 - NFS-e Prefeitura
4. É necessário gerar uma nova nota?
Sim. A validação deve ser realizada com uma nova NFS-e criada após a atualização e a reconfiguração.
5. O que significa o erro relacionado ao totTrib?
Significa que o schema esperava o grupo de totalização dos tributos dentro do bloco trib, mas esse elemento não foi apresentado no XML.
6. O que significa a rejeição E160?
Significa que o XML transmitido está em desacordo com o schema esperado pelo GissOnline.
7. Como tratar o erro de CSLL informada para tipo de retenção incompatível?
Deve-se configurar:
MV_NT007 = .T.
Também é necessário validar os títulos de PCC na SE1 e revisar o conteúdo do MV_NFSEPCC.
8. Qual deve ser o conteúdo do MV_NFSEPCC?
Para retenção na emissão:
MV_NFSEPCC = F
Para retenção na baixa:
MV_NFSEPCC = T
9. O TSS compartilhado precisa ser atualizado pelo cliente?
O TSS compartilhado pode já contemplar as atualizações do próprio serviço. Entretanto, o Protheus e as configurações fiscais ainda precisam ser revisados.
10. Por que uma nota antiga não deve ser usada como único teste?
Porque ela pode manter cálculos, gravações e estruturas gerados antes da atualização. O teste deve ser feito com uma nova NFS-e.
👤 Autor
Fabrizio Augusto Ventavolo
Consultor Especialista TOTVS — Mastersiga Consultoria
“Conectamos tecnologia, processos e pessoas para acelerar resultados com excelência em sistemas TOTVS.”