Árvore de páginas


CONTEÚDO

01. VISÃO GERAL


Esta documentação tem como principal objetivo apresentar como deve ser realizada a integração de sistemas diversos com a aplicação web Processos Fiscais. Devido a arquitetura escolhida para o Processos Fiscais, os serviços que serão apresentados possuem total possibilidade de comunicação com aplicações desenvolvidas em diferentes tipos de linguagem de programação. Nos próximos sub-tópicos serão apresentados alguns dos padrões utilizados.

02. API RESTFUL

A Representational State Transfer (REST), em português Transferência de Estado Representacional, é uma abstração da arquitetura da World Wide Web, mais precisamente, é um estilo arquitetural que consiste de um conjunto coordenado de restrições arquiteturais aplicadas a componentes, conectores e elementos de dados dentro de um sistema de hipermídia distribuído.
O REST ignora os detalhes da implementação de componente e a sintaxe de protocolo com o objetivo de focar nos papéis dos componentes, nas restrições sobre sua interação com outros componentes e na sua interpretação de elementos de dados significantes.
REST foi definido oficialmente pela W3C.
Fonte: Wikipedia

Esta abstração de arquitetura é frequentemente aplicada à web services fornecendo APIs para acesso a um serviço qualquer na web. Utiliza integralmente as mensagens HTTP para se comunicar através do que já é definido no protocolo sem precisar "inventar" novos protocolos específicos para
aquela aplicação.
Em todo o tempo o trabalho estará relacionado com componentes, conectores e dados:


• REST usa o protocolo HTTP (verbos, accept headers, códigos de estado HTTP, Content-Type) de forma explícita e representativa para se comunicar. URIs são usados para expor a estrutura do serviço. Utiliza uma notação comum para transferência de dados como XML ou JSON.
• Não possui estado entre essas comunicações, ou seja, cada comunicação é independente e uniforme (padronizada) precisando passar toda informação necessária.
• Este estilo arquitetural deve facilitar o cache de conteúdo no cliente.
• Deve ter clara definição do que faz parte do cliente e do servidor. O cliente não precisa saber como o servidor armazena dados, por exemplo. Assim cada implementação não depende da outra e se torna mais escalável.
• Permite o uso em camadas também facilitando a escalabilidade, confiabilidade e segurança.
• Frequentemente é criado com alguma forma de extensibilidade.


Quando a arquitetura atende aos cinco primeiros itens acima, a mesma pode ser classificada formalmente como RESTful.
Uma API Restful é pensada para proporcionar melhor performance, escalabilidade, simplicidade, flexibilidade, visibilidade, portabilidade e confiabilidade.

Um ponto interessante sobre API REST é que cada pode definir como quiser sua API, ao contrário de SOAP onde tudo é definido oficialmente.


Fonte canônica na dissertação do Dr. Roy Fielding

03. PROTOCOLO HTTP

O Hypertext Transfer Protocol (HTTP), em português Protocolo de Transferência de Hipertexto, é um protocolo de comunicação (na camada de aplicação segundo o Modelo OSI) utilizado para sistemas de informação de hipermídia, distribuídos e colaborativos.Ele é a base para a
comunicação de dados da World Wide Web.
Hipertexto é o texto estruturado que utiliza ligações lógicas (hiperlinks) entre nós contendo texto. O HTTP é o protocolo para a troca ou transferência de hipertexto.
Fonte: Wikipedia


04. MÉTODOS HTTP

O protocolo HTTP define oito métodos (GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS e CONNECT) que indicam a ação a ser realizada no recurso especificado. O método determina o que o servidor deve fazer com o URL fornecido no momento da requisição de um recurso.
A Api Restful tenta responder conforme possível ao padrão HTTP e convenções REST conforme descrito pelos principais métodos HTTP abaixo:


MétodosUso
GETSolicita a representação de um determinado recurso. É definido como um método seguro e
não deve ser usado para disparar uma ação (remover um usuário, por exemplo).
POSTAs informações enviadas no corpo (body) da requisição são utilizadas para criar um novo
recurso. Também é responsável por fazer processamentos que não são diretamente
relacionados a um recurso.
PUTAtualiza um recurso na URI especificada. Caso o recurso não exista, ele pode criar um. A
principal diferenteça entre POST e PUT é que o primeiro pode lidar não somente com recursos, mas pode fazer processamento de informações, por exemplo.
DELETERemove um recurso. Deve retornar o status 204 caso não exista nenhum recurso para a URI
especificada.


05. CÓDIGOS DE STATUS HTTP

Toda requisição recebe um código de resposta conhecido como status. Com o status é possível saber se uma operação foi realizada com sucesso (200), se ele foi movida e agora existe em outro lugar (301) ou se não existe mais (404).
Existem muitos status divididos em diversas categorias. Na especificação é possível ver cada um deles com uma descrição bastante detalhada.
A Api Restful tenta responder conforme possível ao padrão HTTP e convenções REST conforme descrito abaixo:



06. COMPRESSÃO HTTP

Esta api aceita requisições HTTP com compressão GZIP. Este recurso é altamente recomendado para reduzir drasticamente o tamanho do tráfego de dados. Em algus casos esta compressão pode chegar a 90%.
Para utilizar este recurso é necessário habilitar duas propriedades no cabeçalho HTTP da requisição:


Cabeçalhos HTTPValor esperadoReferência
Content-Encodingcontent-encoding:gziphttp://tools.ietf.org/html/rfc7231#section-3.1.2.2
Accept-Encodingaccept-encoding:gziphttp://tools.ietf.org/html/rfc7231#section-5.3.4

07. PONTOS DE ATENÇÃO


O endpoint authorizer atende apenas a documentos NFC-e

