2015
Contingência para Módulo CT-e
23 de fevereiro de 2015Olá! 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 um documento se encontra com o status ‘Necessita Interação’, significa que esse documento identificou uma instabilidade na comunicação com a SEFAZ e o InvoiCy não obteve retorno satisfatório.
O fluxo indicado pela Migrate para tratamento nesse caso, é envia-lo novamente incrementando a numeração e referenciar o documento que está como ‘Necessita Interação’ para descarte. Através deste processo o InvoiCy verificará o status deste documento, caso ele esteja autorizado ele será cancelado e caso não conste na SEFAZ a numeração será inutilizada.
Esse modelo de descarte permite que o fluxo de emissão siga sem interrupções de forma automática e transparente para o emissor. Recomendamos a leitura do artigo “Referenciando documento emitido anteriormente” para compreender o funcionamento desse processo.
Quando é executado o processamento automático desse documento que ficou com status ‘Necessita Interação’, o sistema realiza uma consulta do mesmo na SEFAZ a fim de obter seu status, caso essa consulta tenha sucesso o documento será apresentado na plataforma de acordo com o retorno obtido da SEFAZ, caso a consulta retorne que o documento não existe na base de dados da SEFAZ, esse será alterado para status de ‘Rejeitado’ no painel do InvoiCy permitindo assim que o ERP realize o reenvido dessa numeração. É muito importante que seja executado o reenvio do documento somente após obter o retorno de ‘Rejeitado’.
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.