Padrão Tinus

Última atualização em: 26 de fevereiro, 2015

 

O mesmo segue a definição sugerida pela Abrasf, modelo 1.0, no entanto apresenta algumas particularidades:

– Não permite Substituição de RPS.

– O número do RPS deverá ser sequencial independente da série.

– É obrigatório informar dados para o Tomador.

1. Cancelamento NFS-e

Notas Fiscais de Serviço Eletrônica canceladas não retornam o arquivo de xml de NFS-e com as informações que a mesma foi cancelada. O padrão Tinus não permite consultar documentos cancelados.

2. Exemplo de XML

Para visualizar um XML de exemplo clique aqui.

Padrão Tinus – Antigo

Última atualização em: 26 de fevereiro, 2015

 

O mesmo segue a definição sugerida pela Abrasf, modelo 1.0, no entanto apresenta algumas particularidades:

– Não permite Substituição de RPS.

– O número do RPS deverá ser sequencial independente da série.

– É obrigatório informar dados para o Tomador.

1. Natureza da Operação

O campo de natureza da operação deverá seguir o padrão do InvoiCy NFS-e abaixo:

2. Cancelamento NFS-e

Notas Fiscais de Serviço Eletrônica canceladas não retornam o arquivo de xml de NFS-e com as informações que a mesma foi cancelada. O padrão Tinus não permite consultar documentos cancelados.

3. Exemplo de XML

Para visualizar um XML de exemplo clique aqui.

Testes de entrada em contingência – Integração via DLL Daruma

Última atualização em: 04 de maio, 2016

 

No módulo NFC-e da Plataforma InvoiCy é disponibilizada uma opção para que o usuário simule o ambiente de contingência para testar a sua aplicação. Esta opção deverá ser configurada por empresa, e é importante destacar que a mesma estará disponível apenas para o ambiente de homologação.

Para configurar o parâmetro e simular a entrada da contingência basta acessar o Painel de controle – Módulo NFC-e – Configurações para emissão, como demonstra a imagem a seguir.

Na tela do módulo NFC-e estará disponível o campo “Ativar simulação de contingência”, representado na imagem abaixo, com as opções Sim e Não. Nessa mesma tela será possível ainda configurar a ordem de entrada em contingência para a empresa.

Ao ativar a simulação da contingência os documentos de envio, inutilização e eventos (Cancelamento, CC-e, entre outros) emitidos nesse tempo não serão enviados para a SEFAZ, somente após a empresa desativar a opção.

Configurações de Contingência

 

Através desta opção é possível que o usuário simule várias situações que podem acontecer durante a emissão em contingência. A seguir iremos explicar essas possíveis situações e como o usuário deve proceder em cada uma delas.

Para exemplificar usaremos os termos Emissor 1, Plataforma InvoiCy e Daruma framework de forma a facilitar a compreensão por parte do usuário.

Se o Emissor 1 estiver emitindo em modo Normal com tpEmis 1, porém a opção “Ativar simulação de contingência” estiver configurada como Sim, a Plataforma InvoiCy irá entrar em modo contingência, este documento enviado irá detectar a entrada em contingência e ficará com status “Necessita interação”, retornando para o Emissor 1 o código 108.

O correto a fazer neste caso de retorno 108 é emitir uma cópia do documento anterior e avançar a numeração. Esta cópia terá um avanço na numeração e deverá referenciar o documento emitido anteriormente. Recomendamos a leitura do artigo Referenciando documento emitido anteriormente para compreender o funcionamento desse processo.

O Daruma FrameWork irá reenviar este novo xml automaticamente após receber o retorno.

Após o envio desse novo documento com tpEmis 9 o InvoiCy deverá cancelar ou inutilizar o documento anterior que está referenciado. Este processo não roda automaticamente no servidor de testes.

Já a partir da segunda emissão, os próximos documentos emitidos deverão continuar com o tpEmis 9, onde o retorno para o Emissor 1 será o código 109 e o status dos documentos será Contingência Offline.

Para cancelar a simulação do ambiente de contingência a empresa deve desativar a opção “Ativar simulação de contingência”, marcando como Não. Após a empresa sair do modo contingência no InvoiCy, então os documentos serão enviados para a SEFAZ e terão seu devido retorno.

É importante destacar ainda que sempre que o Emissor receber como retorno o código 108 deverá avançar a numeração e enviar um novo documento referenciando o anterior.

Não é aconselhável que o Emissor simule situações para receber o código 109 direto para o Daruma Framework quando estiver enviando com tpEmis 1, pois no processo do ambiente de produção este retorno não irá ocorrer, nesse caso sempre irá retornar primeiro o código 108.

O InvoiCy só irá retornar o código 109 quando estiver em contingência e receber um documento com tpEmis 9, ou se está em modo normal e receber um documento com tpEmis 9 e este identificar a contingência na SEFAZ.

Para facilitar o entendimento do emissor, elaboramos um fluxo abrangendo todas essas situações de emissão em contingência comentadas no artigo, bem como o retorno de cada situação.

Durante o processo de envio, ainda podem acontecer situações como o Aplicativo Comercial ou ERP não possuir conexão com a internet, ou a conexão com o InvoiCy ser perdida durante o processo de emissão e não dar nenhum retorno do documento.

Na primeira situação o documento não será enviado para o InvoiCy, sendo responsabilidade do emissor ajustar a sua infraestrutura para permitir a comunicação com o InvoiCy. Já na segunda situação, o emissor deverá consultar o status do documento para verificar se o mesmo já não foi emitido, ou se será necessário enviá-lo novamente.

Testes de entrada em contingência – Integração via Web Service

Última atualização em: 31 de março, 2016

 

No módulo NFC-e da Plataforma InvoiCy é disponibilizada uma opção para que o usuário simule o ambiente de contingência para testar a sua aplicação. Esta opção deverá ser configurada por empresa, e é importante destacar que a mesma estará disponível apenas para o ambiente de homologação.