O endpoint api atende apenas a documentos NF-e e SAT

Novos desenvolvimentos para NF-e e SAT devem utilizar a Versão 2.0 já que aVersão 1.0 será descontinuada no futuro.

O modo de autenticação e endpoints para NFC-e são diferentes do modo de autenticação e endpoints para NF-e e SAT

07. NFCE

ENDPOINTS


07. RECURSOS DISPONÍVEIS


Autenticação de PDV

Para ter acesso as recursos da API do Processos Fiscais é necessário que o Estabelecimento e PDV sejam reconhecidos pelo sistema.
Este procedimento é realizado através da autenticação do pdv do estabelecimento.

Ao receber tais informações o Processos Fiscais retorna uma chave de acesso, também conhecida como token de acesso.
Este token possui validade diária, ou seja, deve ser solicitado a cada dia. Este token é uma identificação única para o pdv do estabelecimento em questão.
Este recurso está disponível conforme os ambientes abaixo:



Exemplo de autenticação

Parâmetros

ParâmetroTipoDescriçãoObservações
cnpj_contribuinteStringCNPJ do estabelecimento[Não pode estar vazio, Precisa ser um CNPJ válido]
pdvStringIdentificação do PDV[Não pode estar vazio, O Tamanho precisa estar entre 1 e 35 inclusive]


Resposta


ParâmetroTipoDescrição
chaveStringTOKEN de autenticação disponibilizado por 24 horas


Curl Request


$ curl 'http://localhost:8080/services/nfce_resource/autenticarPDV' -i -X POST -H
'Content-Type: application/json;charset=UTF-8' -H 'Content-Encoding: contentencoding:gzip' -H 'Accept-Encoding: accept-encoding:gzip' -d '{
"cnpj_contribuinte" : "82373077000171",
"pdv" : "PDV_BEMATECH_FISCAL_CLOUD_001"
}'


Request


POST /services/nfce_resource/autenticarPDV HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Encoding: content-encoding:gzip
Accept-Encoding: accept-encoding:gzip
Host: localhost
Content-Length: 90
{
"cnpj_contribuinte" : "82373077000171",
"pdv" : "PDV_BEMATECH_FISCAL_CLOUD_001"
}


Response


HTTP/1.1 200 OK
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
REQUEST-ID: BKn6vlXdsZBU63FUUUqw
Content-Type: application/json
Content-Length: 52
{
"chave" : "a1b958ad3f5647935bbe7b958c91e5ea"
}

08.RECURSOS DA API

Neste tópico, apresentamos todos os detalhes de cada um dos serviços RestFul disponíveis na API de integração com o Processos Fiscais. 

08.1 NF-E

ENDPOINTS

AmbienteUrl
Produção

08.2 RECURSOS DISPONÍVEIS

Envio de NF-e

Método:

POST

Descrição:

Utilize este recurso da API para a emissão de uma nova nota fiscal.

Modelo JSON (Envio e Retorno):

http://34.205.0.121:8082/api/swagger-ui.html#/NFe/emitirUsingPOST

Cancelamento NF-e

Método:

POST

Descrição:

Utilize este recurso para cancelar um documento.

Modelo JSON (Envio e Retorno):

http://34.205.0.121:8082/api/swagger-ui.html#/NFe/cancelarUsingPOST

Inutilizar numeração

Método:

POST

Descrição:

Utilize este recurso para inutilizar uma ou mais numeração.

Modelo JSON (Envio e Retorno):

http://34.205.0.121:8082/api/swagger-ui.html#/NFe/inutilizarUsingPOST

09. STATUS DE PDV

Este recurso é responsável por interpretar as requisições do sistema cliente, permitindo assim, que o serviço de monitoramento de PDV do Processos Fiscais tenha informações sobre o status de cada PDV do estabelecimento.
O monitoramento apresentará os status Ativo, Inativo e Offline, Sendo ativo o PDV que estiver enviando nota dentro do intervalo de tempo configurado, inativo o PDV que estiver comunicando com o servidor, porém sem enviar nenhuma nota no intervalo configurado e Offline o PDV que não se comunicar com o servidor no intervalo de tempo esperado.
Este recurso está disponível conforme os ambientes abaixo:



Exemplo de envio do status do PDV

Parâmetros

Oops, it seems that you need to place a table or a macro generating a table within the Pivot Table macro.

The table is being loaded. Please wait for a bit ...

ParâmetroTipoDescriçãoObservações
chaveStringChave de autenticacao (token)[Não pode estar vazio]
cnpj_contribuinteStringCNPJ do estabelecimento[Não pode estar vazio, Precisa ser um CNPJ válido]
pdvStringIdentificação do PDV[Não pode estar vazio, O Tamanho precisa estar entre 1 e 35 inclusive]


Resposta

ParâmetroTipoDescrição
mensagemObjectDetalhes da mensagem de retorno
intervalo_pdvNumberIntervalo esperado, em minutos, para próxima comunicação do pdv


Curl Request


$ curl 'http://localhost:8080/services/pdv_resource/status' -i -X POST -H 'ContentType: application/json;charset=UTF-8' -H 'Content-Encoding: content-encoding:gzip' -H
'Accept-Encoding: accept-encoding:gzip' -d '{
"chave" : "a1b8b966a654fd4214b14f0cc939d74c",
"cnpj_contribuinte" : "82373077000171",
"pdv" : "PDV_BEMATECH_FISCAL_CLOUD_001"
}'


Request


POST /services/pdv_resource/status HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Encoding: content-encoding:gzip
Accept-Encoding: accept-encoding:gzip
Host: localhost
Content-Length: 139
{
"chave" : "a1b8b966a654fd4214b14f0cc939d74c",
"cnpj_contribuinte" : "82373077000171",
"pdv" : "PDV_BEMATECH_FISCAL_CLOUD_001"
}


