Mudanças Funcionais no Layout de Integração da Nota Fiscal de Serviço (antigo vs. novo)
Recomendamos revisar cuidadosamente a documentação de cada campo no novo JSON Schema e os exemplos fornecidos para garantir uma transição tranquila.
- Se você está procurando por perguntas e respostas rápidas sobre a Reforma Tributária, visite nossa página de Perguntas e Respostas sobre a Reforma Tributária. Lá, reunimos as dúvidas mais comuns e suas respostas de forma clara e objetiva, resolução de problemas comuns e orientações práticas.
- Se você quer uma visão geral rápida, com um plano de ação por perfil (gestores, fiscal/contábil, desenvolvedores e operação/faturamento), recomendamos começar pela página Visão geral da Reforma Tributária na NFE.io
Objetivo
Este documento detalha todas as mudanças funcionais introduzidas na versão "novo" do layout de integração da nota fiscal de serviço. A atualização incorpora primariamente os novos campos exigidos pela Reforma Tributária (IBS/CBS), mas também adiciona outros campos para melhorar a completude dos dados e alinhar-se aos novos padrões nacionais.
Público-Alvo
Desenvolvedores e usuários já familiarizados com o layout de integração anterior (antigo).
Visão Geral das Mudanças
Para alinhamento com a nova legislação tributária e os padrões nacionais, diversos campos e grupos foram adicionados. Embora a maioria dos campos existentes permaneça inalterada, a inclusão de novos campos obrigatórios é crucial para a emissão de notas no modelo novo.
As principais mudanças são a adição dos grupos IbsCbs e serviceAmountDetails. No entanto, outros campos individuais e grupos opcionais mais complexos também foram introduzidos.
1. Grupo Principal: IbsCbs (Reforma Tributária)
Este é o principal grupo adicionado ao layout e é obrigatório. Ele centraliza todas as informações relacionadas aos novos tributos, IBS (Imposto sobre Bens e Serviços) e CBS (Contribuição sobre Bens e Serviços), que substituirão o ICMS, ISS, PIS e COFINS.
O objetivo deste grupo é fornecer ao fisco todos os detalhes necessários para o cálculo, apuração e fiscalização dos novos impostos, permitindo a correta distribuição da arrecadação entre os níveis federal, estadual e municipal.
Campos-chave dentro do grupo IbsCbs:
personalUse(booleano, obrigatório): Indica se o serviço é para uso ou consumo pessoal. Isso é crucial para a aplicação de regras tributárias específicas.operationIndicator(string, obrigatório): Um código que especifica o tipo de operação de fornecimento, de acordo com uma nova tabela definida pelo fisco.classCode(número, obrigatório): O Código de Classificação Tributária para o IBS/CBS, que determina as alíquotas e regimes aplicáveis.
1.1. Subgrupo: ibs (Opcional)
Este subgrupo detalha o cálculo do IBS, que é um imposto subnacional (estadual e municipal).
totalAmount: O valor total do IBS para a operação.state: Contém os detalhes da parcela estadual do IBS (alíquota, alíquota efetiva, valor).municipal: Contém os detalhes da parcela municipal do IBS, com uma estrutura similar ao subgrupo estadual.
1.2. Subgrupo: cbs (Opcional)
Este subgrupo detalha o cálculo da CBS, que é um tributo federal.
rate: A alíquota de referência para a CBS.effectiveRate: A alíquota real aplicada após quaisquer reduções.amount: O valor final da CBS devida ao governo federal.
1.3. Outros Subgrupos Opcionais no IbsCbs:
O grupo IbsCbs também inclui outros subgrupos opcionais para tratar de cenários fiscais mais complexos, como:
regularTaxation: Para informar o cálculo hipotético do imposto no regime padrão.presumedCredits: Para detalhar quaisquer créditos presumidos de IBS e CBS.governmentPurchase: Para especificar detalhes fiscais para operações envolvendo entidades governamentais.creditTransfer: Para casos que envolvem a transferência de créditos de IBS/CBS.thirdPartyReimbursements: Para declarar valores relacionados a reembolsos ou repasses que não compõem a base de cálculo.
2. Grupo: serviceAmountDetails (Opcional)
Este grupo foi adicionado para fornecer uma decomposição mais clara dos valores cobrados, especialmente em cenários com multas e juros, comuns em contratos de serviço.
Motivo da Inclusão:
Para diferenciar o valor original do serviço de outros encargos, garantindo um cálculo mais preciso da base de cálculo. No layout anterior, esses valores eram frequentemente incluídos em servicesAmount.
Campos-chave:
initialChargedAmount: O valor original cobrado pelo serviço, antes de quaisquer acréscimos.finalChargedAmount: O valor final total cobrado, incluindo todos os impostos, multas e juros.fineAmount: O valor específico referente a multas.interestAmount: O valor específico referente a juros.
3. Outros Novos Campos e Grupos
Além dos grupos principais acima, vários outros campos foram adicionados na raiz da requisição para acomodar o padrão nacional e fornecer mais detalhes.
nbsCode(string, obrigatório): Código da Nomenclatura Brasileira de Serviços. Esta é uma nova classificação obrigatória para serviços em nível nacional.ncmCode(string, opcional): Código da Nomenclatura Comum do Mercosul, usado quando o serviço está relacionado a um bem físico.paidAmount(número, opcional): Valor total pago pelo serviço.accrualOn(data, opcional): Data de competência da prestação do serviço. Se não for fornecida, será assumida a data deissuedOn.isEarlyInstallmentPayment(booleano, opcional): Indica se a nota é para um pagamento de parcela antecipada.immunityType(string, opcional): Especifica o tipo de imunidade tributária, se aplicável.retentionType(string, opcional): Define quem é o responsável pela retenção do ISSQN (NotWithheld,WithheldByBuyer,WithheldByIntermediary).
Novos Campos de Alíquotas (Opcional):
O layout antigo possuía apenas campos (opcionais) para os valores finais dos impostos retidos. O novo layout inclui campos (opcionais) para as alíquotas, permitindo que o sistema utilize a alíquota informada pelo usuário no cálculo automático.
irRatepisRatecofinsRatecsllRateinssRateipiRate
Novos Grupos Opcionais para Cenários Complexos:
Estes grupos foram adicionados para lidar com casos de negócio específicos previstos no padrão nacional.
ReferenceSubstitution: Usado quando uma nota está sendo emitida para substituir uma anterior.lease: Para serviços envolvendo locação, sublocação ou direito de passagem de infraestrutura como ferrovias, postes e cabos.construction: Para serviços de construção civil, exigindo a identificação da obra (CNO/CEI) ou o endereço do imóvel.foreignTrade: Para operações de importação/exportação de serviços, detalhando aspectos como modo do serviço, moeda e mecanismos de fomento.intermediary: Para identificar um intermediário na prestação do serviço, além do prestador e do tomador.recipient: Para identificar o destinatário final do serviço quando ele é diferente do tomador.realEstate: Para operações relacionadas a bens imóveis, exceto obras.deduction: Para detalhar documentos que justificam deduções da base de cálculo (ex: subempreitadas).benefit: Para aplicar um benefício fiscal municipal que reduz a base de cálculo do ISSQN.suspension: Para indicar que a exigibilidade do ISSQN está suspensa por processo judicial ou administrativo.approximateTotals: Uma versão mais detalhada do antigoapproximateTax, decompondo a carga tributária aproximada nas esferas federal, estadual e municipal.
Resumo das Principais Diferenças
| Característica | Layout Antigo (antigo) | Novo Layout (novo) |
|---|---|---|
| Estrutura Tributária | Baseada no ISS, com campos para retenções federais. | Centrada em IBS e CBS, com um grupo dedicado IbsCbs. |
| Grupo Principal de Imposto | Não aplicável. Campos estavam no nível raiz. | IbsCbs (obrigatório), que contém todas as informações para os novos tributos. |
| Classificação do Serviço | cityServiceCode, federalServiceCode. | Adiciona nbsCode (obrigatório) e ncmCode (opcional) para padronização nacional. |
| Cálculo de Impostos | Mais simples, baseado em uma única alíquota de ISS. | Mais complexo, com cálculos separados para IBS estadual/municipal e CBS federal, incluindo alíquotas efetivas. |
| Cenários Especiais | Tratados através de campos genéricos ou descrições. | Grupos específicos para lease, construction, foreignTrade, ReferenceSubstitution, etc. |
| Detalhamento de Valores | Geralmente consolidado em servicesAmount. | O grupo serviceAmountDetails separa o valor original de multas e juros. |
| Participantes | Apenas borrower. | Adiciona objetos opcionais intermediary e recipient para operações mais complexas. |
Conclusão
A transição para o layout novo é impulsionada principalmente pela necessidade de adaptação ao novo modelo tributário da Reforma Tributária. O principal esforço de integração será o preenchimento correto do grupo IbsCbs, que exige um entendimento detalhado das novas regras fiscais aplicáveis a cada prestação de serviço. O restante do layout permanece em grande parte consistente com a versão anterior.