Para configurar os parâmetros e simular a entrada da contingência basta acessar o Painel de controle – Módulo NFC-e – Configurações para emissão, como demonstra a imagem a seguir.

Na tela do módulo NFC-e estará disponível o campo “Simular contingência”, representado na imagem abaixo, onde o usuário poderá configurar a simulação do ambiente de contingência, com as opções “Simular timeout SEFAZ” que retorna o código 108, “Simular SEFAZ fora do ar” que retorna o código 109 e “Emissão normal” que retorna o código 100 após o documento ser autorizado na SEFAZ.

Ao ativar a simulação da contingência os documentos emitidos nesse tempo não serão enviados para a SEFAZ, somente após a empresa voltar para a opção “Emissão normal”.

Através desta opção é possível que o usuário simule várias situações que podem acontecer durante a emissão em contingência, que pode ser por EPEC ou contingência Offline.

Antes de optar pela opção EPEC, em primeiro lugar o emissor deverá tratar na integração o código de retorno 136, de forma que seu ERP consiga interpretar o mesmo, pois quando uma NFC-e for emitida em EPEC será retornado o código 109 no status da comunicação e o código 136 no status do documento, sem o arquivo xml, mas com o DANFENFC em base 64 (para mais informações sobre base64 acesse o artigo). Nesse caso, o documento foi emitido porém ainda não está autorizado na SEFAZ, então o emissor deverá consultar o documento posteriormente para ter o xml completo autorizado.

Da mesma forma, ao receber um retorno de código 136 o emissor não deve reenviar o documento, somente consultar o seu status. Tratando o código 136 na integração poderá evitar problemas maiores, como sua empresa ser bloqueada para emissão de documentos em EPEC. Mas em caso de bloqueio da empresa, o artigo Desbloqueio de EPEC explica como proceder nessa situação.

A seguir iremos explicar essas possíveis situações e como o usuário deve proceder em cada uma delas.

Para exemplificar usaremos os termos Emissor 1, Emissor 2, Plataforma InvoiCy e Aplicação parceiro, de forma a facilitar a compreensão por parte do usuário.

Caso 1:

Se o Emissor 1 estiver emitindo em modo Normal com tpEmis 1, porém a opção selecionada for “Simular timeout SEFAZ” a Plataforma InvoiCy irá entrar em modo contingência, este documento enviado irá detectar a entrada em contingência e ficará com status “Necessita interação”, retornando para o Emissor 1 o código 108.

O correto a fazer neste caso de retorno 108, é emitir uma cópia do documento anterior e avançar a numeração. Esta cópia terá um avanço na numeração e deverá referenciar o documento emitido anteriormente. Recomendamos a leitura do artigo Referenciando documento emitido anteriormente para compreender o funcionamento desse processo.

O InvoiCy está preparado para que mesmo na opção “Simular timeout SEFAZ”, se receber um xml com tpEmis 9, retornar o código 109. Após o envio desse novo documento com tpEmis 9 o InvoiCy deverá cancelar ou inutilizar o documento anterior que está referenciado. Este processo não roda automaticamente no servidor de testes.

Ao alterar a opção no InvoiCy  para “Simular SEFAZ fora do ar” os próximos documentos enviados irão retornar para o Emissor 1 o código 109 como status da comunicação e do documento,  se forem emitidos em contingência Offline. Porém, se forem emitidos em EPEC o retorno do status de comunicação será 109, e o retorno do status do documento será 136.

Ainda pode acontecer a situação de nenhuma contingência configurada estar disponível, então o documento ficará como pendente no InvoiCy e não será emitido. O emissor receberá como retorno de status da comunicação o código 109, e como retorno de status do documento o código 105. Isso indica que não poderá mais emitir temporariamente, e deverá então realizar uma consulta antes de fazer o envio da próxima NFC-e.

É importante salientar que o emissor deve sempre estar atento para o código de retorno do status do documento, e não apenas para o código de retorno da comunicação. Para auxiliar na identificação de ambos, o código de status da comunicação pode ser observado no cabeçalho de retorno do SOAP. Já o código do status do documento pode ser visualizado dentro do arquivo xml do documento.

Caso 2:

Pode acontecer uma situação onde o InvoiCy está configurado para emissão em contingência e um Emissor 2 do mesmo estado do Emissor 1, que desconhece que o InvoiCy está em modo contingência, envia um documento com tpEmis 1. Neste caso, o Emissor 2 irá receber como retorno o código 108 e seguirá o fluxo da mesma forma que o Emissor 1 quando também recebeu o retorno 108.

Caso 3:

Também pode acontecer uma situação onde o Emissor 1 recebeu o retorno 108 no primeiro documento, indicando que este documento identificou a entrada em contingência. Se durante este processo de referenciar o documento anterior e enviar novamente o novo documento, o InvoiCy saiu do modo contingência por ter conseguido autorizar outro documento do Emissor 2, ao receber este documento do Emissor 1 com tpEmis 9 ou 4, e ao enviar para a SEFAZ detectar novamente a contingência, o Emissor 1 irá receber o retorno 109 e o documento ficará armazenado no InvoiCy com status Contingência Offline, ou EPEC autorizado.

Para cancelar a simulação do ambiente de contingência a empresa deve selecionar a opção “Emissão normal”.  Após a empresa sair do modo contingência no InvoiCy, então os documentos serão enviados para a SEFAZ e terão seu devido retorno.

É importante destacar ainda que sempre que o Emissor receber como retorno o código 108 deverá avançar a numeração e enviar um novo documento referenciando o anterior.

Não é aconselhável que o Emissor simule situações para receber o código 109 quando estiver enviando com tpEmis 1, pois no processo do ambiente de produção este retorno não irá ocorrer, nesse caso sempre irá retornar primeiro o código 108.

O InvoiCy só irá retornar o código 109 quando estiver em contingência e receber um documento com tpEmis 9, ou se está em modo normal e receber um documento com tpEmis 9 e este identificar a contingência na SEFAZ.

Para facilitar o entendimento do emissor, elaboramos um fluxo abrangendo todas essas situações de emissão em contingência comentadas no artigo, bem como o retorno de cada situação.

