Ir para o conteúdo

FoccoSMF - Geração de Guia de Impostos

Utilização de Serviços de Envio e Consulta ao Geração de Guia de Impostos (PIN e GNRE)

Para utilização dos serviços do Geração de Guia de Impostos é utilizado o padrão REST, utilizando JSON para envio e recebimento das informações.

A URL base para utilização dos serviços é o http://<IP>:<PORTA>/GeracaoGuiasImpostos/<SERVIÇO> do FoccoSMF.

Exemplo: http://172.16.11.109:8878/GeracaoGuiasImpostos/SendPin

1. Envio de Tarefas para o FoccoSMF

1.1 - JSON de envio de Tarefas

Atributo Informação
PlataformaData Aqui devem ser enviados os dados que serão enviados a Plataforma, sendo os dados de Autenticação, a URL base da Plataforma e os Dados envio e consulta(PIN, GNRE) conforme as estruturas definidas.
PlataformaData.UrlBase URL base do Plataforma. Exemplo: http://apidev.dfe.to
PlataformaData.Authentication Dados de autenticação.
PlataformaData.Data Dados da Plataforma conforme o serviço utilizado, por exemplo, se utilizado o serviço de envio de pin, deve ser enviada a estrutura de envio de PIN, caso utilizado o serviço de envio de GNRE, deve ser enviada a estrutura de GNRE.
ChaveAmbiente Chave do ambiente do cliente do FoccoERP.
Modelo Modelo de serviço do FoccoSMF, utilizar "GERACAO_GUIAS_IMPOSTOS".
CodigoGenerico Deve ser utilizado o nome da Plataforma que se deseja enviar/receber informações.

Exemplo:

{
   "PlataformaData": {
       "UrlBase": "http://apidev.dfe.to",
       "Authentication": {
           "Token": "8484c664-f524-41ad-b3f3-ad3648bff1d6"
       },
       "Data": {}
   },
   "ChaveAmbiente": "007BF1F6-5B21-4196-BAC2-C1738E327E5E",
   "Producao": 0,
   "Versao": "1.0",
   "Modelo": "GERACAO_GUIAS_IMPOSTOS",
   "Cnpj": null,
   "CodCidade": null,
   "CodUfIbge": null,
   "CodigoGenerico": "VERO" 
}

1.2 - JSON de envio para consulta de resultado de tarefas

URL: <URL base para utilização dos serviços>/service/GetTaskResult

Atributo Informação
ChaveAmbiente Chave do ambiente do cliente do FoccoERP.
Token Token/chave da tarefa criada no FoccoSMF, que será utilizada para consulta do resultado da tarefa.

Exemplo

{
    "ChaveAmbiente": "FB9BD7CF-4DD7-4ECE-955B-464AE41D2004",
    "Token": "4041A17B-D946-4233-840A-6281DA13BF28"
}

1.3 - JSON de retorno do FoccoSMF

Essa estrutura de retorno é tanto para o agendamento de tarefas, quanto para a consulta de situação de tarefas.

Atributo Informação
Token Token/chave da tarefa criada no FoccoSMF, que será utilizada para consulta do resultado da tarefa.
Status Status/situação da tarefa no FoccoSMF. Situações possíveis: Pendente, Sucesso e Falha.
Modelo Modelo de serviço do FoccoSMF, será o modelo utilizado no envio, no caso "GERACAO_GUIAS_IMPOSTOS".
Acao Identifica a ação/método executado pela tarefa, será o serviço utilizado. Exemplo:"SendPin"
Resultado Retorna o resultado da execução da tarefa.

Observação

Como os serviços de geração de guias de impostos são executados de maneira assíncrona com a chamada do serviço, o retorno do envio da tarefa sempre será "null". Na consulta de resultado da tarefa, quando a mesma for executada, será retornado o JSON de retorno, com o resultado do envio dos dados à Plataforma.

Exemplo

{
    "Token": "F061789A-383A-45CA-9BB9-3425F26345BA",
    "Status": "Pendente",
    "Modelo": "VERO",
    "Acao": "SendPin",
    "Resultado": null
}

2 - Envio de Pin para Plataforma via FoccoSMF

2.1. - Serviço de Envio de Pin

URL: <URL base para utilização dos serviços>/SendPin

