Skip to content

Diretórios de armazenamento dos XML

masakik edited this page Nov 4, 2012 · 3 revisions

O sistema de comunicação com o SEFAZ requer que vários arquivos xml sejam enviados e recebidos.

Estes arquivos em xml devem ser gravados por dois motivos básicos:

  1. Requisito legal em manter em arquivo magnético todas as NFe emitidas para o SEFAZ (incluindo backup);
  2. Necessidades internas do sistema para montar as mensagens SOAP com os webservices do SEFAZ

Devido as necessidades destes processos devem ser estabelecidas algumas convensões, para o local de arquivamento e definição de nomes dos arquivos xml, como forma de facilitar a localização dos mesmos e sua identificação.

Convenções para Arquivamento

Esta convenção tem por finalidade facilitar a busca das informações nos arquivos e prover uma estrutura de diretórios que permitam um backup seletivo.

##Ambientes da NFe A SEFAZ instituiu dois ambientes distintos:

HOMOLOGAÇÃO

Neste ambiente podemos fazer testes sem que as informações enviadas sejam consideradas validas. Ou seja podemos realizar quaisquer testes sem a preucupação de lançar informações fiscais incorretas e não validas. Este ambiente é uma réplica do ambiente de produção com todas as suas funcionalidades exceto a consideração do SEFAZ do ponto de vista fiscal.

PRODUÇÃO

Neste ambiente toda a informação enviada será considerada real e terá validade fiscal e juridica, portanto todo cuidado deve ser tomado antes de iniciar a operação no ambiente de produção.

Para uso do sistema as NFe devem ser mantidas em uma estrutura de diretorios separadas entre estes dois ambientes porém com suas estruturas internas exatamente iguais. Por exemplo:

/var/www/nfe_producao      - para as operações e arquivos de produção
/var/www/nfe_homolgacao    - para as operações e arquivos de homologação e testes

A estrutura de diretórios

Cada uma das pastas identificadas na imagem abaixo tem uma finalidade especifica para o sistema em função da estrutura de comunicação com o SEFAZ e do modelo de gerenciamento adotado. Veja a seguir.

Estrutura de diretórios

/entradas

Todas as NFe, tanto em formato xml ou em txt devem ser colocadas inicialmente nesta pasta pelo ERP do emissor, pois o sistema irá procurar arquivos nesta pasta para processar a comunicação. Os arquivos em txt serão transformados em xml e gravados nesta pasta e os txt originais serão removidos após a transformação bem sucedida.

/assinadas

Todas as NFe (em xml) contidas na pasta "/entradas" serão assinadas e transferidas para esta pasta.

/validadas

As NFe já assinadas (contidas na pasta "/assinadas") são validadas contra o schemas xsd. Se validada será transferida para esta pasta para posterior envio, se "REJEITADA" será enviada para a pasta "/rejeitadas" e o operador do sistema deverá tomar as ações cabíveis.

/enviadas

As NFe validadas são então transmitidas para a SEFAZ e colocadas nesta pasta aguardando o retorno da situação da NFe. Caso a NFe seja aprovada pelo SEFAZ será anexada a NFe o protocolo de aprovação e a NFe será impressa (DANFE) e já pode ser transmitida ao destinatário via e-mail. Após a aprovação a NFe (com o protocolo) pode ser armazenada para fins fiscais e juridicos em subpastas identificadas com o ANO e MES para facilitar a rotina de backup.

/reprovadas

Caso a NFe tenha sido reprovada a mesma deve ser colocada nesta pasta para tratamento (identificação do motivo da reprovação e realização das devidas correções pelo operador do sistema) esta NFe deve ser gerada novamente pelo ERP. Não pode ser impressa, nem transmitida ao destinatário.

/denegadas

Caso a NFe tenha sido denegada existe algum problema fiscal com o emitente que deve CORRIGIR imediatamente este problema pelas vias pessoais (ir ao posto fiscal, etc...). Estas NFe "denegadas" devem ser colocadas nesta pasta e não podem ser impressas, nem utilizadas de nenhuma forma e não adianta tentar reemitir pois o problema não é nem a comunicação SOAP nem o xml, mas sim na permissão de funcionamento da empresa.

/canceladas

Nesta pasta devem ser mantidos os retornos da SEFAZ às solicitações de cancelamento das NFe, geradas pelo ERP ou manualmente.

/inutilizadas

Nesta pasta devem ser mantidos os retornos da SEFAZ às solicitações de inutilização de faixas de números das NFe, geradas pelo ERP ou manualmente.

/temporarias

Nesta pastas são gravados todos os retornos da SEFAZ.

/pdf

Nesta pasta são gravados dos arquivos pdf gerados pela DANFE para envio.

/recebidas

Nesta pasta são colocadas as NFe recebidas de fornecedores (por enquanto o sistema nada faz com estas NFe's).

Nomenclaturas dos arquivos

As NFe devem (e serão) nomeadas seguindo o seguinte padrão:

<id de 44 digitos da NFe>-nfe.xml

ATENÇÃO: use somente letras minúsculas.

Os arquivos em txt das NFe podem ser nomeados como quizer pois na sua conversão para xml serão identificados conforme o padrão.

Para os demais arquivos segue o padrão:

Cancelamento

<id com 44 dígitos da NFe>-can.xml

Inutilização

<inicio>-<fim>-inu.xml