Durante o processo de envio, ainda podem acontecer situações como o Aplicativo Comercial ou ERP não possuir conexão com a internet, ou a conexão com o InvoiCy ser perdida durante o processo de emissão e não dar nenhum retorno do documento.

Na primeira situação o documento não será enviado para o InvoiCy, sendo responsabilidade do emissor ajustar a sua infraestrutura para permitir a comunicação com o InvoiCy. Já na segunda situação, o emissor deverá consultar o status do documento para verificar se o mesmo já não foi emitido, ou se será necessário enviá-lo novamente.

Contingência para Módulo MDF-e

Última atualização em: 23 de fevereiro, 2015

 

Olá! Neste artigo iremos explicar sobre o processo de envio de documentos em contingência, as possíveis situações que podem acontecer e como o emissor deve proceder em cada uma delas.

Para o módulo MDF-e está disponível apenas a forma de contingência Offline, então o emissor não tem a necessidade de configurar a Ordem de Entrada em Contingência para a sua empresa. Diferente dos demais módulos, quem integra com o módulo MDF-e conseguirá sempre emitir seus documentos, indiferente do retorno que receber.

Ao receber o arquivo xml, por alguma falha na comunicação a Plataforma InvoiCy pode não conseguir enviar o documento para a SEFAZ, nesse caso então entrará em modo Contingência e o documento enviado irá detectar a entrada em contingência, ficando com status “Necessita interação” e retornando para o Emissor o código 108.

O correto a fazer neste caso de retorno 108, é emitir uma cópia do documento anterior e avançar a numeração. Esta cópia terá um avanço na numeração e deverá referenciar o documento emitido anteriormente. Recomendamos a leitura do artigo Referenciando documento emitido anteriormente para compreender o funcionamento desse processo.

Enquanto o InvoiCy estiver operando em modo contingência, o emissor receberá como retorno de status da comunicação o código 109, e como retorno de status do documento o código 105. Mas diferente dos demais módulos, o emissor poderá continuar emitindo seus documentos normalmente, que ficarão armazenados e serão enviados para a SEFAZ quando a comunicação voltar.

É importante salientar que o emissor deve sempre estar atento para o código de retorno do status do documento, e não apenas para o código de retorno da comunicação. Para auxiliar na identificação de ambos, o código de status da comunicação pode ser observado no cabeçalho de retorno do SOAP. Já o código do status do documento pode ser visualizado dentro do arquivo xml do documento.

Após a empresa sair do modo contingência no InvoiCy, então os documentos serão enviados para a SEFAZ e terão seu devido retorno.

É importante destacar ainda que sempre que o Emissor receber como retorno o código 108 deverá avançar a numeração e enviar um novo documento referenciando o anterior.

Para facilitar o entendimento do emissor, foi elaborado um fluxo abrangendo todas essas situações de emissão em contingência, bem como o retorno de cada situação.

Durante o processo de envio, ainda podem acontecer situações como o Aplicativo Comercial ou ERP não possuir conexão com a internet, ou a conexão com o InvoiCy ser perdida durante o processo de emissão e não dar nenhum retorno do documento.

Na primeira situação o documento não será enviado para o InvoiCy, sendo responsabilidade do emissor ajustar a sua infraestrutura para permitir a comunicação com o InvoiCy. Já na segunda situação, o emissor deverá consultar o status do documento para verificar se o mesmo já não foi emitido, ou se será necessário enviá-lo novamente.

Contingência para Módulo CT-e

Última atualização em: 19 de julho, 2016

 

Olá! Neste artigo iremos falar sobre o processo de envio de documentos em contingência, as possíveis situações que podem acontecer e como o emissor deve proceder em cada uma delas.

Primeiramente o emissor deve definir as configurações relacionadas a contingência para sua empresa. Para isso, basta acessar o Painel de Controle, módulo CT-e, Configurações para emissão, como demonstra a imagem.

 

Para o módulo CT-e estão disponíveis as formas de contingência EPEC, SVC e Nenhuma, onde o InvoiCy possibilita que o emissor defina qual a opção de emissão será priorizada no momento em que o ambiente normal estiver indisponível.

Para definir a ordem das opções de emissão basta clicar nas flechas que estão ao lado de cada uma das opções, até posicioná-las na forma desejada. O InvoiCy fará o envio do documento de acordo com a primeira opção de contingência que estiver configurada. Caso a primeira opção de contingência não esteja disponível, será realizada uma tentativa de envio para a opção seguinte, seguindo assim para todas as opções e só encerrando o processo ao chegar na opção Nenhuma.

 

Opções de contingência

Bem, antes de definir qual será a primeira opção de emissão em contingência, vamos entender as diferenças entre os ambientes SVC e EPEC.

O ambiente da SEFAZ Virtual de Contingência (SVC) tem sua disponibilidade controlada pela SEFAZ, sendo ativado geralmente quando a SEFAZ de origem realiza alguma manutenção programada em sua estrutura. Nestas circunstâncias, a SEFAZ de origem solicitará a ativação do ambiente SVC para sua UF, que passará a receber seus CT-e por um tempo pré-definido. Os CT-e autorizados pela SVC não precisam ser reenviados, pois a sincronização dos documentos entre a SVC e a SEFAZ de origem é realizada automaticamente.

Já o Evento Prévio de Emissão em Contingência (EPEC) está disponível a qualquer momento, sendo recebido pelo Ambiente Nacional, porém um evento de CT-e registrado neste ambiente, necessita obrigatoriamente, de seu posterior envio para a SEFAZ de origem, realizando assim a conciliação do evento junto a autorização do CT-e.

Outra informação que deve ficar entendida é que a contingência é definida por UF e não por empresa, ou seja, a partir do momento que qualquer uma das empresas emitentes em determinada UF deixar de receber o retorno de um documento da SEFAZ, esta UF passará a operar em contingência e todas as demais empresas desta UF também.