Response


HTTP/1.1 200 OK
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
REQUEST-ID: OKdBHZ9VG0n8zKGcT0Xr
Content-Type: application/json
Content-Length: 127
{
"mensagem" : {
"codigo" : 200,
"titulo" : "OK: Operação Realizada com sucesso"
},
"intervalo_pdv" : 5
}


08. MONITORAMENTO DE CERTIFICADO DIGITAL

Este recurso é responsável por interpretar as requisições do sistema cliente, permitindo assim, que o serviço de monitoramento de Certificados Digitais do Processos Fiscais tenha informações sobre o status de cada certificado do estabelecimento.
Através deste monitoramento é possível identificar quais certificados estão em uso, que irão expirar em breve etc.
Este recurso está disponível conforme os ambientes abaixo:



Exemplo de envio de dados do Certificado Digital

Parâmetros

ParâmetroTipoDescriçãoObservações
chaveStringChave de autenticacao(token)[Não pode estar vazio]
numSerieStringNúmero de Série do Certificado[Não pode estar vazio]
cnpj_contribuinteStringCNPJ do estabelecimento[Não pode estar vazio, Precisa ser um CNPJ válido]
pdvStringIdentificação do PDV[Não pode estar vazio, O Tamanho precisa estar entre 1 e 35 inclusive]
dataExpiracaoStringData de Expiração do Certificado[Não pode ser nulo]
dataEmissaoStringData de Emissão do Certificado[Não pode ser nulo, Precisa estar no passado]
nomeStringNome do Certificado[Não pode estar vazio]
tipoStringTipo do Certificado[Não pode estar vazio]


Resposta

ParâmetroTipoDescrição
mensagemObjectDetalhes da mensagem de retorno
intervalo_pdvNumberIntervalo esperado, em minutos, para próxima comunicação do pdv


Curl Request


$ curl 'http://localhost:8080/services/pdv_resource/certificado' -i -X POST -H
'Content-Type: application/json;charset=UTF-8' -H 'Content-Encoding: contentencoding:gzip' -H 'Accept-Encoding: accept-encoding:gzip' -d '{
"chave" : "65e238ed09502a94dbbea46c851924b7",
"numSerie" : "4932100823733",
"cnpj_contribuinte" : "82373077000171",
"pdv" : "PDV_BEMATECH_FISCAL_CLOUD_001",
"dataExpiracao" : "2017-08-23T22:39:00Z",
"dataEmissao" : "2017-08-23T22:39:00Z",
"nome" : "Bematech",
"tipo" : "A1"
}'


Request


POST /services/pdv_resource/certificado HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Encoding: content-encoding:gzip
Accept-Encoding: accept-encoding:gzip
Host: localhost
Content-Length: 302
{
"chave" : "65e238ed09502a94dbbea46c851924b7",
"numSerie" : "4932100823733",
"cnpj_contribuinte" : "82373077000171",
"pdv" : "PDV_BEMATECH_FISCAL_CLOUD_001",
"dataExpiracao" : "2017-08-23T22:39:00Z",
"dataEmissao" : "2017-08-23T22:39:00Z",
"nome" : "Bematech",
"tipo" : "A1"
}


Response


HTTP/1.1 200 OK
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
REQUEST-ID: wAtNJKhe0wsFxjAUFKSu
Content-Type: application/json
Content-Length: 127
{
"mensagem" : {
"codigo" : 200,
"titulo" : "OK: Operação Realizada com sucesso"
},
"intervalo_pdv" : 5
}


09. CUSTÓDIA DE DOCUMENTOS


O Processos Fiscais permite gerenciar documentos NFC-e através da custódia de arquivos xml.
Os seguintes documentos podem ser armazenados no sistema:
• Emissão Normal
• Emissão em Contingência
• Inutilizados
• Cancelados
• Contingência OFFLINE


Emissão normal
Este recurso é responsável por custodiar documentos com emissão normal.
Este recurso está disponível conforme os ambientes abaixo:



Exemplo de envio de documento
Parâmetros


ParâmetroTipoDescriçãoObservações
chaveStringChave de autenticacao(token)[Não pode estar vazio]
ufStringUnidade Federativa (UF) do estabelecimento[Deve atender a expressão regular '^[AZ]{2}$', Não pode estar vazio]
cnpj_contribuinteStringCNPJ do estabelecimento[Não pode estar vazio, Precisa ser um CNPJ válido]
pdvStringIdentificação do PDV[Não pode estar vazio, O Tamanho precisa estar entre 1 e 35 inclusive]
lista_arquivos[0].conteudo_xmlStringConteúdo do XML da NFC-e que será custodiadoNão pode ser vazio
lista_arquivos[0].id_xml_nfceStringChave de acessoNão pode ser vazio
lista_arquivos[0].serieStringNúmero da sérieNão pode ser vazio
lista_arquivos[0].protocolo_autorizacaoStringProtocolo de autorizaçãoNão pode ser vazio
lista_arquivos[0].autorizacaoStringData e Hora de AutorizaçãoNão pode ser vazio
lista_arquivos[0].emissaoStringData e Hora de EmissãoNão pode ser vazio
lista_arquivos[0].numeroStringNúmero da NFC-eNão pode ser vazio
lista_arquivos[0].versaoStringVersão do documentoNão pode ser vazio

Campos de Datas, embora apresentados como strings no formato JSON(devido ao conceito de serialização), devem ser informados no padrão ISO 8601. Exemplo:
2016-12-21T11:59:28-03:00.


Resposta


