Mudanças entre as edições de "Requisitos RFW.SEFAZ"

De Wiki do Leitão
Ir para: navegação, pesquisa
Linha 25: Linha 25:
** '''Root Solicitação:''' TEnviNFe
** '''Root Solicitação:''' TEnviNFe
** '''Root Resposta:''' TRetEnviNFe
** '''Root Resposta:''' TRetEnviNFe
= Documentação e Informação Oficial =
* '''Site Oficial:''' [https://www.nfe.fazenda.gov.br/portal/principal.aspx Portal da Nota Fiscal Eletrônica] - Na sessão de download é possível encontrar os manuais e outros documentos técnicos sobre a emissão da NFe e NFCe. Como:
** '''Manual de Orientação ao Contribuinte''' - Trás informações gerais sobre o sistema, definições de tabelas e regras de comunicação com o WebService.
*** '''Anexo I''' - trás o layout do arquivo XML de representação da NFe e NFCe.
*** '''Anexo IV''' - trás o manual de contigência da NFCe.
== Legislação de São Paulo ==
=== Credenciamento para Emissão de NFCe ===
Fonte: [https://legislacao.fazenda.sp.gov.br/Paginas/Portaria-SRE-40-de-2024.aspx ​​PORTARIA SRE 4​0, DE 5 DE JULHO DE 2024]
'''Artigo 2°''' - Para a emissão da NFC-e o contribuinte deverá efetuar previamente seu credenciamento junto à Secretaria da Fazenda e Planejamento (Ajuste SINIEF 19/16, cláusula segunda).
''§ 1º'' - Para o credenciamento de que trata o “caput”, o contribuinte deverá acessar o sistema de credenciamento disponível na Internet, no endereço eletrônico http://nfce.fazenda.sp.gov.br/NFCePortal/ - opção “Credenciamento”, e preencher os dados solicitados no formulário eletrônico.

Edição das 22h30min de 8 de fevereiro de 2025

Requisitos

Objetivo Principal

O objetivo deste módulo é permitir uma integração transparente com os serviços da SEFAZ (WebServices) de forma mais transparente possível e integrada ao framework RFW para facilitar sua utilização.


Para atingir este objetivo o módulo fornece objetos com a estrutura de dados defina nos Schemas dos XMLs da SEFAZ. Desta forma o desenvolvedor pode abstrair toda a preocupação escrita e tratamento do XML. O módulo recebe esses objetos e faz toda a conversão e comunicação com a SEFAZ internamente.

Objetos de Representação do XML

Os objetos que representam as tags do XML são criados com o JAXB a partir do Schema fornecido pela própria SEFAZ.


Note 64.png
Diferenças Entre os Nomes das Tags e Classes
Quando o JAXB gera os arquivos a partir do Schema ele utiliza os nomes dos "tipos" definidos pelo Schema para batizar o objeto ao invés do nome da Tag.

Por isso é comum termos os nomes das classes precedidas com a letra "T" (embora não seja uma regra), já que a SEFAZ batiza o 'type' dentro do schema com o mesmo nome da tag precedida da letra 'T".


Esses objetos de representação do XML são organizados dentro do package br.eng.rodrigogml.rfw.sefaz.xsdobjects, com subpackages nomeados de acordo com o nome e versão do schema de solicitação:

  • br.eng.rodrigogml.rfw.sefaz.xsdobjects.conscadv200.* - Objetos to serviço Web Service – NfeConsultaCadastro.
    • Root Solicitação: TConsCad
    • Root Resposta: TRetConsCad
  • br.eng.rodrigogml.rfw.sefaz.xsdobjects.envinfev400.* - Objetos to serviço Web Service – NfeAutorizacao.
    • Root Solicitação: TEnviNFe
    • Root Resposta: TRetEnviNFe