A partir do momento em que a contingência for ativada, o InvoiCy passará a verificar a ordem de contingência configurada em cada empresa e fará o envio dos documentos conforme esta configuração.

 

Contingência SVC

Se a contingência SVC estiver configurada como primeira opção, o InvoiCy fará o envio do documento para o ambiente da SVC, que uma vez estando ativo, fará as validações do documento e em caso de efetivação o emissor receberá como retorno o código 100, o arquivo xml e o DACTE (conforme configurações da empresa), indicando que o documento foi autorizado. Nesse caso o processo de envio em contingência foi executado com sucesso, o documento está autorizado e o emissor não tem a necessidade de consultar o status do documento, pois conforme vimos acima, a sincronização entre os ambientes será automática.

Em caso de rejeição o emissor deverá fazer a correção e o reenvio do documento. Se o ambiente da SVC não estiver ativo, o InvoiCy fará uma nova tentativa de envio do documento para o EPEC, caso esta for a segunda opção de contingência configurada, senão o processo termina neste momento e o documento ficará com o status Pendente.

Acesse o fluxo da contingência SVC.

 

Contingência EPEC

Agora, se a primeira opção for a contingência EPEC, o InvoiCy fará o envio de um evento com os dados do documento para o ambiente nacional da SEFAZ, onde passará por validações básicas em sua estrutura e em caso de autorização o emissor receberá como retorno de status da comunicação o código 109, e como retorno de status do documento o código 136, sem o arquivo xml, mas com o DACTE para transporte da mercadoria. Isto significa que o documento foi emitido porém ainda não está autorizado na SEFAZ, ou seja, o emissor deverá realizar, em um segundo momento, a consulta desse documento para atualização de status e obtenção do XML completo de autorização.

Acesse o fluxo da contingência EPEC.

Vale ressaltar que no momento em que a comunicação com a SEFAZ de origem for restabelecida, o IncoiCy fará automaticamente o envio de todos os documentos emitidos em EPEC para a sua SEFAZ de origem, buscando sua autorização e consequentemente a conciliação do evento EPEC. Em caso de rejeição o emissor deverá fazer a correção e o reenvio do documento.

Pode acontecer ainda a situação de nenhuma das contingências configuradas estarem disponíveis, então o documento ficará como pendente no InvoiCy e não será emitido. O emissor receberá como retorno de status da comunicação o código 109, e como retorno de status do documento o código 105.

109 – SEFAZ em contingência

105 – Documento pendente

Resumo: O emissor estará temporariamente impedido de emitir e deverá realizar uma consulta antes de fazer o envio do próximo documento.

 

Códigos de retorno

É importante salientar que o emissor deve estar atento aos códigos de retorno do status do documento, e não apenas para o código de retorno da comunicação. Para auxiliar na identificação de ambos, o código de status da comunicação pode ser observado no cabeçalho de retorno do SOAP. Já o código do status do documento pode ser visualizado dentro do arquivo xml do documento.

Uma vez definida a utilização do EPEC, o emissor deverá tratar em sua integração o código de retorno 136, de forma que o ERP consiga interpretar o mesmo, pois quando um documento for emitido em EPEC, os códigos retornados serão 109 para o status da comunicação e 136 para o status do documento. Neste caso o emissor deverá fazer uma consulta posteriormente destes documentos buscando a atualização de seus status e não deverá realizar seu reenvio enquanto não obtiver um novo status. Isso irá evitar problemas de duplicidade de documento com diferença na chave de acesso e bloqueio de empresas para emissão de novos documentos em EPEC. Em caso de bloqueio da empresa, o artigo Desbloqueio de EPEC explica como proceder nessa situação.

109 – SEFAZ em contingência

136 – Contingência EPEC

Resumo: Para os documentos com estes status, o emissor deverá realizar consultas para a atualização de status e fazer seu reenvio somente quando receber um status diferente do atual.

Outro código que precisa ser tratado na integração é o 108, que será retornado para o documento que identificar a indisponibilidade da SEFAZ de uma UF. Isso irá ocorrer quando o InvoiCy receber um documento e não conseguir enviá-lo à SEFAZ ou não obtiver o seu retorno junto a SEFAZ, detectando neste momento a necessidade de entrar em modo de contingência. O documento que identificar a contingência ficará com o status “Necessita interação” no InvoiCy e o emissor receberá como retorno do InvoiCy o código 108, tanto para o status do documento, como para o status da comunicação.

108 – Entrada da SEFAZ em contingência: [erro_encontrado]

108 – Entrada da SEFAZ em contingência: [erro_encontrado]

Resumo: Quando o emissor receber o retorno 108, seu sistema deverá estar preparado para emitir uma cópia do documento anterior, avançando sua numeração e referenciando o documento emitido anteriormente. Recomendamos a leitura do artigo Referenciando documento emitido anteriormente” para compreender o funcionamento desse processo.

Uma informação importante quanto ao código 108 é que um único documento por UF irá receber este retorno ao identificar alguma falha de comunicação com a SEFAZ, pois a partir disso todos os demais documentos das empresas que emitam nesta mesma UF passarão a emitir automaticamente em modo de contingência. Outro detalhe é que este retorno independe do tipo de contingência utilizada pela empresa que enviou o documento e detectou a falha de comunicação.

 

Por que avançar numeração e referenciar o documento anterior?

Esta regra foi implementada para evitar problemas com o documento que identificar a contingência, uma vez que neste momento não é possível saber se o documento chegou até a SEFAZ ou não. Realizando este tratamento o emissor consegue garantir que um documento que pode estar efetivado na SEFAZ não seja enviado também para a SVC ou EPEC, por exemplo. Supondo que o documento esteja efetivado na SEFAZ e seja feito simplesmente o seu reenvio pelo sistema, como o InvoiCy já estará operando em modo de contingência ele fará o envio para uma das opções (SVC ou EPEC), podendo gerar os seguintes problemas:

– Se o documento for enviado e efetivado na SVC, irá ocorrer falha na sincronização entre os ambientes, devido a duplicidade de documento com diferença nas chaves de acesso;