ParâmetroTipoDescrição
lista_mensagensObjectLista com detalheas das mensagens de retorno
intervalo_pdvNumberIntervalo esperado, em minutos, para próxima autenticação e/ou envio de documentos do pdv


Curl Request


$ curl 'http://localhost:8080/services/nfce_resource/enviarXML' -i -X POST -H
'Content-Type: application/json;charset=UTF-8' -H 'Content-Encoding: contentencoding:gzip' -H 'Accept-Encoding: accept-encoding:gzip' -d '{
"chave" : "5a698afbb978d745fe9e0b4f3e210d82",
"cnpj_contribuinte" : "82373077000171",
"pdv" : "PDV_BEMATECH_FISCAL_CLOUD_001",
"lista_arquivos" : [ {
"conteudo_xml" : "<?xml version=\"1.0\" encoding=\"UTF-8\"?><nfeProc
versao=\"3.10\" xmlns=\"http://www.portalfiscal.inf.br/nfe\"><NFe><infNFe
versao=\"3.10\"
Id=\"NFe33160408299964000518650080000422051091522715\"><ide><cUF>33</cUF><cNF>09152271
</cNF><natOp>VENDA</natOp><indPag>0</indPag><mod>65</mod><serie>8</serie><nNF>42205</n
NF><dhEmi>2016-04-25T08:42:32-
03:00</dhEmi><tpNF>1</tpNF><idDest>1</idDest><cMunFG>3304557</cMunFG><tpImp>4</tpImp><
tpEmis>1</tpEmis><cDV>5</cDV><tpAmb>1</tpAmb><finNFe>1</finNFe><indFinal>1</indFinal><
indPres>1</indPres><procEmi>0</procEmi><verProc>01.75.01</verProc></ide><emit><CNPJ>08
299964000518</CNPJ><xNome>L A LANCHONETE E CAFE LTDA</xNome><xFant>L A
LANCHOENTE</xFant><enderEmit><xLgr>SENADOR SALGADO FILHO</xLgr><nro>1</nro><xCpl>AREA
REMOTA</xCpl><xBairro>CENTRO</xBairro><cMun>3304557</cMun><xMun>RIO DE
JANEIRO</xMun><UF>RJ</UF><CEP>20021340</CEP><cPais>1058</cPais><xPais>BRASIL</xPais><f
one>21250113655</fone></enderEmit><IE>87072436</IE><CRT>1</CRT></emit><det
nItem=\"1\"><prod><cProd>208</cProd><cEAN></cEAN><xProd>AGUA NESTLE
S/GAS</xProd><NCM>21069090</NCM><CEST>2300200</CEST><CFOP>5102</CFOP><uCom>UN</uCom><q
Com>1.000</qCom><vUnCom>5.000</vUnCom><vProd>5.00</vProd><cEANTrib></cEANTrib><uTrib>U
N</uTrib><qTrib>1.000</qTrib><vUnTrib>5.000</vUnTrib><indTot>1</indTot></prod><imposto
><vTotTrib>0.00</vTotTrib><ICMS><ICMSSN102><orig>0</orig><CSOSN>102</CSOSN></ICMSSN102
></ICMS></imposto></det><total><ICMSTot><vBC>0.00</vBC><vICMS>0.00</vICMS><vICMSDeson>
0.00</vICMSDeson><vBCST>0.00</vBCST><vST>0.00</vST><vProd>5.00</vProd><vFrete>0.00</vF
rete><vSeg>0.00</vSeg><vDesc>0.00</vDesc><vII>0.00</vII><vIPI>0.00</vIPI><vPIS>0.00</v
PIS><vCOFINS>0.00</vCOFINS><vOutro>0.00</vOutro><vNF>5.00</vNF><vTotTrib>0.00</vTotTri
b></ICMSTot></total><transp><modFrete>9</modFrete></transp><pag><tPag>01</tPag><vPag>5
.00</vPag></pag><infAdic><infCpl>Pedido 50110 MISTERCHEF SISTEMAS 0800 644 2362
Aplicativo Bematech Misterchef 01.75.01 Serie 96719752 PROCON R DA AJUDA 5 RJ
(21) 151 ALERJ R 1 DE MARCO S/N RJ (21) 25881418 Valor aproximado dos tributos
deste cupom R$ 0.21 FederalR$ 0.95 EstadualR$ 0.00 MunicipalFonte IBPT/FECOMERCIO
RJ RJ 5oi7eW</infCpl><obsCont
xCampo=\"Troco\"><xTexto>5.00</xTexto></obsCont></infAdic></infNFe><infNFeSupl><qrCode><![CDATA[http://www4.fazenda.rj.gov.br/consultaNFCe/QRCode?chNFe=33160408299964000518
650080000422051091522715&nVersao=100&tpAmb=1&dhEmi=323031362d30342d32355430383a34323a3
3322d30333a3030&vNF=5.00&vICMS=0.00&digVal=596f4d434b326655416569394f2b6437686d6f38656
d384c724f553d&cIdToken=000002&cHashQRCode=8E0EE7C2BBD3C8DCED39462C6B5ED66358658A21]]><
/qrCode></infNFeSupl><Signature
xmlns=\"http://www.w3.org/2000/09/xmldsig#\"><SignedInfo><CanonicalizationMethod
Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"/><SignatureMethod
Algorithm=\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\"/><Reference
URI=\"#NFe33160408299964000518650080000422051091522715\"><Transforms><Transform
Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"/><Transform
Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n20010315\"/></Transforms><DigestMethod
Algorithm=\"http://www.w3.org/2000/09/xmldsig#sha1\"/><DigestValue>YoMCK2fUAei9O+d7hmo
8em8LrOU=</DigestValue></Reference></SignedInfo><SignatureValue>GuYdIPARE9eHIM5JAYCEje
50GvShz2DFLh32zE9ya89FWe4HwRQ+Z6bIGQVVBrIwI+KuMfKlzg0puMEt5TeYILUlPgsvxfjjW5tNHv5cNFRV
xiQc5JBfDlXI1hNe226I3jQ7QKAw/BCGMgCYn0Hrw1gqB90K1jMqI3lxSczqqAimylYFuX74mxZKblkqR8T6an
70DnVhmP8jNRjc8pP/zkQKu1Szh4rJj91d9+fg3MDqYNneRsgLHrq6ziB41FvGucq8JC/FDhsuhvk2uIbdrSk2
iC2alg2ki3t92HsPa3yT9i1ROK6mdSPNrcdR1XKWFXGZftQ95+h1zGV3IDbvnw==</SignatureValue><KeyI
nfo><X509Data><X509Certificate>MIIIFjCCBf6gAwIBAgIJARY6V85BFuqyMA0GCSqGSIb3DQEBCwUAMIG
CMQswCQYDVQQGEwJCUjETMBEGA1UEChMKSUNQLUJyYXNpbDE2MDQGA1UECxMtU2VjcmV0YXJpYSBkYSBSZWNla
XRhIEZlZGVyYWwgZG8gQnJhc2lsIC0gUkZCMSYwJAYDVQQDEx1BQyBJbXByZW5zYSBPZmljaWFsIFNQIFJGQiB
HNDAeFw0xNTEyMjExMjM5MzJaFw0xNjEyMjExMjM5MzJaMIHuMQswCQYDVQQGEwJCUjETMBEGA1UEChMKSUNQL
UJyYXNpbDELMAkGA1UECBMCUkoxFzAVBgNVBAcTDlJJTyBERSBKQU5FSVJPMTYwNAYDVQQLEy1TZWNyZXRhcml
hIGRhIFJlY2VpdGEgRmVkZXJhbCBkbyBCcmFzaWwgLSBSRkIxFjAUBgNVBAsTDVJGQiBlLUNOUEogQTExHDAaB
gNVBAsTE0FSIElNUFJFTlNBIE9GSUNJQUwxNjA0BgNVBAMTLUwgQSBMQU5DSE9ORVRFIEUgQ0FGRSBMVERBIEV
QUDowODI5OTk2NDAwMDUxODCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM6VE2aBG4304fzJb6WMZ
HFP4qt+IodX/+3Jpv12RS/T5Uej7ZB19191DMs92tp35Xq3Ms2sQoqL8qLgUzXhxtEbE2D7nigcERlXDUfA1GA
w3Rx8XfVtsgJ7IP5V8evJItMJF2K87Cqvdqa7RGTVfrTEE2REQHdConLEiHgx0CP9nIwaSc3uk65HCaIrccNAb
mak+2aJ3wqRB3X4bxAZAzWZvrQygDnBS9jn9/R5J7GyB2+dV4wI0UpLKmEfdgluj+hO0vhJ9UR0P92Ilvroa6q
l6Am+nHgbc/4wvoZHCEFB1n8x+owyyCQl1F4+5V7x0aGejBhk7u8kL6oq9RoLdzMCAwEAAaOCAx8wggMbMA4GA
1UdDwEB/wQEAwIF4DBiBgNVHSAEWzBZMFcGBmBMAQIBFDBNMEsGCCsGAQUFBwIBFj9odHRwOi8vaW8tY29tLWl
jcGJyLmltcHJlbnNhb2ZpY2lhbC5jb20uYnIvcmVwb3NpdG9yaW8vSU1FU1BSRkIwgfUGA1UdHwSB7TCB6jBWo
FSgUoZQaHR0cDovL2lvLWNvbS1pY3Bici5pbXByZW5zYW9maWNpYWwuY29tLmJyL3JlcG9zaXRvcmlvL0lNRVN
QUkZCL0FDSU1FU1BSRkJHNC5jcmwwSqBIoEaGRGh0dHA6Ly93d3cuZGlnaXRhbHRydXN0LmNvbS5ici9yZXBvc
2l0b3Jpby9JTUVTUFJGQi9BQ0lNRVNQUkZCRzQuY3JsMESgQqBAhj5odHRwOi8vcmVwb3NpdG9yaW8uaWNwYnJ
hc2lsLmdvdi5ici9sY3IvSU1FU1AvQUNJTUVTUFJGQkc0LmNybDCBpwYIKwYBBQUHAQEEgZowgZcwNwYIKwYBB
QUHMAGGK2h0dHA6Ly9pby1vY3NwLWljcGJyLmltcHJlbnNhb2ZpY2lhbC5jb20uYnIwXAYIKwYBBQUHMAKGUGh
0dHA6Ly9pby1jb20taWNwYnIuaW1wcmVuc2FvZmljaWFsLmNvbS5ici9yZXBvc2l0b3Jpby9JTUVTUFJGQi9BQ
0lNRVNQUkZCRzQucDdiMCkGA1UdJQQiMCAGCCsGAQUFBwMCBggrBgEFBQcDBAYKKwYBBAGCNxQCAjAJBgNVHRM
EAjAAMIGrBgNVHREEgaMwgaCBE3BvdGVuY3lhQHVvbC5jb20uYnKgOAYFYEwBAwSgLwQtMDYwODE5NjkxMDY5M
zA0Mzg3MzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwoBsGBWBMAQMCoBIEEEVEVUFSRE8gQU5BU1RBU0mgGQY
FYEwBAwOgEAQOMDgyOTk5NjQwMDA1MTigFwYFYEwBAwegDgQMMDAwMDAwMDAwMDAwMB8GA1UdIwQYMBaAFHpU/
MydBo954w1Eye7lw7dNTcuiMA0GCSqGSIb3DQEBCwUAA4ICAQC/1qQofG7n9Lx7RcMhhkqOU4BV5liKvSY4oO2
ePwIhrbLeX+lNU5GFlxnn9qpt1bbMbEZeJIUPZvaIcZq4+2YjpS3loy0B0bCofS8lNXMeLf00tlaKwjufNWVgL
kYXyY8M4M01VMY8mqpNzWiP62uR59m5l08XtQ4rG9vE/PytoBWtx/YyH8MTAkura8DMN+ZegkeRq6xoLhEGoEJ
Z2xG2CmO144JV82UUUmvA6gHRh+J2gjIpkQg2CqvGK2HRbxdQYmM5VMNmEiWVHeFNojvur/J2mJVdPqqH0wNHM
8FBzgXTX9ci8G/YFjZR+EnmBMdpO6QKT/mGm8E7BcHL8XLA0N2hJFXv/vJCeP396y2sJDZfPzDusdhIr6CMrCf
XlH1LisQ2p56M7CrU8mkQR9gcv/UtOYzkVxC/PVJt2YFJ7+krN7KMoZiuNrLPOJviApr4VAvH+RumQmG378n3n
1DQAzcY/4shu0yoVVC7B1OZwLfUgdTKQjAMem+IFt1sUjC78GJgZ3z2zNMJw3dFhjgxJc78Nj9ctfwrfXLjAUl
aZC65z0ZFUIibGc5t4q95jw80CHxV/usz/IyneArhQtJAI1fFr0mhpDrwb829DF8NUl4YqPYFRX3oS1PEsqGBO
0rV58EqwXkbPXRh/YZ+KYfhv3KISXBFzskda7ROMCow7Q==</X509Certificate></X509Data></KeyInfo></Signature></NFe><protNFe
versao=\"3.10\"><infProt><tpAmb>1</tpAmb><verAplic>SVRSnfce201603081012</verAplic><chN
Fe>33160408299964000518650080000422051091522715</chNFe><dhRecbto>2016-04-25T08:42:32-
03:00</dhRecbto><nProt>333160111565931</nProt><digVal>YoMCK2fUAei9O+d7hmo8em8LrOU=</di
gVal><cStat>100</cStat><xMotivo>Autorizado o uso da NFe</xMotivo></infProt></protNFe></nfeProc>",
"id_xml_nfce" : "33160408299964000518650080000422051091522715",
"serie" : 921,
"protocolo_autorizacao" : "333160111565931",
"autorizacao" : "2017-08-23T22:36:00Z",
"emissao" : "2017-08-23T22:34:00Z",
"numero" : "012166454848",
"versao" : "3.10"
} ],
"uf" : "RJ"
}'