JSON (Enviados em "Data" dos dados da Plataforma ("PlataformaData" )

Atributo Tipo Informação Obrigatório
ChaveNFe string Chave da Nota Fiscal Eletronica. Sim
Remetente <object> Dados Referente ao Remetente da NFe.
Remetente.Cnpj string Cnpj do remetente da NFe. Sim
Remetente.Uf string Uf da NFe. Sim
Destinatario <object> Dados Referente ao Remetente da NFe.
Destinatario.Cnpj string Cnpj do destinatário da NFe. Sim
Destinatario.RazaoSocial string Razão social da empresa de destino da NFe. Sim
Destinatario.Uf string Uf do destinatário da NFe. Sim

Exemplo

"Data": {
    "ChaveNFe": "XXXXXXXXXXX8300022365500100003143915905535XX",
    "Remetente": {
        "Cnpj": "05316470000344",
        "Uf": "RJ"
    },
    "Destinatario": {
        "Cnpj": "XXXXXXXXXXXXXX",
        "RazaoSocial": "EMPRESA X",
        "Uf": "RR"
   }
}

2.2 - Retorno do envio de PIN.

JSON (Retornado no "Resultado" na Consulta de tarefas do FoccoSMF - Descrito no Item 1.2)

Atributo Tipo Informação
PlataformaResponse <object> Objeto de retorno do envio de PIN.
PlataformaResponse.Plataforma string Nome da Plataforma de envio do PIN.
PlataformaResponse.Message string Mensagem de retorno da plataforma no envio de PIN.
PlataformaResponse.Status string Status de retorno do pin (PIN_CRIADO, ENVIADO_SUFRAMA, PIN_GERADO, AGUARD_DEST, AGUARD_CARGA, LOGIN_INVALIDO,CNPJ_INVALIDO, CHAVE_INVALIDA, FINALIDADE_INCORRETA, SOLIC_INDEFERIDA).
PlataformaResponse.StatusRequisicao string Status da requisição de envio. Conforme padrão HTTP: (OK, BAD_REQUEST)
PlataformaResponse.MessageRequisicao string Mensagem de retorno com detalhes de Sucesso ou Falha.
PlataformaResponse.DataGeracao string Data de geração da guia de imposto (PIN).
PlataformaResponse.Url string O endereço do arquivo gerado com o envio ou consulta de PIN

Exemplo

{
   "Plataforma":"VERO",
   "Message":"Importado com Sucesso",
   "Status":"PIN_CRIADO",
   "ChaveNFe":null,
   "StatusRequisicao":"OK",
   "MessageRequisicao":"O PIN da NFe foi enviado à plataforma com sucesso.",
   "DataGeracao":"0001-01-01T00:00:00+00:00",
   "Url":null
}

3 - Envio de GNRE para Plataforma via FoccoSMF

3.1 - Serviço de Envio de GNRE

URL: <URL base para utilização dos serviços>/SendGnre

JSON (Enviados em "Data" dos dados da Plataforma ("PlataformaData" )

Atributo Tipo Informação Obrigatório
Base64NFe base64 XML da Nota que será enviado ao sefaz no formado base64. Sim

Exemplo

"Data": {
    "Base64NFe": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48ZW52aU5GZSB2ZXJzYW89IjMuMTAiPjxORmU+PGluZk5GZSB2ZXJzYW89IjMuMTAiIElkPSJORmU0MzE2MTE5MzIwMDExMTAwMDEyMjU1MDAxMDAwMjM1NTAxMTAwMDU0MTYyMCI+PGlkZT48Y1VGPjQzPC9jVUY"
}

3.2 - Retorno de envio de GNRE

JSON (Retornado no "Resultado" na Consulta de tarefas do FoccoSMF - Descrito no Item 3.1)

Atributo Tipo Informação
PlataformaResponse <object> Objeto de retorno do envio de GNRE.
PlataformaResponse.Plataforma string Nome da Plataforma de envio do GNRE.
PlataformaResponse.Message string Mensagem de retorno da plataforma no envio de GNRE.
PlataformaResponse.Status string Status de retorno do pin ( GNRE_CRIADA, ENVIADO_SEFAZ, GNRE_GERADA, REJEITADO, GUIA_PAGA, ERRO_PAGAMENTO).
PlataformaResponse.StatusRequisicao string Status da requisição de envio. Conforme padrão HTTP: (OK, BAD_REQUEST)
PlataformaResponse.MessageRequisicao string Mensagem de retorno com detalhes de Sucesso ou Falha.
PlataformaResponse.DataGeracao string Data de geração da guia de imposto (GNRE).
PlataformaResponse.Url string O endereço do arquivo gerado com o envio ou consulta de GNRE

Exemplo

{
   "Plataforma":"VERO",
   "Message":"Importado com Sucesso",
   "Status":"GNRE_CRIADA",
   "ChaveNFe":null,
   "StatusRequisicao":"OK",
   "MessageRequisicao":"O GNRE da NFe foi enviado à plataforma com sucesso.",
   "DataGeracao":"0001-01-01T00:00:00+00:00",
   "Url":null
}

4 - Consulta de PIN na Plataforma via FoccoSMF

4.1 - Serviço de Consulta de PIN

URL: <URL base para utilização dos serviços>/CheckPin

JSON (Enviados em "Data" dos dados da Plataforma ("PlataformaData" )

Atributo Tipo Informação Obrigatório
ChaveNFe string Chave da nota enviada para plataforma Sim

*Exemplo:

"Data": {
    "ChaveNFe": "XXXXXXXXXXX8300022365500100003143915905535XX"
}

4.2 - Retorno de consulta de Pin

JSON (Retornado no "Resultado" na Consulta de tarefas do FoccoSMF - Descrito no Item 1.2)

Atributo Tipo Informação
PlataformaResponse <object> Objeto de retorno do envio de PIN.
PlataformaResponse.Plataforma string Nome da Plataforma de envio do PIN.
PlataformaResponse.Message string Mensagem de retorno da plataforma no envio de PIN.
PlataformaResponse.Status string Status de retorno do pin (PIN_CRIADO, ENVIADO_SUFRAMA, PIN_GERADO, AGUARD_DEST, AGUARD_CARGA, LOGIN_INVALIDO,CNPJ_INVALIDO, CHAVE_INVALIDA, FINALIDADE_INCORRETA, SOLIC_INDEFERIDA).
PlataformaResponse.StatusRequisicao string Status da requisição de envio. Conforme padrão HTTP: (OK, BAD_REQUEST)
PlataformaResponse.MessageRequisicao string Mensagem de retorno com detalhes de Sucesso ou Falha.
PlataformaResponse.DataGeracao