– Se for enviado para EPEC, o problema irá ocorrer no momento da conciliação do documento, pois o documento teve um EPEC com horário posterior a sua autorização.

Uma vez referenciado o documento, o InvoiCy se encarrega de realizar as ações necessárias sobre ele, realizando seu cancelamento ou inutilização, conforme for a situação em que o mesmo se encontra junto a SEFAZ.

 

Restabelecimento de comunicação

Após cessarem os problemas de comunicação com a SEFAZ da UF o InvoiCy voltará ao modo de comunicação normal e passará a verificar quais documentos precisam receber algum encaminhamento.

Para o documento que identificou a contingência e foi referenciado no segundo documento, o InvoiCy fará automaticamente a sua consulta junto a SEFAZ. Se estiver efetivado será providenciado seu cancelamento, caso contrário, a sua inutilização.

Já para os documentos emitidos em EPEC, o InvoiCy irá realizar seu envio para conciliação, podendo ser efetivado ou rejeitado. Estes são os casos de retorno 136, onde o emissor deverá fazer a consulta dos documentos para atualização de seus status e reenvio, quando necessário.

Para facilitar o entendimento do emissor, foi elaborado um fluxo abrangendo todas as situações de emissão em contingência, bem como o retorno de cada situação.

Durante o processo de envio, ainda podem acontecer situações como o Aplicativo Comercial ou ERP não possuir conexão com a internet, ou a conexão com o InvoiCy ser perdida durante o processo de emissão e não dar nenhum retorno do documento.

Na primeira situação o documento não será enviado para o InvoiCy, sendo responsabilidade do emissor ajustar a sua infraestrutura para permitir a comunicação com o InvoiCy. Já na segunda situação, o emissor deverá consultar o status do documento para verificar se o mesmo já não foi emitido, ou se será necessário enviá-lo novamente.

Contingência para Módulo NF-e

Última atualização em: 31 de agosto, 2016

 

Olá! Neste artigo iremos falar sobre o processo de envio de documentos em contingência, as possíveis situações que podem acontecer e como o emissor deve proceder em cada uma delas.

Primeiramente o emissor deve definir as configurações relacionadas a contingência para sua empresa. Para isso, basta acessar o Painel de Controle, módulo NF-e, Configurações para emissão, como demonstra a imagem.

 

Para o módulo NF-e estão disponíveis as formas de contingência EPEC, SVC, FS-DA e Nenhuma, onde o InvoiCy possibilita que o emissor defina qual a opção de emissão será priorizada no momento em que o ambiente normal estiver indisponível.

Para definir a ordem das opções de emissão basta clicar nas flechas que estão ao lado de cada uma das opções, até posicioná-las na forma desejada. O InvoiCy fará o envio do documento de acordo com a primeira opção de contingência que estiver configurada. Caso a primeira opção de contingência não esteja disponível será realizada uma tentativa de envio para a opção seguinte, seguindo assim para todas as opções e só encerrando o processo ao chegar na opção Nenhuma.

Opções de contingência

Bem, antes de definir qual será a primeira opção de emissão em contingência, vamos entender as diferenças entre os ambientes SVC, EPEC e FS-DA.

O ambiente da SEFAZ Virtual de Contingência (SVC) tem sua disponibilidade controlada pela SEFAZ, sendo ativado geralmente quando a SEFAZ de origem realiza alguma manutenção programada em sua estrutura. Nestas circunstâncias, a SEFAZ de origem solicitará a ativação do ambiente SVC para sua UF, que passará a receber suas NF-e por um tempo pré-definido. As NF-e autorizadas pela SVC não precisam ser reenviadas, pois a sincronização dos documentos entre a SVC e a SEFAZ de origem é realizada automaticamente.

Já o Evento Prévio de Emissão em Contingência (EPEC) está disponível a qualquer momento, sendo recebido pelo Ambiente Nacional, porém um evento de NF-e registrado neste ambiente, necessita obrigatoriamente, de seu posterior envio para a SEFAZ de origem, realizando assim a conciliação do evento junto a autorização da NF-e.

Por fim, Contingência com uso do Formulário de Segurança para impressão de Documento Auxiliar é a alternativa mais simples para a situação em que exista algum impedimento para obtenção da autorização de uso da NF-e, como por exemplo, um problema no acesso à internet ou a indisponibilidade da SEFAZ de origem do emissor. O envio das NF-e emitidas nesta situação para SEFAZ de origem será realizado quando cessarem os problemas técnicos que impediam a sua transmissão. Essa é a última opção que recomenda-se utilizar para emitir em contingência, ou seja, quando nenhuma das outras opções estiverem ativas.

Outra informação que deve ficar entendida é que a contingência é definida por UF e não por empresa, ou seja, a partir do momento que qualquer uma das empresas emitentes em determinada UF deixar de receber o retorno de um documento da SEFAZ, esta UF passará a operar em contingência e todas as demais empresas desta UF também.

A partir do momento em que a contingência for ativada, o InvoiCy passará a verificar a ordem de contingência configurada em cada empresa e fará o envio dos documentos conforme esta configuração.

 

Contingência SVC

Se a contingência SVC estiver configurada como primeira opção, o InvoiCy fará o envio do documento para o ambiente da SVC, que uma vez estando ativo, fará as validações do documento e em caso de efetivação o emissor receberá como retorno o código 100, o arquivo xml e o DANFE (conforme configurações da empresa), indicando que o documento foi autorizado. Nesse caso o processo de envio em contingência foi executado com sucesso, a venda está autorizada e o emissor não tem a necessidade de consultar o status do documento, pois conforme vimos acima, a sincronização entre os ambientes será automática.

Em caso de rejeição o emissor deverá fazer a correção e o reenvio do documento. Se o ambiente da SVC não estiver ativo, o InvoiCy fará uma nova tentativa de envio do documento para o EPEC, caso esta for a próxima opção de contingência configurada, senão o processo continuará tentando enviar para as próximas opções de contingência, e só será encerrado quando chegar na opção ‘Nenhuma’, onde o documento ficará com o status Pendente.