Request


POST /services/nfce_resource/enviarXML HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Encoding: content-encoding:gzip
Accept-Encoding: accept-encoding:gzip
Host: localhost
Content-Length: 7378
{
"chave" : "5a698afbb978d745fe9e0b4f3e210d82",
"cnpj_contribuinte" : "82373077000171",
"pdv" : "PDV_BEMATECH_FISCAL_CLOUD_001",
"lista_arquivos" : [ {
"conteudo_xml" : "<?xml version=\"1.0\" encoding=\"UTF-8\"?><nfeProc
versao=\"3.10\" xmlns=\"http://www.portalfiscal.inf.br/nfe\"><NFe><infNFe
versao=\"3.10\"
Id=\"NFe33160408299964000518650080000422051091522715\"><ide><cUF>33</cUF><cNF>09152271
</cNF><natOp>VENDA</natOp><indPag>0</indPag><mod>65</mod><serie>8</serie><nNF>42205</n
NF><dhEmi>2016-04-25T08:42:32-
03:00</dhEmi><tpNF>1</tpNF><idDest>1</idDest><cMunFG>3304557</cMunFG><tpImp>4</tpImp><
tpEmis>1</tpEmis><cDV>5</cDV><tpAmb>1</tpAmb><finNFe>1</finNFe><indFinal>1</indFinal><
indPres>1</indPres><procEmi>0</procEmi><verProc>01.75.01</verProc></ide><emit><CNPJ>08
299964000518</CNPJ><xNome>L A LANCHONETE E CAFE LTDA</xNome><xFant>L A
LANCHOENTE</xFant><enderEmit><xLgr>SENADOR SALGADO FILHO</xLgr><nro>1</nro><xCpl>AREA
REMOTA</xCpl><xBairro>CENTRO</xBairro><cMun>3304557</cMun><xMun>RIO DE
JANEIRO</xMun><UF>RJ</UF><CEP>20021340</CEP><cPais>1058</cPais><xPais>BRASIL</xPais><f
one>21250113655</fone></enderEmit><IE>87072436</IE><CRT>1</CRT></emit><det
nItem=\"1\"><prod><cProd>208</cProd><cEAN></cEAN><xProd>AGUA NESTLE
S/GAS</xProd><NCM>21069090</NCM><CEST>2300200</CEST><CFOP>5102</CFOP><uCom>UN</uCom><q
Com>1.000</qCom><vUnCom>5.000</vUnCom><vProd>5.00</vProd><cEANTrib></cEANTrib><uTrib>U
N</uTrib><qTrib>1.000</qTrib><vUnTrib>5.000</vUnTrib><indTot>1</indTot></prod><imposto
><vTotTrib>0.00</vTotTrib><ICMS><ICMSSN102><orig>0</orig><CSOSN>102</CSOSN></ICMSSN102></ICMS></imposto></det><total><ICMSTot><vBC>0.00</vBC><vICMS>0.00</vICMS><vICMSDeson>
0.00</vICMSDeson><vBCST>0.00</vBCST><vST>0.00</vST><vProd>5.00</vProd><vFrete>0.00</vF
rete><vSeg>0.00</vSeg><vDesc>0.00</vDesc><vII>0.00</vII><vIPI>0.00</vIPI><vPIS>0.00</v
PIS><vCOFINS>0.00</vCOFINS><vOutro>0.00</vOutro><vNF>5.00</vNF><vTotTrib>0.00</vTotTri
b></ICMSTot></total><transp><modFrete>9</modFrete></transp><pag><tPag>01</tPag><vPag>5
.00</vPag></pag><infAdic><infCpl>Pedido 50110 MISTERCHEF SISTEMAS 0800 644 2362
Aplicativo Bematech Misterchef 01.75.01 Serie 96719752 PROCON R DA AJUDA 5 RJ
(21) 151 ALERJ R 1 DE MARCO S/N RJ (21) 25881418 Valor aproximado dos tributos
deste cupom R$ 0.21 FederalR$ 0.95 EstadualR$ 0.00 MunicipalFonte IBPT/FECOMERCIO
RJ RJ 5oi7eW</infCpl><obsCont
xCampo=\"Troco\"><xTexto>5.00</xTexto></obsCont></infAdic></infNFe><infNFeSupl><qrCode
><![CDATA[http://www4.fazenda.rj.gov.br/consultaNFCe/QRCode?chNFe=33160408299964000518
650080000422051091522715&nVersao=100&tpAmb=1&dhEmi=323031362d30342d32355430383a34323a3
3322d30333a3030&vNF=5.00&vICMS=0.00&digVal=596f4d434b326655416569394f2b6437686d6f38656
d384c724f553d&cIdToken=000002&cHashQRCode=8E0EE7C2BBD3C8DCED39462C6B5ED66358658A21]]><
/qrCode></infNFeSupl><Signature
xmlns=\"http://www.w3.org/2000/09/xmldsig#\"><SignedInfo><CanonicalizationMethod
Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n-20010315\"/><SignatureMethod
Algorithm=\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\"/><Reference
URI=\"#NFe33160408299964000518650080000422051091522715\"><Transforms><Transform
Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"/><Transform
Algorithm=\"http://www.w3.org/TR/2001/REC-xml-c14n20010315\"/></Transforms><DigestMethod
Algorithm=\"http://www.w3.org/2000/09/xmldsig#sha1\"/><DigestValue>YoMCK2fUAei9O+d7hmo
8em8LrOU=</DigestValue></Reference></SignedInfo><SignatureValue>GuYdIPARE9eHIM5JAYCEje
50GvShz2DFLh32zE9ya89FWe4HwRQ+Z6bIGQVVBrIwI+KuMfKlzg0puMEt5TeYILUlPgsvxfjjW5tNHv5cNFRV
xiQc5JBfDlXI1hNe226I3jQ7QKAw/BCGMgCYn0Hrw1gqB90K1jMqI3lxSczqqAimylYFuX74mxZKblkqR8T6an
70DnVhmP8jNRjc8pP/zkQKu1Szh4rJj91d9+fg3MDqYNneRsgLHrq6ziB41FvGucq8JC/FDhsuhvk2uIbdrSk2
iC2alg2ki3t92HsPa3yT9i1ROK6mdSPNrcdR1XKWFXGZftQ95+h1zGV3IDbvnw==</SignatureValue><KeyI
nfo><X509Data><X509Certificate>MIIIFjCCBf6gAwIBAgIJARY6V85BFuqyMA0GCSqGSIb3DQEBCwUAMIG
CMQswCQYDVQQGEwJCUjETMBEGA1UEChMKSUNQLUJyYXNpbDE2MDQGA1UECxMtU2VjcmV0YXJpYSBkYSBSZWNla
XRhIEZlZGVyYWwgZG8gQnJhc2lsIC0gUkZCMSYwJAYDVQQDEx1BQyBJbXByZW5zYSBPZmljaWFsIFNQIFJGQiB
HNDAeFw0xNTEyMjExMjM5MzJaFw0xNjEyMjExMjM5MzJaMIHuMQswCQYDVQQGEwJCUjETMBEGA1UEChMKSUNQL
UJyYXNpbDELMAkGA1UECBMCUkoxFzAVBgNVBAcTDlJJTyBERSBKQU5FSVJPMTYwNAYDVQQLEy1TZWNyZXRhcml
hIGRhIFJlY2VpdGEgRmVkZXJhbCBkbyBCcmFzaWwgLSBSRkIxFjAUBgNVBAsTDVJGQiBlLUNOUEogQTExHDAaB
gNVBAsTE0FSIElNUFJFTlNBIE9GSUNJQUwxNjA0BgNVBAMTLUwgQSBMQU5DSE9ORVRFIEUgQ0FGRSBMVERBIEV
QUDowODI5OTk2NDAwMDUxODCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM6VE2aBG4304fzJb6WMZ
HFP4qt+IodX/+3Jpv12RS/T5Uej7ZB19191DMs92tp35Xq3Ms2sQoqL8qLgUzXhxtEbE2D7nigcERlXDUfA1GA
w3Rx8XfVtsgJ7IP5V8evJItMJF2K87Cqvdqa7RGTVfrTEE2REQHdConLEiHgx0CP9nIwaSc3uk65HCaIrccNAb
mak+2aJ3wqRB3X4bxAZAzWZvrQygDnBS9jn9/R5J7GyB2+dV4wI0UpLKmEfdgluj+hO0vhJ9UR0P92Ilvroa6q
l6Am+nHgbc/4wvoZHCEFB1n8x+owyyCQl1F4+5V7x0aGejBhk7u8kL6oq9RoLdzMCAwEAAaOCAx8wggMbMA4GA
1UdDwEB/wQEAwIF4DBiBgNVHSAEWzBZMFcGBmBMAQIBFDBNMEsGCCsGAQUFBwIBFj9odHRwOi8vaW8tY29tLWl
jcGJyLmltcHJlbnNhb2ZpY2lhbC5jb20uYnIvcmVwb3NpdG9yaW8vSU1FU1BSRkIwgfUGA1UdHwSB7TCB6jBWo
FSgUoZQaHR0cDovL2lvLWNvbS1pY3Bici5pbXByZW5zYW9maWNpYWwuY29tLmJyL3JlcG9zaXRvcmlvL0lNRVN
QUkZCL0FDSU1FU1BSRkJHNC5jcmwwSqBIoEaGRGh0dHA6Ly93d3cuZGlnaXRhbHRydXN0LmNvbS5ici9yZXBvc
2l0b3Jpby9JTUVTUFJGQi9BQ0lNRVNQUkZCRzQuY3JsMESgQqBAhj5odHRwOi8vcmVwb3NpdG9yaW8uaWNwYnJ
hc2lsLmdvdi5ici9sY3IvSU1FU1AvQUNJTUVTUFJGQkc0LmNybDCBpwYIKwYBBQUHAQEEgZowgZcwNwYIKwYBB
QUHMAGGK2h0dHA6Ly9pby1vY3NwLWljcGJyLmltcHJlbnNhb2ZpY2lhbC5jb20uYnIwXAYIKwYBBQUHMAKGUGh
0dHA6Ly9pby1jb20taWNwYnIuaW1wcmVuc2FvZmljaWFsLmNvbS5ici9yZXBvc2l0b3Jpby9JTUVTUFJGQi9BQ
0lNRVNQUkZCRzQucDdiMCkGA1UdJQQiMCAGCCsGAQUFBwMCBggrBgEFBQcDBAYKKwYBBAGCNxQCAjAJBgNVHRM
EAjAAMIGrBgNVHREEgaMwgaCBE3BvdGVuY3lhQHVvbC5jb20uYnKgOAYFYEwBAwSgLwQtMDYwODE5NjkxMDY5MzA0Mzg3MzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwoBsGBWBMAQMCoBIEEEVEVUFSRE8gQU5BU1RBU0mgGQY
FYEwBAwOgEAQOMDgyOTk5NjQwMDA1MTigFwYFYEwBAwegDgQMMDAwMDAwMDAwMDAwMB8GA1UdIwQYMBaAFHpU/
MydBo954w1Eye7lw7dNTcuiMA0GCSqGSIb3DQEBCwUAA4ICAQC/1qQofG7n9Lx7RcMhhkqOU4BV5liKvSY4oO2
ePwIhrbLeX+lNU5GFlxnn9qpt1bbMbEZeJIUPZvaIcZq4+2YjpS3loy0B0bCofS8lNXMeLf00tlaKwjufNWVgL
kYXyY8M4M01VMY8mqpNzWiP62uR59m5l08XtQ4rG9vE/PytoBWtx/YyH8MTAkura8DMN+ZegkeRq6xoLhEGoEJ
Z2xG2CmO144JV82UUUmvA6gHRh+J2gjIpkQg2CqvGK2HRbxdQYmM5VMNmEiWVHeFNojvur/J2mJVdPqqH0wNHM
8FBzgXTX9ci8G/YFjZR+EnmBMdpO6QKT/mGm8E7BcHL8XLA0N2hJFXv/vJCeP396y2sJDZfPzDusdhIr6CMrCf
XlH1LisQ2p56M7CrU8mkQR9gcv/UtOYzkVxC/PVJt2YFJ7+krN7KMoZiuNrLPOJviApr4VAvH+RumQmG378n3n
1DQAzcY/4shu0yoVVC7B1OZwLfUgdTKQjAMem+IFt1sUjC78GJgZ3z2zNMJw3dFhjgxJc78Nj9ctfwrfXLjAUl
aZC65z0ZFUIibGc5t4q95jw80CHxV/usz/IyneArhQtJAI1fFr0mhpDrwb829DF8NUl4YqPYFRX3oS1PEsqGBO
0rV58EqwXkbPXRh/YZ+KYfhv3KISXBFzskda7ROMCow7Q==</X509Certificate></X509Data></KeyInfo>
</Signature></NFe><protNFe
versao=\"3.10\"><infProt><tpAmb>1</tpAmb><verAplic>SVRSnfce201603081012</verAplic><chN
Fe>33160408299964000518650080000422051091522715</chNFe><dhRecbto>2016-04-25T08:42:32-
03:00</dhRecbto><nProt>333160111565931</nProt><digVal>YoMCK2fUAei9O+d7hmo8em8LrOU=</di
gVal><cStat>100</cStat><xMotivo>Autorizado o uso da NFe</xMotivo></infProt></protNFe></nfeProc>",
"id_xml_nfce" : "33160408299964000518650080000422051091522715",
"serie" : 921,
"protocolo_autorizacao" : "333160111565931",
"autorizacao" : "2017-08-23T22:36:00Z",
"emissao" : "2017-08-23T22:34:00Z",
"numero" : "012166454848",
"versao" : "3.10"
} ],
"uf" : "RJ"
}


Response


HTTP/1.1 200 OK
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
REQUEST-ID: 390wA1WFUqdvGNUt8n39
Content-Type: application/json
Content-Length: 138
{
"lista_mensagens" : [ {
"codigo" : 200,
"titulo" : "OK: Operação Realizada com sucesso"
} ],
"intervalo_pdv" : 5
}


DICA

As possíveis mensagens de retorno estão disponíveis na seção Mensagens de Retorno.