Acesse o fluxo da contingência SVC.

 

Contingência EPEC

Agora, se a primeira opção for a contingência EPEC, o InvoiCy fará o envio de um evento com os dados do documento para o ambiente nacional da SEFAZ, onde passará por validações básicas em sua estrutura e em caso de autorização o emissor receberá como retorno de status da comunicação o código 109, e como retorno de status do documento o código 136, sem o arquivo xml, mas com o DANFE para transporte da mercadoria. Isto significa que o documento foi emitido porém ainda não está autorizado na SEFAZ, ou seja, o emissor deverá realizar, em um segundo momento, a consulta desse documento para atualização de status e obtenção do XML completo de autorização.

Acesse o fluxo da contingência EPEC.

Vale ressaltar que no momento em que a comunicação com a SEFAZ de origem for restabelecida, o InvoiCy fará automaticamente o envio de todos os documentos emitidos em EPEC para a sua SEFAZ de origem, buscando sua autorização e consequentemente a conciliação do evento EPEC. Em caso de rejeição o emissor deverá fazer a correção e o reenvio do documento.

 

Contingência FS-DA

A opção de contingência FS-DA deve ser utilizada quando o emissor identificar a existência de qualquer fator que prejudique ou impossibilite a transmissão das NF-e e/ou obtenção da autorização de uso da SEFAZ. Se essa opção estiver configurada, a NF-e não será enviada imediatamente para a SEFAZ, apenas quando cessarem os problemas de comunicação e o serviço for reestabelecido a NF-e será reenviada para validação e autorização pela SEFAZ do seu estado. Destacando que com essa opção o DANFE deverá ser impresso em papel moeda, e quando a conexão voltar o documento deve ser consultado para obter o seu status atualizado, e em caso de rejeição deve ser corrigido e enviado novamente.

Acesse o fluxo da contingência FS-DA.

Pode acontecer ainda a situação de nenhuma das contingências configuradas estarem disponíveis, então o documento ficará como pendente no InvoiCy e não será emitido. O emissor receberá como retorno de status da comunicação o código 109, e como retorno de status do documento o código 105.

109 – SEFAZ em contingência

105 – Documento pendente

Resumo: O emissor estará temporariamente impedido de emitir e deverá realizar uma consulta antes de fazer o envio do próximo documento.

Códigos de retorno

É importante salientar que o emissor deve estar atento aos códigos de retorno do status do documento, e não apenas para o código de retorno da comunicação. Para auxiliar na identificação de ambos, o código de status da comunicação pode ser observado no cabeçalho de retorno do SOAP. Já o código do status do documento pode ser visualizado dentro do arquivo xml do documento.

Uma vez definida a utilização do EPEC, o emissor deverá tratar em sua integração o código de retorno 136, de forma que o ERP consiga interpretar o mesmo, pois quando um documento for emitido em EPEC, os códigos retornados serão 109 para o status da comunicação e 136 para o status do documento. Neste caso o emissor deverá fazer uma consulta posteriormente destes documentos buscando a atualização de seus status e não deverá realizar seu reenvio enquanto não obtiver um novo status. Isso irá evitar problemas de duplicidade de documento com diferença na chave de acesso e bloqueio de empresas para emissão de novos documentos em EPEC. Em caso de bloqueio da empresa, o artigo Desbloqueio de EPEC explica como proceder nessa situação.

109 – SEFAZ em contingência

136 – Contingência EPEC

Resumo: Para os documentos com estes status, o emissor deverá realizar consultas para a atualização de status e fazer seu reenvio somente quando receber um status diferente do atual.

Ao fazer uso da contingência FS-DA o emissor deverá tratar em sua integração o código de retorno 109, de forma que o ERP consiga interpretar o mesmo, pois quando um documento for emitido em FS-DA os códigos retornados serão 109 para o status da comunicação e 109 para o status do documento.

109 – SEFAZ em contingência

109 – Contingência FS-DA

Resumo: Para os documentos com esses status o emissor deverá realizar consultas para a atualização de status do documento quando a conexão voltar. Se o documento rejeitar deve corrigi-lo e envia-lo novamente. Para efetuar a impressão do DANFE deve fazer uso de papel moeda.

Outro código que precisa ser tratado na integração é o 108, que será retornado para o documento que identificar a indisponibilidade da SEFAZ de uma UF. Isso irá ocorrer quando o InvoiCy receber um documento e não conseguir enviá-lo à SEFAZ ou não obtiver o seu retorno junto a SEFAZ, detectando neste momento a necessidade de entrar em modo de contingência. O documento que identificar a contingência ficará com o status “Necessita interação” no InvoiCy e o emissor receberá como retorno do InvoiCy o código 108, tanto para o status do documento, como para o status da comunicação.

108 – Entrada da SEFAZ em contingência: [erro_encontrado]

108 – Entrada da SEFAZ em contingência: [erro_encontrado]

Resumo: Quando o emissor receber o retorno 108, seu sistema deverá estar preparado para emitir uma cópia do documento anterior, avançando sua numeração e referenciando o documento emitido anteriormente. Recomendamos a leitura do artigo Referenciando documento emitido anteriormente” para compreender o funcionamento desse processo.

Uma informação importante quanto ao código 108 é que um único documento por UF irá receber este retorno ao identificar alguma falha de comunicação com a SEFAZ, pois a partir disso todos os demais documentos das empresas que emitam nesta mesma UF passarão a emitir automaticamente em modo de contingência. Outro detalhe é que este retorno independe do tipo de contingência utilizada pela empresa que enviou o documento e detectou a falha de comunicação.

 

Por que avançar numeração e referenciar o documento anterior?

Esta regra foi implementada para evitar problemas com o documento que identificar a contingência, uma vez que neste momento não é possível saber se o documento chegou até a SEFAZ ou não. Realizando este tratamento o emissor consegue garantir que um documento que pode estar efetivado na SEFAZ não seja enviado também para a SVC, EPEC ou FS-DA, por exemplo. Supondo que o documento esteja efetivado na SEFAZ e seja feito simplesmente o seu reenvio pelo sistema, como o InvoiCy já estará operando em modo de contingência ele fará o envio para uma das opções (SVC, EPEC ou FS-DA), podendo gerar os seguintes problemas:

– Se o documento for enviado e efetivado na SVC, irá ocorrer falha na sincronização entre os ambientes, devido a duplicidade de documento com diferença nas chaves de acesso;

– Se for enviado para EPEC, o problema irá ocorrer no momento da conciliação do documento, pois o documento teve um EPEC com horário posterior a sua autorização.

– Se o documento for enviado para FS-DA, irá ocorrer uma rejeição devido a duplicidade de documento com diferença nas chaves de acesso.

Uma vez referenciado o documento, o IncoiCy se encarrega de realizar as ações necessárias sobre ele, realizando seu cancelamento ou inutilização, conforme for a situação em que o mesmo se encontra junto a SEFAZ.

 

Restabelecimento de comunicação

Após cessarem os problemas de comunicação com a SEFAZ da UF o InvoiCy voltará ao modo de comunicação normal e passará a verificar quais documentos precisam receber algum encaminhamento.

Para o documento que identificou a contingência e foi referenciado no segundo documento, o InvoiCy fará automaticamente a sua consulta junto a SEFAZ. Se estiver efetivado será providenciado seu cancelamento, caso contrário, a sua inutilização.

Já para os documentos emitidos em EPEC, o InvoiCy irá realizar seu envio para conciliação, podendo ser efetivado ou rejeitado. Estes são os casos de retorno 136, onde o emissor deverá fazer a consulta dos documentos para atualização de seus status e reenvio, quando necessário.

Para facilitar o entendimento do emissor, foi elaborado um fluxo abrangendo todas as situações de emissão em contingência, bem como o retorno de cada situação.

Durante o processo de envio, ainda podem acontecer situações como o Aplicativo Comercial ou ERP não possuir conexão com a internet, ou a conexão com o InvoiCy ser perdida durante o processo de emissão e não dar nenhum retorno do documento.

Na primeira situação o documento não será enviado para o InvoiCy, sendo responsabilidade do emissor ajustar a sua infraestrutura para permitir a comunicação com o InvoiCy. Já na segunda situação, o emissor deverá consultar o status do documento para verificar se o mesmo já não foi emitido, ou se será necessário enviá-lo novamente.

Descarte de documentos

Última atualização em: 17 de janeiro, 2017

Olá, neste artigo iremos explicar como proceder para descartar um documento que já foi emitido anteriormente.

Durante o processo de emissão dos documentos fiscais podem acontecer inúmeros imprevistos que impedem de obter o status final do documento. Quando o emitente desconhece o que aconteceu com o seu documento enviado, ou não possui o status final do mesmo, recomenda-se emitir um novo documento avançando a numeração, e descartar o documento emitido anteriormente.

Existem duas formas para efetuar o descarte dos documentos. Explicaremos a seguir cada uma das formas, com exemplos da estrutura XML que deve ser enviada ao InvoiCy.

Para facilitar a inutilização ou o cancelamento de um documento que precisou ser emitido em contingência, o InvoiCy disponibiliza no layout de integração um grupo chamado “SubstituirDocumento”, onde poderá ser informado o número e a série do documento que deverá ser substituído. O InvoiCy detectará automaticamente quando a SEFAZ de origem do emissor voltar a operar e irá inutilizar ou cancelar o documento marcado como substituído, dependendo de qual status ele apresentar junto a SEFAZ.

Basta enviar a seguinte estrutura de tags: <SubstituirDocumento><nNF>540</nNF><serie>36</serie><modelo>NFe</modelo></SubstituirDocumento>, convertida para texto e dentro da tag “Parametros”, como demonstra a imagem a seguir. Na tag “Documento” deve-se enviar o novo documento avançando a numeração, e na tag parâmetros informar o documento que foi emitido anteriormente e que será substituído agora.

Nesse caso deve-se gerar a chave de comunicação preenchendo a tag <EmpCK>, concatenando a chave de acesso da empresa juntamente com o conteúdo XML enviado na tag <Documento>. Para mais informações sobre como gerar a Chave EmpCK acesse o artigo Gerando o código Hash no formato MD5.

Clique aqui para fazer download do XML exibido na imagem.

Após, ao acessar os detalhes do documento que efetuou o descarte, na aba Descarte pode-se visualizar as informações sobre o processo, como a data e horário que o descarte foi realizado, o status do descarte, e na coluna referência identificar o documento que foi descartado, e bem como o documento que solicitou o descarte.

Por exemplo, de acordo com a imagem acima a NF-e de número 541, série 36 referenciou para descarte o documento de número 540, série 36, que já existia no InvoiCy. Ao acessar os detalhes do documento 541, na aba descarte serão apresentadas as informações da imagem acima. De acordo com a imagem a coluna ‘Status’ representa o status final da ação de descarte sobre o documento 540, que nesse caso foi descartado com sucesso.

Ao clicar em qualquer informação da grid o usuário será direcionado para os detalhes do documento 540. Na aba descarte serão apresentadas as informações da imagem abaixo.

A NF-e de número 540, série 36 foi referenciada para descarte pelo documento de número 541, série 36, e nesse caso a coluna Status traz a informação ‘Não se aplica’, pois essa coluna se refere ao status do descarte em si, que nesse caso foi executado pelo documento 541, por isso a informação não se aplica aqui no documento 540.

A segunda forma para efetuar o descarte de um documento é enviar a estrutura XML apresentada a seguir. Após o InvoiCy irá efetuar o processamento desse envio, e irá inutilizar ou cancelar o documento de acordo com o seu status perante a SEFAZ. 

<DescartarDocumento>
    <ModeloDocumento>NFe</ModeloDocumento>
    <tpAmb>2</tpAmb>
    <CNPJ_emit>99999999999999</CNPJ_emit>
    <Numero>10</Numero>
    <Serie>403</Serie>
</DescartarDocumento>

Basta enviar a estrutura de tags do exemplo acima, convertida para texto e dentro da tag “Documento”, como demonstra a imagem a seguir.

Destacando que nesse caso também deve-se gerar a chave de comunicação para preencher a tag <EmpCK>, concatenando a chave de acesso da empresa juntamente com o conteúdo XML enviado na tag <Documento>. Para mais informações sobre como gerar a Chave EmpCK acesse o artigo Gerando o código Hash no formato MD5.

Clique aqui para efetuar o download do XML exibido na imagem.

Ao enviar esse layout de integração para efetuar o descarte de um documento, não será criada a aba Descarte com as informações nos detalhes do documento, por se tratar de um descarte direto, sem referência de outro documento.

Através da tela inicial do InvoiCy você pode identificar todos os documentos que foram solicitados descarte ou substituição, por meio do filtro ‘Descarte’, como demonstra a imagem abaixo.

Com esta lista de documentos, é possível avaliar pelo status se estes tiveram sucesso no processo de substituição ou descarte.

Os documentos que estão com status Autorizado podem ser marcados e exportados em formato .xls através da opção ‘Exportar lista Microsoft Excel’ disponível também na tela inicial, para auxiliar na montagem da NF-e de devolução, por exemplo.

Em situações de falha no processo de substituição ou descarte, os emissores receberão notificações via e-mail sobre os documentos que não tiveram sucesso no processo. Destacando que para que o recebimento dos e-mails ocorra é necessário possuir uma caixa de e-mail configurada, para mais informações leia o artigo Configurando uma caixa de e-mail.

A tabela abaixo demonstra em quais situações o emissor será notificado com um e-mail.

Ao ocorrer qualquer umas das rejeições citadas acima, será disparado um e-mail ao emissor, contendo as seguintes informações no corpo do e-mail:

Notificação sobre falha na substituição de documentos

Olá, houve uma falha no processo de substituição de documentos.

Empresa: Nome da empresa

Modelo: Modelo do documento

Número: Número do documento

Série: Série do documento

Chave de acesso: Chave de acesso do documento

Motivo: Motivo da rejeição

Ação a ser feita pelo emissor: Ação a ser executada pelo emissor

É importante destacar que se o cliente solicitar o descarte de um documento, e o certificado digital da sua empresa vencer antes do descarte ser executado pelo InvoiCy, manteremos o pedido de descarte por 45 dias no InvoiCy (esse parâmetro está sujeito a modificações). Se dentro desse período a empresa não atualizar o seu certificado digital, o pedido de descarte será  abortado.

Padrão Equiplano

Última atualização em: 23 de fevereiro, 2015

Para o padrão EQUIPLANO existem algumas diferenças em relação aos demais modelos que seguem o padrão ABRASF, listadas abaixo:

– Empresas prestadoras de serviço em um dos municípios abrangidos pelo padrão Equiplano deverão configurar no cadastro da empresa a emissão através do Processamento Assíncrono.

– O campo série deve representar o número 1 ou o número do caixa de atendimento.

– Não permite informar o Intermediário do serviço.

– Não permite substituição.

– Quando o tomador for estrangeiro, poderá informar o documento de identificação do tomador no campo DocTomadorEstrangeiro do grupo Tomador, bem como TomaxMun contendo o nome da cidade do Tomador. Neste caso os campos CPF e CNPJ devem ser enviados em branco.

– Quando houver valor de dedução, é necessário informar a justificativa da dedução no campo JustDed do grupo Valores, ou no campo ItemJustDed do grupo Item caso enviar itens do RPS.

– O campo do código do serviço – IteListServ ou ItemIteListServico quando utilizar estrutura de itens – deverá ser sempre informado contendo o ponto separador. Ex: 14.1.

1. Exemplos de XML

Para visualizar um XML de exemplo clique aqui.

E para visualizar um XML de exemplo com itens, clique aqui.

ATENÇÃO: Prezado cliente após realizar o cadastro de vossa empresa com a prefeitura, é necessário que realize a emissão de pelo menos uma NFS-e no ambiente de homologação, e só assim estará habilitado a emitir NFS-e em produção.

Padrão Equiplano – Antigo

Última atualização em: 23 de fevereiro, 2015

 

Para o padrão EQUIPLANO existem algumas diferenças em relação aos demais modelos que seguem o padrão ABRASF, listadas abaixo:

– Empresas prestadoras de serviço em um dos municípios abrangidos pelo padrão Equiplano deverão configurar no cadastro da empresa a emissão através do Processamento Assíncrono.

– O campo série deve representar o número 1 ou o número do caixa de atendimento.

– Não permite informar o Intermediário do serviço.

– Não permite substituição.

– Quando o tomador for estrangeiro, poderá informar o documento de identificação do tomador no campo DocTomadorEstrangeiro do grupo Tomador, bem como TomaxMun contendo o nome da cidade do Tomador. Neste caso os campos CPF e CNPJ devem ser enviados em branco.

– Quando houver valor de dedução, é necessário informar a justificativa da dedução no campo JustDed do grupo Valores, ou no campo ItemJustDed do grupo Item caso enviar itens do RPS.

– O campo do código do serviço – IteListServ ou ItemIteListServico quando utilizar estrutura de itens – deverá ser sempre informado contendo o ponto separador. Ex: 14.1.

1. Natureza da Operação

O campo de natureza da operação deverá seguir o modelo abaixo:

2. Exemplos de XML

Para visualizar um XML de exemplo clique aqui.

Para visualizar um XML de exemplo com itens, clique aqui.

Clique aqui para visualizar um XML de Exemplo com deduções.

Para visualizar um XML de exemplo com tomador estrangeiro, clique aqui.

ATENÇÃO: Prezado cliente após realizar o cadastro de vossa empresa com a prefeitura, é necessário que realize a emissão de pelo menos uma NFS-e no ambiente de homologação, e só assim estará habilitado a emitir NFS-e em produção.