Noov REST API é a interface de comunicação com a qual as aplicações Noov podem fazer consultas aos dados de Documentos Fiscais Eletrônicos armazenados no Noov. Neste manual estão documentados todos os recursos e serviços disponibilizados através da API. Os recursos estão categorizados em tópicos. Cada tópico compreende um módulo para integração.

1. Glossário

Abaixo está um glossário de termos que serão utilizados nessa documentação.

Nome Descrição

DF-e

Documento Fiscal Eletrônico. Refere-se a qualquer documento padronizado pelo fisco (NF-e, NFC-e, CT-e, MDF-e e MD-e).

End-Point

Ponto de conexão para um sistema que permite integrações. Nesta documentação será utilizado para representar os URIs dos recursos disponibilizados pela API.

Payload

No contexto da API REST trata-se do corpo de uma requisição.

timestamp

Marca temporal. Número inteiro com precisão de milisegundos contados a partir de 01/01/1970 00:00:00.000 UTC

URI

Universal Resource Identifier. Trata-se de um identificador único de recursos disponibilizados na Internet. Por exemplo https://rest.noov.com.br/api é um URI.

2. Integração Facilitada com SDKs

Para facilitar a integração com a API, são disponibilizados Kits de Desenvolvimento de Software (SDK). Atualmente existe apenas o SDK para Java. Em breve serão disponibilizados SDKs em outras linguagens.

2.1. SDK Java

O SDK em Java pode ser encontrado em nosso repositório maven. Para utilizá-lo em um projeto maven basta adicionar a seguinte dependência:

<dependency>
  <groupId>br.com.oobj.public</groupId>
  <artifactId>oobj-dfe-noov-sdk</artifactId>
  <version>RELEASE</version>
</dependency>

Adicionalmente é necessário configurar o nosso servidor de artefatos binários maven. Para tal, adicione o nosso repositório às configurações:

<repositories>
  <repository>
    <id>noov-repo</id>
    <name>Repositorio Noov</name>
    <url>http://maven.oobj.com.br/nexus/content/repositories/oobj-public/</url>
  </repository>
</repositories>

Caso prefira, também é possível fazer o download do JAR com todas as dependências.

2.1.1. Exemplos de Utilização

Para utilizar o SDK Java é necessário instanciar um objeto da classe NoovClient:

NoovClient noovClient = AppNoovClient.getInstance(NOOV_API_KEY, NOOV_API_SECRET, NOOV_APP_NAME, NOOV_APP_EMAIL_DESENV);

Como é possível observar, são necessários o API Key e API Secret, o nome do aplicativo e o e-mail do desenvolvedor (usuário que o cadastrou).

Com a instancia de NoovClient é possível requisitar qualquer end-point da API utilizando os métodos makeAuthenticatedGetRequest, makeAuthenticatedPostRequest, makeAuthenticatedPutRequest, makeAuthenticatedDeleteRequest:

NoovHttpResponse response = noovClient
  .makeAuthenticatedPostRequest(uri, payload,
                            ContentType.APPLICATION_XML.getMimeType());

Os métodos makeAuthenticatedPostRequest e makeAuthenticatedPutRequest são para realização de requisições POST e PUT, respectivamente. Eles recebem 2 parâmetros do tipo String e 1 do tipo byte[]:

  • URI (String): O endereço completo do recurso a ser requisitado.

  • Payload (byte[]): O conteúdo do corpo da requisição (costumeiramente um xml ou json).

  • Content Type (String): O tipo do conteúdo. Por exemplo application/xml.

Os métodos makeAuthenticatedGetRequest e makeAuthenticatedDeleteRequest são para realização de requisições GET e DELETE, respectivamente. A diferença destes para os anteriores está no segundo parâmetro. Ao invés de ser uma String com o payload, é um Map com os parâmetros da requisição. Para cada elemento do Map a chave é o nome do parâmetro. Abaixo está um exemplo de código:

NoovClient noovClient = AppNoovClient.getInstance(API_KEY, API_SECRET, APP_NAME, DEV_EMAIL);
Map<String, String> params = new HashMap<>();
params.put("docKey", "12345678901234");
NoovHttpResponse response = noovClient
  .makeAuthenticatedGetRequest("/app/enrichment", params, "text/plain");

O retorno dos métodos é um objeto da classe NoovHttpResponse. Os métodos relevantes dessa classe são:

  • String getContent(): retorna o corpo da resposta da requisição.

  • Integer getStatus(): retorna o Http Status da requisição.

  • Map<String, String> getHeaders(): retorna um Map contendo os cabeçalhos da resposta.

Adicionalmente existe uma classe específica para o serviço de envio de documentos fiscais eletrônicos, a UploadService. Abaixo um exemplo de utilização dessa classe:

UploadService uploadService = new UploadService(noovClient);
STATUS_NOOV statusNoov = uploadXmlService.upload(xmlProc, nomeArquivo);

No exemplo acima a variável xmlProc é um byte[], com o conteúdo de um XML do DF-e, enquanto a variável nomeArquivo é o nome deste arquivo XML. Perceba que ambos parâmetros são obrigatórios.

3. Introdução

A API REST do Noov possui uma série de padrões para todos os serviços e recursos a serem consumidos. Tais padrões serão descritos em mais detalhes nesta seção.

3.1. API Key e API Secret

Para utilizar a API do Noov é necessário ter uma aplicação cadastrada e aprovada. Assim que o cadastro da aplicação é aprovado, são geradas as credenciais de acesso. Trata-se do API Key e API Secret. O API Key é uma chave de acesso utilizada para autenticação do aplicativo. Ela é aleatoria e única para cada aplicativo. O API Secret é um código secreto também gerado aleatoriamente. Esse código é usado no momento da autenticação da aplicação para geração de um hash que valida os dados, estabelecendo uma assinatura para a requisição de autenticação.

Exemplo de API Key
c94a88a5-17c0-4ccc-a31b-f4c6d390f09a
Exemplo de API Secret
421c76d77563afa1914846b010bd164f395bd34c2102e5e99e0cb9cf173c1d87

3.2. Possíveis HTTP Status

A tabela a seguir detalha os possíveis HTTP Status que podem ocorrer no retorno de uma requisição à API. Essa tabela poderá ser utilizada como referência para todos os recursos e serviços da API.

Código Nome Motivo

200

OK

Requisição realizada com sucesso.

202

Accepted

A requisição foi aceita para processamento.

400

Bad Request

Os dados enviados na requisição estão incorretos.

401

Unauthorized

O recurso precisa de autenticação para ser consumido e a requisição não está autenticada ou a autenticação está incorreta.

403

Forbidden

O aplicativo ou usuário que está realizando a requisição não possui permissão.

404

Not Found

Não foi encontrado qualquer resultado para esta requisição.

3.3. Requisição de Recursos

Antes de consumir qualquer recurso da API é necessário autenticar-se. Estando a aplicação devidamente autenticada, faz-se SEMPRE necessário passar o token gerado, no cabeçalho da requisição para se ter acesso aos recursos.

Exemplo do HEADER da requisição
 Content-Type  : application/json
 Authorization : Bearer qrwr09FA3Ffq9.fiAdH67EhVAsdyQF233

3.4. Estrutura padrão de Resposta

Todos os recursos da API são retornados em formato JSON, seguindo uma estrutura padrão formada por três campos, como pode ser visto na tabela abaixo:

Table 1. Campos de resposta padrões da API
Nome do campo Descrição

meta

(Opcional) Quando retornado, contém meta-dados acerca da resposta ou do recurso retornado. Erros e mensagens de sucesso são retornadas nesse campo.

data

(Opcional) Contem a representação do recurso requisitado. Quando não há recurso para ser retornado, esse campo não é informado na resposta. Alguns end-points podem retornar listagens (array) neste campo, sendo comum o uso de paginação nesses casos.

pagination

(Opcional) Quando retornado, informa dados sobre a paginação dos recursos disponibilizados em data. Os recursos da API, quando paginados, podem utilizar um dos dois tipos de paginação detalhados logo abaixo.

Como é possível observar, todos os campos são opcionais. Entretanto, os campos meta e data são passíveis de aparecer em qualquer requisição. Toda resposta de erro terá apenas o campo meta. As respostas de sucesso, que retornam recursos, necessariamente terão o campo data. Já o campo pagination, apenas em listagens paginadas.

3.4.1. Paginação

A API do Noov possui duas formas de paginação: Paginação Estática e Paginação Dinâmica. Os dois tipos de paginação possuem alguns campos em comum (listados na tabela a seguir) e alguns detalhes específicos.

Table 2. Campos comuns de paginação estática e dinâmica
Nome do campo Tipo Descrição

pageSize

Integer

Tamanho da página. Ou seja, a quantidade de elementos máximo que uma página pode conter. A maioria dos end-points que retornam listagens podem ser configurados na requisição para utilizarem um tamanho de página específico. Porém, no caso da paginação dinâmica, a API impõe atualmente um pageSize mínimo de 20 e um máximo de 1000.

pageTotalElements

Integer

A quantidade total de elementos da página em questão. Apenas a última página possuirá pageTotalElements diferente de pageSize.

lastPage

Boolean

Se verdadeiro (true) indica que a página em questão é a última.

Paginação Estática

Esse tipo de paginação é usado quando o recurso é uma listagem cujo tamanho total é conhecido. Assim, a paginação segue o formato convencional, no qual é informado o total de elementos, e o número da página em questão. A tabela abaixo apresenta os campos específicos da paginação estática:

Table 3. Campos da paginação estática
Nome do campo Tipo Descrição

number

Integer

O número da página atual, sendo que o número da primeira página é 0.

totalElements

Long

A quantidade total de elementos da listagem retornada (correspondente a totalização de todas as páginas).

Paginação Dinâmica

A Paginação Dinâmica é utilizada quando a quantidade total de resultados é difícil de ser obtida. A utilização desse tipo de paginação é comum em recursos que envolvem agregações e operações de consulta mais complexas. A tabela abaixo apresenta os campos específicos da paginação dinâmica:

Table 4. Campos da paginação dinâmica
Nome do campo Tipo Descrição

nextProtocol

Long

O próximo protocolo a ser informado. Na paginação dinâmica, para requisitar a próxima página, basta informar o nextProtocol da página em questão.

3.4.2. Mensagens de Erros

A API Noov possui padronização com relação às mensagens de erro. Com isso, os erros, independente do recurso ou end-point serão retornados sempre da mesma forma. Quando há erros, o campo meta possuirá um atributo errors contendo uma listagem de erros expressos de acordo com a tabela abaixo:

Table 5. Campos da paginação dinâmica
Nome do campo Tipo Descrição

error

String

Nome ou título sobre o erro. Em caso de uma exceção esperada em algum fluxo alternativo, é informado o nome da exceção.

message

String

Uma mensagem com detalhes sobre o erro ocorrido.

É importante observar que mesmo que seja retornado apenas um erro, ele será representado dentro de uma lista (array) no atributo errors do campo meta. Adicionalmente, quando um erro ocorre, o Status HTTP de resposta é correspondente ao erro.

4. Autenticação de Aplicativos

Para utilizar os recursos disponíveis para aplicativos, é necessário autenticação previa, através de end-point especifico.

4.1. Campos de Requisição e Resposta

Table 6. Campos para Requisição
Path Type Description

apiKey

String

API Key (Chave de API) do Aplicativo que deseja autenticar

timestamp

Number

O timestamp do momento atual

secret

String

Um hash gerado conforme descrito abaixo.

Table 7. Campos para Resposta
Path Type Description

token

String

O token de acesso aos recursos de Aplicativo.

4.2. Recursos

4.2.1. Login de Aplicativo

POST /auth/login

Ao fazer uma requisição para esse recurso, certifique-se de que o campo timestamp contém o timestamp atual e que o campo secret é formado através dos seguintes passos:

  • Concatenação no nome da aplicação + e-mail do desenvolvedor + timestamp. Por exemplo:

NoovDashboarddemo@noov.com.br1462221821899
  • Geração de hash a partir de algoritmo HMAC_SHA256, utilizando a API Secret da aplicação em questão. O resultado será uma sequência de caracteres na base hexadecimal. Abaixo está um exemplo de resultado final da geração do hash HMAC_SHA256:

221405e09663d12774f6373cb7c2232ac5ae6db930ef454e20a572014040f0a4
Na requisição de autenticação, o atributo secret não é o API Secret da aplicação e sim o hash gerado de acordo com os passos acima.
Exemplo de Requisição HTTP
POST /v1/auth/login HTTP/1.1
Content-Type: application/json
Host: rest.noov.com.br
Content-Length: 167

{
  "apiKey" : "50e3c8d7-72b3-4dfb-8f95-3fa191683720",
  "timestamp" : 1573753490320,
  "secret" : "1d929560a531596fe1f957745dabcccbb7be6b74365926bbfcf6568e8ad47d0c"
}
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/auth/login' -i -X POST -H 'Content-Type: application/json' -d '{
  "apiKey" : "50e3c8d7-72b3-4dfb-8f95-3fa191683720",
  "timestamp" : 1573753490320,
  "secret" : "1d929560a531596fe1f957745dabcccbb7be6b74365926bbfcf6568e8ad47d0c"
}'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 190

{
  "token" : "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0OTAsImV4cCI6MTU3Mzc1NTI5MH0.FSH1qBkHLC1riWlUbUCxdd_eX-hPss_j7xPKZZquUsA"
}
Exemplo de Resposta HTTP com timestamp incorreto 400 Bad Request
HTTP/1.1 412 Precondition Failed
Content-Type: application/json;charset=UTF-8
Content-Length: 133

{
  "meta" : {
    "errors" : [ {
      "error" : "InvalidTimestampException",
      "message" : "Timestamp incorreto."
    } ]
  }
}
Exemplo de Resposta HTTP com secret incorreto 401 Unauthorized
HTTP/1.1 401 Unauthorized
Content-Type: application/json;charset=UTF-8
Content-Length: 136

{
  "meta" : {
    "errors" : [ {
      "error" : "AuthenticationException",
      "message" : "Autenticação Inválida."
    } ]
  }
}

4.2.2. Atualização de token

POST /app/refresh-token

O token gerando na autenticação expira em 30 minutos. O aplicativo que deseja ficar continuamente consumindo recursos deve, de tempos em tempos, requisitar um novo token.

O novo token deve ser requisitado antes do token atual expirar. Caso contrário, será necessário realizar o procedimento de login novamente.

Para adquirir um novo token, basta realizar uma requisição à esse recurso, passando o token antigo (conforme o consumo normal de um recurso autenticado). Em caso de sucesso, um novo token será gerado e retornado da mesma forma que o serviço de login realiza.

Há uma limitação de tempo para que um token possa ser renovado. Assim, não é possível renovar um token que acabou de ser criado, por exemplo.

O token deve ser revalidado nos 10 últimos minutos antes de sua expiração.
Exemplo de Requisição HTTP para renovar um token
POST /v1/app/refresh-token HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0OTAsImV4cCI6MTU3Mzc1Mzc5MH0.RlInJHsy2GCqqhFHpLj-IEMeuc6nabhpkmJZZpFQ3LQ
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/refresh-token' -i -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0OTAsImV4cCI6MTU3Mzc1Mzc5MH0.RlInJHsy2GCqqhFHpLj-IEMeuc6nabhpkmJZZpFQ3LQ'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 190

{
  "token" : "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0OTAsImV4cCI6MTU3Mzc1NTI5MH0.FSH1qBkHLC1riWlUbUCxdd_eX-hPss_j7xPKZZquUsA"
}
Exemplo de Resposta HTTP para tentativa de renovação de token muito recente 403 Forbidden
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 190

{
  "token" : "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0OTAsImV4cCI6MTU3Mzc1NTI5MH0.FSH1qBkHLC1riWlUbUCxdd_eX-hPss_j7xPKZZquUsA"
}

5. Recursos Genéricos (DF-es)

Nesta seção serão descritos serviços e recursos utilizados para qualquer DF-e.

5.1. Recursos

5.1.1. Enviar Documento

POST /dfe

Este é o recurso pelo qual qualquer XML de Documento Fiscal Eletrônico pode ser enviado, até mesmo eventos. Para consumo deste serviço, basta enviar o XML no payload da requisição autenticada.

5.1.2. Campos para Requisição

Parameter Description

appVersion

Versão do aplicativo que está acessando o endpoint.

sdkVersion

Versão da SDK que está acessando o endpoint.

Exemplo de Requisição HTTP
POST /v1/app/dfe?appVersion=1.0.0&sdkVersion=2.5 HTTP/1.1
Content-Type: application/xml
Content-Length: 11607
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br

<?xml version="1.0" encoding="UTF-8"?>
<nfeProc xmlns="http://www.portalfiscal.inf.br/nfe" versao="3.10">
    <NFe xmlns="http://www.portalfiscal.inf.br/nfe">
        <infNFe Id="NFe52161101008713004909550120011344591988148770" versao="3.10">
            <ide>
                <cUF>52</cUF>
                <cNF>98814877</cNF>
                <natOp>6202-Devolucao de Compra</natOp>
                <indPag>2</indPag>
                <mod>55</mod>
                <serie>12</serie>
                <nNF>1134459</nNF>
                <dhEmi>2016-11-24T00:00:00-02:00</dhEmi>
                <dhSaiEnt>2016-11-24T00:00:00-02:00</dhSaiEnt>
                <tpNF>1</tpNF>
                <idDest>2</idDest>
                <cMunFG>5208707</cMunFG>
                <tpImp>1</tpImp>
                <tpEmis>1</tpEmis>
                <cDV>0</cDV>
                <tpAmb>2</tpAmb>
                <finNFe>4</finNFe>
                <indFinal>0</indFinal>
                <indPres>1</indPres>
                <procEmi>0</procEmi>
                <verProc>Oobj-DFe</verProc>
                <NFref>
                    <refNFe>35160707293118000285550030001247201004064323</refNFe>
                </NFref>
            </ide>
            <emit>
                <CNPJ>01008713004909</CNPJ>
                <xNome>FUJIOKA ELETRO IMAGEM S.A.</xNome>
                <xFant>Fujioka</xFant>
                <enderEmit>
                    <xLgr>R PORTO NACIONAL</xLgr>
                    <nro>265</nro>
                    <xCpl>Qd. 57 Lts 01/35</xCpl>
                    <xBairro>JD GUANABARA</xBairro>
                    <cMun>5208707</cMun>
                    <xMun>GOIANIA</xMun>
                    <UF>GO</UF>
                    <CEP>74675690</CEP>
                    <cPais>1058</cPais>
                    <xPais>Brasil</xPais>
                    <fone>32649800</fone>
                </enderEmit>
                <IE>102718415</IE>
                <IM>1028774</IM>
                <CNAE>4649402</CNAE>
                <CRT>3</CRT>
            </emit>
            <dest>
                <CNPJ>07293118000285</CNPJ>
                <xNome>BRASITECH IND. COM. DE APAR. BELEZA LTDA</xNome>
                <enderDest>
                    <xLgr>R XAVIER CURADO , 347</xLgr>
                    <nro>S/N</nro>
                    <xBairro>IPIRANGA</xBairro>
                    <cMun>3550308</cMun>
                    <xMun>SAO PAULO</xMun>
                    <UF>SP</UF>
                    <CEP>04210100</CEP>
                    <cPais>1058</cPais>
                    <xPais>Brasil</xPais>
                    <fone>6299044553</fone>
                </enderDest>
                <indIEDest>1</indIEDest>
                <IE>148468458119</IE>
            </dest>
            <autXML>
                <CPF>37557858115</CPF>
            </autXML>
            <det nItem="1">
                <prod>
                    <cProd>19368</cProd>
                    <cEAN>7898946351286</cEAN>
                    <xProd>ESCOVA ROT.GAMA TURBO ION 220V</xProd>
                    <NCM>85163200</NCM>
                    <CFOP>6202</CFOP>
                    <uCom>UN</uCom>
                    <qCom>2.00</qCom>
                    <vUnCom>115.02</vUnCom>
                    <vProd>230.04</vProd>
                    <cEANTrib>7898946351286</cEANTrib>
                    <uTrib>UN</uTrib>
                    <qTrib>2.00</qTrib>
                    <vUnTrib>115.02</vUnTrib>
                    <indTot>1</indTot>
                    <xPed>303846</xPed>
                </prod>
                <imposto>
                    <ICMS>
                        <ICMS00>
                            <orig>1</orig>
                            <CST>00</CST>
                            <modBC>3</modBC>
                            <vBC>230.04</vBC>
                            <pICMS>4.00</pICMS>
                            <vICMS>9.20</vICMS>
                        </ICMS00>
                    </ICMS>
                    <IPI>
                        <cEnq>999</cEnq>
                        <IPITrib>
                            <CST>99</CST>
                            <vBC>230.04</vBC>
                            <pIPI>20.00</pIPI>
                            <vIPI>46.01</vIPI>
                        </IPITrib>
                    </IPI>
                    <PIS>
                        <PISOutr>
                            <CST>99</CST>
                            <vBC>276.05</vBC>
                            <pPIS>1.65</pPIS>
                            <vPIS>4.55</vPIS>
                        </PISOutr>
                    </PIS>
                    <COFINS>
                        <COFINSOutr>
                            <CST>99</CST>
                            <vBC>276.05</vBC>
                            <pCOFINS>7.60</pCOFINS>
                            <vCOFINS>20.98</vCOFINS>
                        </COFINSOutr>
                    </COFINS>
                </imposto>
            </det>
            <total>
                <ICMSTot>
                    <vBC>230.04</vBC>
                    <vICMS>9.20</vICMS>
                    <vICMSDeson>0.00</vICMSDeson>
                    <vBCST>0.00</vBCST>
                    <vST>0.00</vST>
                    <vProd>230.04</vProd>
                    <vFrete>0.00</vFrete>
                    <vSeg>0.00</vSeg>
                    <vDesc>0.00</vDesc>
                    <vII>0.00</vII>
                    <vIPI>46.01</vIPI>
                    <vPIS>4.55</vPIS>
                    <vCOFINS>20.98</vCOFINS>
                    <vOutro>0.00</vOutro>
                    <vNF>276.05</vNF>
                    <vTotTrib>0.00</vTotTrib>
                </ICMSTot>
            </total>
            <transp>
                <modFrete>1</modFrete>
                <transporta>
                    <CNPJ>01743404000561</CNPJ>
                    <xNome>FAVORITA TRANSPORTES LTDA (RODOVIARIO)</xNome>
                    <xEnder>Endereco: ROD. BR 153 KM 5,5 GALPAO 3 MO</xEnder>
                    <xMun>GOIANIA</xMun>
                    <UF>GO</UF>
                </transporta>
                <vol>
                    <qVol>1</qVol>
                    <pesoL>1.980</pesoL>
                    <pesoB>0.000</pesoB>
                </vol>
            </transp>
            <cobr>
                <fat>
                    <nFat>1045448</nFat>
                </fat>
            </cobr>
            <infAdic>
                <infCpl>Merc. Dev. ou Troca por nao atender as necess. do cliente conf.NF: 124720 DE: Jul 29 2016 --&gt;&gt; Conforme Nota Fiscal de Compra 124720 Datada 29/07/16. , Local: 0049.3 - CD GO ASSISTENCIA TECNICA, 11:14:49, Devolucao de Compra, , Tipo de Frete:RODOVIARIO, Ped.:303846, Conf.:12525-MOREIRA, Cod. Autorizacao:</infCpl>
                <obsCont xCampo="IMPRESSORA">
                    <xTexto>LJ049LASER03</xTexto>
                </obsCont>
            </infAdic>
        </infNFe>
        <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="#NFe52161101008713004909550120011344591988148770">
                    <Transforms>
                        <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
                        <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
                    </Transforms>
                    <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                    <DigestValue>3QMTpdklj8PlzqoD5LCFtnfVlbs=</DigestValue>
                </Reference>
            </SignedInfo>
            <SignatureValue>JN9Dfis9DRO5Ad0otW70iE+jC7CPel9fGrJkhDaZMotoY4KeLq0DRvTkd2U6Y+X8CPEeQNnGjcu6
7bT1eJ2wdBevcSQxLE0BUN8/63fiHhXdnqNHtCyeTPX7woOhPXpW32Tssdo1LBp/tDNpV1xsSCKg
LG2dvki9KSIi8Le1ZUh9AYZ/zLvtee0ws9b0dUyzRGNE7qYxpKYJH5JCrzivoc6EMp4NP2g3bNn+
yYnkaYfm4WkrrZW+WWqBL+OADekFhoc/Rm8UloY+xU1PYQfMNJQdCYvMX/gQo1ELC7LJRbNhFl+t
zLtVSZg0fdrTU3j0HMPwnBBx5KrcrF1XWFINKw==</SignatureValue>
            <KeyInfo>
                <X509Data>
                    <X509Certificate>MIIHwjCCBaqgAwIBAgIIEAEVEhhkInQwDQYJKoZIhvcNAQELBQAwgYkxCzAJBgNVBAYTAkJSMRMw
EQYDVQQKEwpJQ1AtQnJhc2lsMTQwMgYDVQQLEytBdXRvcmlkYWRlIENlcnRpZmljYWRvcmEgUmFp
eiBCcmFzaWxlaXJhIHYyMRIwEAYDVQQLEwlBQyBTT0xVVEkxGzAZBgNVBAMTEkFDIFNPTFVUSSBN
dWx0aXBsYTAeFw0xNTEyMjExODM3NTJaFw0xNjEyMjAxODM3NTJaMIHYMQswCQYDVQQGEwJCUjET
MBEGA1UEChMKSUNQLUJyYXNpbDE0MDIGA1UECxMrQXV0b3JpZGFkZSBDZXJ0aWZpY2Fkb3JhIFJh
aXogQnJhc2lsZWlyYSB2MjESMBAGA1UECxMJQUMgU09MVVRJMRswGQYDVQQLExJBQyBTT0xVVEkg
TXVsdGlwbGExGjAYBgNVBAsTEUNlcnRpZmljYWRvIFBKIEExMTEwLwYDVQQDEyhGVUpJT0tBIEVM
RVRSTyBJTUFHRU0gUyBBOjAxMDA4NzEzMDAwMTY0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
CgKCAQEApW2xHsOmYjHN/0/o+/DOHbfmfMTzZ3Fab74VJbvb/IBxV6xnzhe4WMmHBIJyNOOgcGkT
bfAgTaoA2u6JJGx//kugTGKhKUIxofn+lLXvRpL8Z6ggEk1fPSklqD/fPJ2hC63iLw/Xh1lZNiU5
lOnLf/8MdVAWkqF7W7jfkdpBlPtiGOZkkafhjSdHRmWIcqdubdfCGKtIYbXGQj7BVOaNYSCApRfw
xkAT0Gnha7FB5+dWB4Q9/KHWaMUVCcpM1SB87FbcrP8hrd8gzmdjaC8a289vStHPh8UDFZFmW2cu
ydETzIDg+5ZbpQaYSFMiyxMa5ZlwMtx+ohk9EHIp11vXOQIDAQABo4IC2zCCAtcwVAYIKwYBBQUH
AQEESDBGMEQGCCsGAQUFBzAChjhodHRwOi8vY2NkLmFjc29sdXRpLmNvbS5ici9sY3IvYWMtc29s
dXRpLW11bHRpcGxhLXYxLnA3YjAdBgNVHQ4EFgQU0Ylr4LGG5Oa4SdP38dryLCVwAxswCQYDVR0T
BAIwADAfBgNVHSMEGDAWgBQ1rjEU9l7Sek9Y/jSoGmeXCsSbBzBeBgNVHSAEVzBVMFMGBmBMAQIB
JjBJMEcGCCsGAQUFBwIBFjtodHRwczovL2NjZC5hY3NvbHV0aS5jb20uYnIvZG9jcy9kcGMtYWMt
c29sdXRpLW11bHRpcGxhLnBkZjCB3gYDVR0fBIHWMIHTMD6gPKA6hjhodHRwOi8vY2NkLmFjc29s
dXRpLmNvbS5ici9sY3IvYWMtc29sdXRpLW11bHRpcGxhLXYxLmNybDA/oD2gO4Y5aHR0cDovL2Nj
ZDIuYWNzb2x1dGkuY29tLmJyL2xjci9hYy1zb2x1dGktbXVsdGlwbGEtdjEuY3JsMFCgTqBMhkpo
dHRwOi8vcmVwb3NpdG9yaW8uaWNwYnJhc2lsLmdvdi5ici9sY3IvQUNTT0xVVEkvYWMtc29sdXRp
LW11bHRpcGxhLXYxLmNybDAOBgNVHQ8BAf8EBAMCBeAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsG
AQUFBwMEMIHDBgNVHREEgbswgbiBF3JhaW11bmRvQGZ1amlva2EuY29tLmJyoCoGBWBMAQMCoCET
H1JBSU1VTkRPIFBFUkVJUkEgREEgU0lMVkEgRklMSE+gGQYFYEwBAwOgEBMOMDEwMDg3MTMwMDAx
NjSgPQYFYEwBAwSgNBMyMjAwOTE5NjUzNzU1Nzg1ODExNTAwMDAwMDAwMDAwMDAwMDAwMDAxMTc5
NjA2U1NQR0+gFwYFYEwBAwegDhMMMDAwMDAwMDAwMDAwMA0GCSqGSIb3DQEBCwUAA4ICAQAnAgr8
Vs+NWGF+rwWxLUZiDR6xhBAvMsCWSE+0FMbBB3txusW5FKfUmgDBUVtraO8WhGAPOJpTNjSp4dyG
hoRZlMyHnCIkdYov5kzkEtEBnkzdcROHx2R7xvJVLKugsQjj6I8Q778Rb3RhQR/NE3WU6IQ5dbKl
oqk+V7gec+zp9XQUHdRU3lDzA49ETnSDV/R3RA3ohxfeAsEAqT41ZV4oT29/hk9eTvxzc27WuNbf
rMYoMJW2+V29swxmHSWOW7LDFA1UTC8nKsIDOUI4Vz6iB/CD5hxDx7MBHAvFdQ/Nuzj6K7ZpjTKD
7HZFqhfkO9Be30IFSZniH6e+kSLU996ACS0zpVCAv835j5PphClNgBZugpyNngrCsT40BdvMFcd6
THyU4UGL5xUMf/iQtIm5LJ6s/RXXITgwG5YWWD/TfcWZc+R/DUsB+NFMtHSH6a6tvFn6uNWBmFfN
qXPm3CXUILCisgcngJ1QZqh8UIy/rxayeDen7osqQ6P3bdjyZDvpMWl21tz0UdqHvJ9l6L7YaviK
R8pxYmJP4eEBa1Pu9QpmB3jjV/Me+2TPxSnSEWAtvFVTg9E5DVk2fwYYSw4Gg8KsqNQlbEz6PCBh
fELi4pRd6k8ld/FFGA2+9qYOhMM1zP11dSQQz35ZrWxnePTAR2ezBYnXmqd6aEnjI3mEJA==</X509Certificate>
                </X509Data>
            </KeyInfo>
        </Signature>
    </NFe>
    <protNFe versao="3.10">
        <infProt Id="ID152160634612683">
            <tpAmb>2</tpAmb>
            <verAplic>GO3.0</verAplic>
            <chNFe>52161101008713004909550120011344591988148770</chNFe>
            <dhRecbto>2016-11-24T11:15:34-02:00</dhRecbto>
            <nProt>152160634612683</nProt>
            <digVal>3QMTpdklj8PlzqoD5LCFtnfVlbs=</digVal>
            <cStat>100</cStat>
            <xMotivo>Autorizado o uso da NF-e</xMotivo>
        </infProt>
    </protNFe>
</nfeProc>
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/dfe?appVersion=1.0.0&sdkVersion=2.5' -i -X POST -H 'Content-Type: application/xml' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U' -d '<?xml version="1.0" encoding="UTF-8"?>
<nfeProc xmlns="http://www.portalfiscal.inf.br/nfe" versao="3.10">
    <NFe xmlns="http://www.portalfiscal.inf.br/nfe">
        <infNFe Id="NFe52161101008713004909550120011344591988148770" versao="3.10">
            <ide>
                <cUF>52</cUF>
                <cNF>98814877</cNF>
                <natOp>6202-Devolucao de Compra</natOp>
                <indPag>2</indPag>
                <mod>55</mod>
                <serie>12</serie>
                <nNF>1134459</nNF>
                <dhEmi>2016-11-24T00:00:00-02:00</dhEmi>
                <dhSaiEnt>2016-11-24T00:00:00-02:00</dhSaiEnt>
                <tpNF>1</tpNF>
                <idDest>2</idDest>
                <cMunFG>5208707</cMunFG>
                <tpImp>1</tpImp>
                <tpEmis>1</tpEmis>
                <cDV>0</cDV>
                <tpAmb>2</tpAmb>
                <finNFe>4</finNFe>
                <indFinal>0</indFinal>
                <indPres>1</indPres>
                <procEmi>0</procEmi>
                <verProc>Oobj-DFe</verProc>
                <NFref>
                    <refNFe>35160707293118000285550030001247201004064323</refNFe>
                </NFref>
            </ide>
            <emit>
                <CNPJ>01008713004909</CNPJ>
                <xNome>FUJIOKA ELETRO IMAGEM S.A.</xNome>
                <xFant>Fujioka</xFant>
                <enderEmit>
                    <xLgr>R PORTO NACIONAL</xLgr>
                    <nro>265</nro>
                    <xCpl>Qd. 57 Lts 01/35</xCpl>
                    <xBairro>JD GUANABARA</xBairro>
                    <cMun>5208707</cMun>
                    <xMun>GOIANIA</xMun>
                    <UF>GO</UF>
                    <CEP>74675690</CEP>
                    <cPais>1058</cPais>
                    <xPais>Brasil</xPais>
                    <fone>32649800</fone>
                </enderEmit>
                <IE>102718415</IE>
                <IM>1028774</IM>
                <CNAE>4649402</CNAE>
                <CRT>3</CRT>
            </emit>
            <dest>
                <CNPJ>07293118000285</CNPJ>
                <xNome>BRASITECH IND. COM. DE APAR. BELEZA LTDA</xNome>
                <enderDest>
                    <xLgr>R XAVIER CURADO , 347</xLgr>
                    <nro>S/N</nro>
                    <xBairro>IPIRANGA</xBairro>
                    <cMun>3550308</cMun>
                    <xMun>SAO PAULO</xMun>
                    <UF>SP</UF>
                    <CEP>04210100</CEP>
                    <cPais>1058</cPais>
                    <xPais>Brasil</xPais>
                    <fone>6299044553</fone>
                </enderDest>
                <indIEDest>1</indIEDest>
                <IE>148468458119</IE>
            </dest>
            <autXML>
                <CPF>37557858115</CPF>
            </autXML>
            <det nItem="1">
                <prod>
                    <cProd>19368</cProd>
                    <cEAN>7898946351286</cEAN>
                    <xProd>ESCOVA ROT.GAMA TURBO ION 220V</xProd>
                    <NCM>85163200</NCM>
                    <CFOP>6202</CFOP>
                    <uCom>UN</uCom>
                    <qCom>2.00</qCom>
                    <vUnCom>115.02</vUnCom>
                    <vProd>230.04</vProd>
                    <cEANTrib>7898946351286</cEANTrib>
                    <uTrib>UN</uTrib>
                    <qTrib>2.00</qTrib>
                    <vUnTrib>115.02</vUnTrib>
                    <indTot>1</indTot>
                    <xPed>303846</xPed>
                </prod>
                <imposto>
                    <ICMS>
                        <ICMS00>
                            <orig>1</orig>
                            <CST>00</CST>
                            <modBC>3</modBC>
                            <vBC>230.04</vBC>
                            <pICMS>4.00</pICMS>
                            <vICMS>9.20</vICMS>
                        </ICMS00>
                    </ICMS>
                    <IPI>
                        <cEnq>999</cEnq>
                        <IPITrib>
                            <CST>99</CST>
                            <vBC>230.04</vBC>
                            <pIPI>20.00</pIPI>
                            <vIPI>46.01</vIPI>
                        </IPITrib>
                    </IPI>
                    <PIS>
                        <PISOutr>
                            <CST>99</CST>
                            <vBC>276.05</vBC>
                            <pPIS>1.65</pPIS>
                            <vPIS>4.55</vPIS>
                        </PISOutr>
                    </PIS>
                    <COFINS>
                        <COFINSOutr>
                            <CST>99</CST>
                            <vBC>276.05</vBC>
                            <pCOFINS>7.60</pCOFINS>
                            <vCOFINS>20.98</vCOFINS>
                        </COFINSOutr>
                    </COFINS>
                </imposto>
            </det>
            <total>
                <ICMSTot>
                    <vBC>230.04</vBC>
                    <vICMS>9.20</vICMS>
                    <vICMSDeson>0.00</vICMSDeson>
                    <vBCST>0.00</vBCST>
                    <vST>0.00</vST>
                    <vProd>230.04</vProd>
                    <vFrete>0.00</vFrete>
                    <vSeg>0.00</vSeg>
                    <vDesc>0.00</vDesc>
                    <vII>0.00</vII>
                    <vIPI>46.01</vIPI>
                    <vPIS>4.55</vPIS>
                    <vCOFINS>20.98</vCOFINS>
                    <vOutro>0.00</vOutro>
                    <vNF>276.05</vNF>
                    <vTotTrib>0.00</vTotTrib>
                </ICMSTot>
            </total>
            <transp>
                <modFrete>1</modFrete>
                <transporta>
                    <CNPJ>01743404000561</CNPJ>
                    <xNome>FAVORITA TRANSPORTES LTDA (RODOVIARIO)</xNome>
                    <xEnder>Endereco: ROD. BR 153 KM 5,5 GALPAO 3 MO</xEnder>
                    <xMun>GOIANIA</xMun>
                    <UF>GO</UF>
                </transporta>
                <vol>
                    <qVol>1</qVol>
                    <pesoL>1.980</pesoL>
                    <pesoB>0.000</pesoB>
                </vol>
            </transp>
            <cobr>
                <fat>
                    <nFat>1045448</nFat>
                </fat>
            </cobr>
            <infAdic>
                <infCpl>Merc. Dev. ou Troca por nao atender as necess. do cliente conf.NF: 124720 DE: Jul 29 2016 --&gt;&gt; Conforme Nota Fiscal de Compra 124720 Datada 29/07/16. , Local: 0049.3 - CD GO ASSISTENCIA TECNICA, 11:14:49, Devolucao de Compra, , Tipo de Frete:RODOVIARIO, Ped.:303846, Conf.:12525-MOREIRA, Cod. Autorizacao:</infCpl>
                <obsCont xCampo="IMPRESSORA">
                    <xTexto>LJ049LASER03</xTexto>
                </obsCont>
            </infAdic>
        </infNFe>
        <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="#NFe52161101008713004909550120011344591988148770">
                    <Transforms>
                        <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
                        <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
                    </Transforms>
                    <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                    <DigestValue>3QMTpdklj8PlzqoD5LCFtnfVlbs=</DigestValue>
                </Reference>
            </SignedInfo>
            <SignatureValue>JN9Dfis9DRO5Ad0otW70iE+jC7CPel9fGrJkhDaZMotoY4KeLq0DRvTkd2U6Y+X8CPEeQNnGjcu6
7bT1eJ2wdBevcSQxLE0BUN8/63fiHhXdnqNHtCyeTPX7woOhPXpW32Tssdo1LBp/tDNpV1xsSCKg
LG2dvki9KSIi8Le1ZUh9AYZ/zLvtee0ws9b0dUyzRGNE7qYxpKYJH5JCrzivoc6EMp4NP2g3bNn+
yYnkaYfm4WkrrZW+WWqBL+OADekFhoc/Rm8UloY+xU1PYQfMNJQdCYvMX/gQo1ELC7LJRbNhFl+t
zLtVSZg0fdrTU3j0HMPwnBBx5KrcrF1XWFINKw==</SignatureValue>
            <KeyInfo>
                <X509Data>
                    <X509Certificate>MIIHwjCCBaqgAwIBAgIIEAEVEhhkInQwDQYJKoZIhvcNAQELBQAwgYkxCzAJBgNVBAYTAkJSMRMw
EQYDVQQKEwpJQ1AtQnJhc2lsMTQwMgYDVQQLEytBdXRvcmlkYWRlIENlcnRpZmljYWRvcmEgUmFp
eiBCcmFzaWxlaXJhIHYyMRIwEAYDVQQLEwlBQyBTT0xVVEkxGzAZBgNVBAMTEkFDIFNPTFVUSSBN
dWx0aXBsYTAeFw0xNTEyMjExODM3NTJaFw0xNjEyMjAxODM3NTJaMIHYMQswCQYDVQQGEwJCUjET
MBEGA1UEChMKSUNQLUJyYXNpbDE0MDIGA1UECxMrQXV0b3JpZGFkZSBDZXJ0aWZpY2Fkb3JhIFJh
aXogQnJhc2lsZWlyYSB2MjESMBAGA1UECxMJQUMgU09MVVRJMRswGQYDVQQLExJBQyBTT0xVVEkg
TXVsdGlwbGExGjAYBgNVBAsTEUNlcnRpZmljYWRvIFBKIEExMTEwLwYDVQQDEyhGVUpJT0tBIEVM
RVRSTyBJTUFHRU0gUyBBOjAxMDA4NzEzMDAwMTY0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
CgKCAQEApW2xHsOmYjHN/0/o+/DOHbfmfMTzZ3Fab74VJbvb/IBxV6xnzhe4WMmHBIJyNOOgcGkT
bfAgTaoA2u6JJGx//kugTGKhKUIxofn+lLXvRpL8Z6ggEk1fPSklqD/fPJ2hC63iLw/Xh1lZNiU5
lOnLf/8MdVAWkqF7W7jfkdpBlPtiGOZkkafhjSdHRmWIcqdubdfCGKtIYbXGQj7BVOaNYSCApRfw
xkAT0Gnha7FB5+dWB4Q9/KHWaMUVCcpM1SB87FbcrP8hrd8gzmdjaC8a289vStHPh8UDFZFmW2cu
ydETzIDg+5ZbpQaYSFMiyxMa5ZlwMtx+ohk9EHIp11vXOQIDAQABo4IC2zCCAtcwVAYIKwYBBQUH
AQEESDBGMEQGCCsGAQUFBzAChjhodHRwOi8vY2NkLmFjc29sdXRpLmNvbS5ici9sY3IvYWMtc29s
dXRpLW11bHRpcGxhLXYxLnA3YjAdBgNVHQ4EFgQU0Ylr4LGG5Oa4SdP38dryLCVwAxswCQYDVR0T
BAIwADAfBgNVHSMEGDAWgBQ1rjEU9l7Sek9Y/jSoGmeXCsSbBzBeBgNVHSAEVzBVMFMGBmBMAQIB
JjBJMEcGCCsGAQUFBwIBFjtodHRwczovL2NjZC5hY3NvbHV0aS5jb20uYnIvZG9jcy9kcGMtYWMt
c29sdXRpLW11bHRpcGxhLnBkZjCB3gYDVR0fBIHWMIHTMD6gPKA6hjhodHRwOi8vY2NkLmFjc29s
dXRpLmNvbS5ici9sY3IvYWMtc29sdXRpLW11bHRpcGxhLXYxLmNybDA/oD2gO4Y5aHR0cDovL2Nj
ZDIuYWNzb2x1dGkuY29tLmJyL2xjci9hYy1zb2x1dGktbXVsdGlwbGEtdjEuY3JsMFCgTqBMhkpo
dHRwOi8vcmVwb3NpdG9yaW8uaWNwYnJhc2lsLmdvdi5ici9sY3IvQUNTT0xVVEkvYWMtc29sdXRp
LW11bHRpcGxhLXYxLmNybDAOBgNVHQ8BAf8EBAMCBeAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsG
AQUFBwMEMIHDBgNVHREEgbswgbiBF3JhaW11bmRvQGZ1amlva2EuY29tLmJyoCoGBWBMAQMCoCET
H1JBSU1VTkRPIFBFUkVJUkEgREEgU0lMVkEgRklMSE+gGQYFYEwBAwOgEBMOMDEwMDg3MTMwMDAx
NjSgPQYFYEwBAwSgNBMyMjAwOTE5NjUzNzU1Nzg1ODExNTAwMDAwMDAwMDAwMDAwMDAwMDAxMTc5
NjA2U1NQR0+gFwYFYEwBAwegDhMMMDAwMDAwMDAwMDAwMA0GCSqGSIb3DQEBCwUAA4ICAQAnAgr8
Vs+NWGF+rwWxLUZiDR6xhBAvMsCWSE+0FMbBB3txusW5FKfUmgDBUVtraO8WhGAPOJpTNjSp4dyG
hoRZlMyHnCIkdYov5kzkEtEBnkzdcROHx2R7xvJVLKugsQjj6I8Q778Rb3RhQR/NE3WU6IQ5dbKl
oqk+V7gec+zp9XQUHdRU3lDzA49ETnSDV/R3RA3ohxfeAsEAqT41ZV4oT29/hk9eTvxzc27WuNbf
rMYoMJW2+V29swxmHSWOW7LDFA1UTC8nKsIDOUI4Vz6iB/CD5hxDx7MBHAvFdQ/Nuzj6K7ZpjTKD
7HZFqhfkO9Be30IFSZniH6e+kSLU996ACS0zpVCAv835j5PphClNgBZugpyNngrCsT40BdvMFcd6
THyU4UGL5xUMf/iQtIm5LJ6s/RXXITgwG5YWWD/TfcWZc+R/DUsB+NFMtHSH6a6tvFn6uNWBmFfN
qXPm3CXUILCisgcngJ1QZqh8UIy/rxayeDen7osqQ6P3bdjyZDvpMWl21tz0UdqHvJ9l6L7YaviK
R8pxYmJP4eEBa1Pu9QpmB3jjV/Me+2TPxSnSEWAtvFVTg9E5DVk2fwYYSw4Gg8KsqNQlbEz6PCBh
fELi4pRd6k8ld/FFGA2+9qYOhMM1zP11dSQQz35ZrWxnePTAR2ezBYnXmqd6aEnjI3mEJA==</X509Certificate>
                </X509Data>
            </KeyInfo>
        </Signature>
    </NFe>
    <protNFe versao="3.10">
        <infProt Id="ID152160634612683">
            <tpAmb>2</tpAmb>
            <verAplic>GO3.0</verAplic>
            <chNFe>52161101008713004909550120011344591988148770</chNFe>
            <dhRecbto>2016-11-24T11:15:34-02:00</dhRecbto>
            <nProt>152160634612683</nProt>
            <digVal>3QMTpdklj8PlzqoD5LCFtnfVlbs=</digVal>
            <cStat>100</cStat>
            <xMotivo>Autorizado o uso da NF-e</xMotivo>
        </infProt>
    </protNFe>
</nfeProc>
'
Exemplo de Resposta HTTP 202 Accepted
HTTP/1.1 202 Accepted
Content-Type: application/json;charset=UTF-8
Content-Length: 69

{
  "meta" : {
    "message" : "Documento enviado com sucesso."
  }
}

5.1.3. Enviar Documento com nome do arquivo

POST /dfe/{nome-do-arquivo}

Este é o recurso pelo qual qualquer XML de Documento Fiscal Eletrônico pode ser enviado, até mesmo eventos. Para consumo deste serviço, basta enviar o XML no payload da requisição autenticada.

5.1.4. Campos para Requisição

Parameter Description

appVersion

Versão do aplicativo que está acessando o endpoint.

sdkVersion

Versão da SDK que está acessando o endpoint.

Exemplo de Requisição HTTP
POST /v1/app/dfe/exemplo-nfe?appVersion=1.0.0&sdkVersion=2.5 HTTP/1.1
Content-Type: application/xml
Accept: application/json
Content-Length: 11607
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br

<?xml version="1.0" encoding="UTF-8"?>
<nfeProc xmlns="http://www.portalfiscal.inf.br/nfe" versao="3.10">
    <NFe xmlns="http://www.portalfiscal.inf.br/nfe">
        <infNFe Id="NFe52161101008713004909550120011344591988148770" versao="3.10">
            <ide>
                <cUF>52</cUF>
                <cNF>98814877</cNF>
                <natOp>6202-Devolucao de Compra</natOp>
                <indPag>2</indPag>
                <mod>55</mod>
                <serie>12</serie>
                <nNF>1134459</nNF>
                <dhEmi>2016-11-24T00:00:00-02:00</dhEmi>
                <dhSaiEnt>2016-11-24T00:00:00-02:00</dhSaiEnt>
                <tpNF>1</tpNF>
                <idDest>2</idDest>
                <cMunFG>5208707</cMunFG>
                <tpImp>1</tpImp>
                <tpEmis>1</tpEmis>
                <cDV>0</cDV>
                <tpAmb>2</tpAmb>
                <finNFe>4</finNFe>
                <indFinal>0</indFinal>
                <indPres>1</indPres>
                <procEmi>0</procEmi>
                <verProc>Oobj-DFe</verProc>
                <NFref>
                    <refNFe>35160707293118000285550030001247201004064323</refNFe>
                </NFref>
            </ide>
            <emit>
                <CNPJ>01008713004909</CNPJ>
                <xNome>FUJIOKA ELETRO IMAGEM S.A.</xNome>
                <xFant>Fujioka</xFant>
                <enderEmit>
                    <xLgr>R PORTO NACIONAL</xLgr>
                    <nro>265</nro>
                    <xCpl>Qd. 57 Lts 01/35</xCpl>
                    <xBairro>JD GUANABARA</xBairro>
                    <cMun>5208707</cMun>
                    <xMun>GOIANIA</xMun>
                    <UF>GO</UF>
                    <CEP>74675690</CEP>
                    <cPais>1058</cPais>
                    <xPais>Brasil</xPais>
                    <fone>32649800</fone>
                </enderEmit>
                <IE>102718415</IE>
                <IM>1028774</IM>
                <CNAE>4649402</CNAE>
                <CRT>3</CRT>
            </emit>
            <dest>
                <CNPJ>07293118000285</CNPJ>
                <xNome>BRASITECH IND. COM. DE APAR. BELEZA LTDA</xNome>
                <enderDest>
                    <xLgr>R XAVIER CURADO , 347</xLgr>
                    <nro>S/N</nro>
                    <xBairro>IPIRANGA</xBairro>
                    <cMun>3550308</cMun>
                    <xMun>SAO PAULO</xMun>
                    <UF>SP</UF>
                    <CEP>04210100</CEP>
                    <cPais>1058</cPais>
                    <xPais>Brasil</xPais>
                    <fone>6299044553</fone>
                </enderDest>
                <indIEDest>1</indIEDest>
                <IE>148468458119</IE>
            </dest>
            <autXML>
                <CPF>37557858115</CPF>
            </autXML>
            <det nItem="1">
                <prod>
                    <cProd>19368</cProd>
                    <cEAN>7898946351286</cEAN>
                    <xProd>ESCOVA ROT.GAMA TURBO ION 220V</xProd>
                    <NCM>85163200</NCM>
                    <CFOP>6202</CFOP>
                    <uCom>UN</uCom>
                    <qCom>2.00</qCom>
                    <vUnCom>115.02</vUnCom>
                    <vProd>230.04</vProd>
                    <cEANTrib>7898946351286</cEANTrib>
                    <uTrib>UN</uTrib>
                    <qTrib>2.00</qTrib>
                    <vUnTrib>115.02</vUnTrib>
                    <indTot>1</indTot>
                    <xPed>303846</xPed>
                </prod>
                <imposto>
                    <ICMS>
                        <ICMS00>
                            <orig>1</orig>
                            <CST>00</CST>
                            <modBC>3</modBC>
                            <vBC>230.04</vBC>
                            <pICMS>4.00</pICMS>
                            <vICMS>9.20</vICMS>
                        </ICMS00>
                    </ICMS>
                    <IPI>
                        <cEnq>999</cEnq>
                        <IPITrib>
                            <CST>99</CST>
                            <vBC>230.04</vBC>
                            <pIPI>20.00</pIPI>
                            <vIPI>46.01</vIPI>
                        </IPITrib>
                    </IPI>
                    <PIS>
                        <PISOutr>
                            <CST>99</CST>
                            <vBC>276.05</vBC>
                            <pPIS>1.65</pPIS>
                            <vPIS>4.55</vPIS>
                        </PISOutr>
                    </PIS>
                    <COFINS>
                        <COFINSOutr>
                            <CST>99</CST>
                            <vBC>276.05</vBC>
                            <pCOFINS>7.60</pCOFINS>
                            <vCOFINS>20.98</vCOFINS>
                        </COFINSOutr>
                    </COFINS>
                </imposto>
            </det>
            <total>
                <ICMSTot>
                    <vBC>230.04</vBC>
                    <vICMS>9.20</vICMS>
                    <vICMSDeson>0.00</vICMSDeson>
                    <vBCST>0.00</vBCST>
                    <vST>0.00</vST>
                    <vProd>230.04</vProd>
                    <vFrete>0.00</vFrete>
                    <vSeg>0.00</vSeg>
                    <vDesc>0.00</vDesc>
                    <vII>0.00</vII>
                    <vIPI>46.01</vIPI>
                    <vPIS>4.55</vPIS>
                    <vCOFINS>20.98</vCOFINS>
                    <vOutro>0.00</vOutro>
                    <vNF>276.05</vNF>
                    <vTotTrib>0.00</vTotTrib>
                </ICMSTot>
            </total>
            <transp>
                <modFrete>1</modFrete>
                <transporta>
                    <CNPJ>01743404000561</CNPJ>
                    <xNome>FAVORITA TRANSPORTES LTDA (RODOVIARIO)</xNome>
                    <xEnder>Endereco: ROD. BR 153 KM 5,5 GALPAO 3 MO</xEnder>
                    <xMun>GOIANIA</xMun>
                    <UF>GO</UF>
                </transporta>
                <vol>
                    <qVol>1</qVol>
                    <pesoL>1.980</pesoL>
                    <pesoB>0.000</pesoB>
                </vol>
            </transp>
            <cobr>
                <fat>
                    <nFat>1045448</nFat>
                </fat>
            </cobr>
            <infAdic>
                <infCpl>Merc. Dev. ou Troca por nao atender as necess. do cliente conf.NF: 124720 DE: Jul 29 2016 --&gt;&gt; Conforme Nota Fiscal de Compra 124720 Datada 29/07/16. , Local: 0049.3 - CD GO ASSISTENCIA TECNICA, 11:14:49, Devolucao de Compra, , Tipo de Frete:RODOVIARIO, Ped.:303846, Conf.:12525-MOREIRA, Cod. Autorizacao:</infCpl>
                <obsCont xCampo="IMPRESSORA">
                    <xTexto>LJ049LASER03</xTexto>
                </obsCont>
            </infAdic>
        </infNFe>
        <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="#NFe52161101008713004909550120011344591988148770">
                    <Transforms>
                        <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
                        <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
                    </Transforms>
                    <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                    <DigestValue>3QMTpdklj8PlzqoD5LCFtnfVlbs=</DigestValue>
                </Reference>
            </SignedInfo>
            <SignatureValue>JN9Dfis9DRO5Ad0otW70iE+jC7CPel9fGrJkhDaZMotoY4KeLq0DRvTkd2U6Y+X8CPEeQNnGjcu6
7bT1eJ2wdBevcSQxLE0BUN8/63fiHhXdnqNHtCyeTPX7woOhPXpW32Tssdo1LBp/tDNpV1xsSCKg
LG2dvki9KSIi8Le1ZUh9AYZ/zLvtee0ws9b0dUyzRGNE7qYxpKYJH5JCrzivoc6EMp4NP2g3bNn+
yYnkaYfm4WkrrZW+WWqBL+OADekFhoc/Rm8UloY+xU1PYQfMNJQdCYvMX/gQo1ELC7LJRbNhFl+t
zLtVSZg0fdrTU3j0HMPwnBBx5KrcrF1XWFINKw==</SignatureValue>
            <KeyInfo>
                <X509Data>
                    <X509Certificate>MIIHwjCCBaqgAwIBAgIIEAEVEhhkInQwDQYJKoZIhvcNAQELBQAwgYkxCzAJBgNVBAYTAkJSMRMw
EQYDVQQKEwpJQ1AtQnJhc2lsMTQwMgYDVQQLEytBdXRvcmlkYWRlIENlcnRpZmljYWRvcmEgUmFp
eiBCcmFzaWxlaXJhIHYyMRIwEAYDVQQLEwlBQyBTT0xVVEkxGzAZBgNVBAMTEkFDIFNPTFVUSSBN
dWx0aXBsYTAeFw0xNTEyMjExODM3NTJaFw0xNjEyMjAxODM3NTJaMIHYMQswCQYDVQQGEwJCUjET
MBEGA1UEChMKSUNQLUJyYXNpbDE0MDIGA1UECxMrQXV0b3JpZGFkZSBDZXJ0aWZpY2Fkb3JhIFJh
aXogQnJhc2lsZWlyYSB2MjESMBAGA1UECxMJQUMgU09MVVRJMRswGQYDVQQLExJBQyBTT0xVVEkg
TXVsdGlwbGExGjAYBgNVBAsTEUNlcnRpZmljYWRvIFBKIEExMTEwLwYDVQQDEyhGVUpJT0tBIEVM
RVRSTyBJTUFHRU0gUyBBOjAxMDA4NzEzMDAwMTY0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
CgKCAQEApW2xHsOmYjHN/0/o+/DOHbfmfMTzZ3Fab74VJbvb/IBxV6xnzhe4WMmHBIJyNOOgcGkT
bfAgTaoA2u6JJGx//kugTGKhKUIxofn+lLXvRpL8Z6ggEk1fPSklqD/fPJ2hC63iLw/Xh1lZNiU5
lOnLf/8MdVAWkqF7W7jfkdpBlPtiGOZkkafhjSdHRmWIcqdubdfCGKtIYbXGQj7BVOaNYSCApRfw
xkAT0Gnha7FB5+dWB4Q9/KHWaMUVCcpM1SB87FbcrP8hrd8gzmdjaC8a289vStHPh8UDFZFmW2cu
ydETzIDg+5ZbpQaYSFMiyxMa5ZlwMtx+ohk9EHIp11vXOQIDAQABo4IC2zCCAtcwVAYIKwYBBQUH
AQEESDBGMEQGCCsGAQUFBzAChjhodHRwOi8vY2NkLmFjc29sdXRpLmNvbS5ici9sY3IvYWMtc29s
dXRpLW11bHRpcGxhLXYxLnA3YjAdBgNVHQ4EFgQU0Ylr4LGG5Oa4SdP38dryLCVwAxswCQYDVR0T
BAIwADAfBgNVHSMEGDAWgBQ1rjEU9l7Sek9Y/jSoGmeXCsSbBzBeBgNVHSAEVzBVMFMGBmBMAQIB
JjBJMEcGCCsGAQUFBwIBFjtodHRwczovL2NjZC5hY3NvbHV0aS5jb20uYnIvZG9jcy9kcGMtYWMt
c29sdXRpLW11bHRpcGxhLnBkZjCB3gYDVR0fBIHWMIHTMD6gPKA6hjhodHRwOi8vY2NkLmFjc29s
dXRpLmNvbS5ici9sY3IvYWMtc29sdXRpLW11bHRpcGxhLXYxLmNybDA/oD2gO4Y5aHR0cDovL2Nj
ZDIuYWNzb2x1dGkuY29tLmJyL2xjci9hYy1zb2x1dGktbXVsdGlwbGEtdjEuY3JsMFCgTqBMhkpo
dHRwOi8vcmVwb3NpdG9yaW8uaWNwYnJhc2lsLmdvdi5ici9sY3IvQUNTT0xVVEkvYWMtc29sdXRp
LW11bHRpcGxhLXYxLmNybDAOBgNVHQ8BAf8EBAMCBeAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsG
AQUFBwMEMIHDBgNVHREEgbswgbiBF3JhaW11bmRvQGZ1amlva2EuY29tLmJyoCoGBWBMAQMCoCET
H1JBSU1VTkRPIFBFUkVJUkEgREEgU0lMVkEgRklMSE+gGQYFYEwBAwOgEBMOMDEwMDg3MTMwMDAx
NjSgPQYFYEwBAwSgNBMyMjAwOTE5NjUzNzU1Nzg1ODExNTAwMDAwMDAwMDAwMDAwMDAwMDAxMTc5
NjA2U1NQR0+gFwYFYEwBAwegDhMMMDAwMDAwMDAwMDAwMA0GCSqGSIb3DQEBCwUAA4ICAQAnAgr8
Vs+NWGF+rwWxLUZiDR6xhBAvMsCWSE+0FMbBB3txusW5FKfUmgDBUVtraO8WhGAPOJpTNjSp4dyG
hoRZlMyHnCIkdYov5kzkEtEBnkzdcROHx2R7xvJVLKugsQjj6I8Q778Rb3RhQR/NE3WU6IQ5dbKl
oqk+V7gec+zp9XQUHdRU3lDzA49ETnSDV/R3RA3ohxfeAsEAqT41ZV4oT29/hk9eTvxzc27WuNbf
rMYoMJW2+V29swxmHSWOW7LDFA1UTC8nKsIDOUI4Vz6iB/CD5hxDx7MBHAvFdQ/Nuzj6K7ZpjTKD
7HZFqhfkO9Be30IFSZniH6e+kSLU996ACS0zpVCAv835j5PphClNgBZugpyNngrCsT40BdvMFcd6
THyU4UGL5xUMf/iQtIm5LJ6s/RXXITgwG5YWWD/TfcWZc+R/DUsB+NFMtHSH6a6tvFn6uNWBmFfN
qXPm3CXUILCisgcngJ1QZqh8UIy/rxayeDen7osqQ6P3bdjyZDvpMWl21tz0UdqHvJ9l6L7YaviK
R8pxYmJP4eEBa1Pu9QpmB3jjV/Me+2TPxSnSEWAtvFVTg9E5DVk2fwYYSw4Gg8KsqNQlbEz6PCBh
fELi4pRd6k8ld/FFGA2+9qYOhMM1zP11dSQQz35ZrWxnePTAR2ezBYnXmqd6aEnjI3mEJA==</X509Certificate>
                </X509Data>
            </KeyInfo>
        </Signature>
    </NFe>
    <protNFe versao="3.10">
        <infProt Id="ID152160634612683">
            <tpAmb>2</tpAmb>
            <verAplic>GO3.0</verAplic>
            <chNFe>52161101008713004909550120011344591988148770</chNFe>
            <dhRecbto>2016-11-24T11:15:34-02:00</dhRecbto>
            <nProt>152160634612683</nProt>
            <digVal>3QMTpdklj8PlzqoD5LCFtnfVlbs=</digVal>
            <cStat>100</cStat>
            <xMotivo>Autorizado o uso da NF-e</xMotivo>
        </infProt>
    </protNFe>
</nfeProc>
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/dfe/exemplo-nfe?appVersion=1.0.0&sdkVersion=2.5' -i -X POST -H 'Content-Type: application/xml' -H 'Accept: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U' -d '<?xml version="1.0" encoding="UTF-8"?>
<nfeProc xmlns="http://www.portalfiscal.inf.br/nfe" versao="3.10">
    <NFe xmlns="http://www.portalfiscal.inf.br/nfe">
        <infNFe Id="NFe52161101008713004909550120011344591988148770" versao="3.10">
            <ide>
                <cUF>52</cUF>
                <cNF>98814877</cNF>
                <natOp>6202-Devolucao de Compra</natOp>
                <indPag>2</indPag>
                <mod>55</mod>
                <serie>12</serie>
                <nNF>1134459</nNF>
                <dhEmi>2016-11-24T00:00:00-02:00</dhEmi>
                <dhSaiEnt>2016-11-24T00:00:00-02:00</dhSaiEnt>
                <tpNF>1</tpNF>
                <idDest>2</idDest>
                <cMunFG>5208707</cMunFG>
                <tpImp>1</tpImp>
                <tpEmis>1</tpEmis>
                <cDV>0</cDV>
                <tpAmb>2</tpAmb>
                <finNFe>4</finNFe>
                <indFinal>0</indFinal>
                <indPres>1</indPres>
                <procEmi>0</procEmi>
                <verProc>Oobj-DFe</verProc>
                <NFref>
                    <refNFe>35160707293118000285550030001247201004064323</refNFe>
                </NFref>
            </ide>
            <emit>
                <CNPJ>01008713004909</CNPJ>
                <xNome>FUJIOKA ELETRO IMAGEM S.A.</xNome>
                <xFant>Fujioka</xFant>
                <enderEmit>
                    <xLgr>R PORTO NACIONAL</xLgr>
                    <nro>265</nro>
                    <xCpl>Qd. 57 Lts 01/35</xCpl>
                    <xBairro>JD GUANABARA</xBairro>
                    <cMun>5208707</cMun>
                    <xMun>GOIANIA</xMun>
                    <UF>GO</UF>
                    <CEP>74675690</CEP>
                    <cPais>1058</cPais>
                    <xPais>Brasil</xPais>
                    <fone>32649800</fone>
                </enderEmit>
                <IE>102718415</IE>
                <IM>1028774</IM>
                <CNAE>4649402</CNAE>
                <CRT>3</CRT>
            </emit>
            <dest>
                <CNPJ>07293118000285</CNPJ>
                <xNome>BRASITECH IND. COM. DE APAR. BELEZA LTDA</xNome>
                <enderDest>
                    <xLgr>R XAVIER CURADO , 347</xLgr>
                    <nro>S/N</nro>
                    <xBairro>IPIRANGA</xBairro>
                    <cMun>3550308</cMun>
                    <xMun>SAO PAULO</xMun>
                    <UF>SP</UF>
                    <CEP>04210100</CEP>
                    <cPais>1058</cPais>
                    <xPais>Brasil</xPais>
                    <fone>6299044553</fone>
                </enderDest>
                <indIEDest>1</indIEDest>
                <IE>148468458119</IE>
            </dest>
            <autXML>
                <CPF>37557858115</CPF>
            </autXML>
            <det nItem="1">
                <prod>
                    <cProd>19368</cProd>
                    <cEAN>7898946351286</cEAN>
                    <xProd>ESCOVA ROT.GAMA TURBO ION 220V</xProd>
                    <NCM>85163200</NCM>
                    <CFOP>6202</CFOP>
                    <uCom>UN</uCom>
                    <qCom>2.00</qCom>
                    <vUnCom>115.02</vUnCom>
                    <vProd>230.04</vProd>
                    <cEANTrib>7898946351286</cEANTrib>
                    <uTrib>UN</uTrib>
                    <qTrib>2.00</qTrib>
                    <vUnTrib>115.02</vUnTrib>
                    <indTot>1</indTot>
                    <xPed>303846</xPed>
                </prod>
                <imposto>
                    <ICMS>
                        <ICMS00>
                            <orig>1</orig>
                            <CST>00</CST>
                            <modBC>3</modBC>
                            <vBC>230.04</vBC>
                            <pICMS>4.00</pICMS>
                            <vICMS>9.20</vICMS>
                        </ICMS00>
                    </ICMS>
                    <IPI>
                        <cEnq>999</cEnq>
                        <IPITrib>
                            <CST>99</CST>
                            <vBC>230.04</vBC>
                            <pIPI>20.00</pIPI>
                            <vIPI>46.01</vIPI>
                        </IPITrib>
                    </IPI>
                    <PIS>
                        <PISOutr>
                            <CST>99</CST>
                            <vBC>276.05</vBC>
                            <pPIS>1.65</pPIS>
                            <vPIS>4.55</vPIS>
                        </PISOutr>
                    </PIS>
                    <COFINS>
                        <COFINSOutr>
                            <CST>99</CST>
                            <vBC>276.05</vBC>
                            <pCOFINS>7.60</pCOFINS>
                            <vCOFINS>20.98</vCOFINS>
                        </COFINSOutr>
                    </COFINS>
                </imposto>
            </det>
            <total>
                <ICMSTot>
                    <vBC>230.04</vBC>
                    <vICMS>9.20</vICMS>
                    <vICMSDeson>0.00</vICMSDeson>
                    <vBCST>0.00</vBCST>
                    <vST>0.00</vST>
                    <vProd>230.04</vProd>
                    <vFrete>0.00</vFrete>
                    <vSeg>0.00</vSeg>
                    <vDesc>0.00</vDesc>
                    <vII>0.00</vII>
                    <vIPI>46.01</vIPI>
                    <vPIS>4.55</vPIS>
                    <vCOFINS>20.98</vCOFINS>
                    <vOutro>0.00</vOutro>
                    <vNF>276.05</vNF>
                    <vTotTrib>0.00</vTotTrib>
                </ICMSTot>
            </total>
            <transp>
                <modFrete>1</modFrete>
                <transporta>
                    <CNPJ>01743404000561</CNPJ>
                    <xNome>FAVORITA TRANSPORTES LTDA (RODOVIARIO)</xNome>
                    <xEnder>Endereco: ROD. BR 153 KM 5,5 GALPAO 3 MO</xEnder>
                    <xMun>GOIANIA</xMun>
                    <UF>GO</UF>
                </transporta>
                <vol>
                    <qVol>1</qVol>
                    <pesoL>1.980</pesoL>
                    <pesoB>0.000</pesoB>
                </vol>
            </transp>
            <cobr>
                <fat>
                    <nFat>1045448</nFat>
                </fat>
            </cobr>
            <infAdic>
                <infCpl>Merc. Dev. ou Troca por nao atender as necess. do cliente conf.NF: 124720 DE: Jul 29 2016 --&gt;&gt; Conforme Nota Fiscal de Compra 124720 Datada 29/07/16. , Local: 0049.3 - CD GO ASSISTENCIA TECNICA, 11:14:49, Devolucao de Compra, , Tipo de Frete:RODOVIARIO, Ped.:303846, Conf.:12525-MOREIRA, Cod. Autorizacao:</infCpl>
                <obsCont xCampo="IMPRESSORA">
                    <xTexto>LJ049LASER03</xTexto>
                </obsCont>
            </infAdic>
        </infNFe>
        <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="#NFe52161101008713004909550120011344591988148770">
                    <Transforms>
                        <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
                        <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
                    </Transforms>
                    <DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                    <DigestValue>3QMTpdklj8PlzqoD5LCFtnfVlbs=</DigestValue>
                </Reference>
            </SignedInfo>
            <SignatureValue>JN9Dfis9DRO5Ad0otW70iE+jC7CPel9fGrJkhDaZMotoY4KeLq0DRvTkd2U6Y+X8CPEeQNnGjcu6
7bT1eJ2wdBevcSQxLE0BUN8/63fiHhXdnqNHtCyeTPX7woOhPXpW32Tssdo1LBp/tDNpV1xsSCKg
LG2dvki9KSIi8Le1ZUh9AYZ/zLvtee0ws9b0dUyzRGNE7qYxpKYJH5JCrzivoc6EMp4NP2g3bNn+
yYnkaYfm4WkrrZW+WWqBL+OADekFhoc/Rm8UloY+xU1PYQfMNJQdCYvMX/gQo1ELC7LJRbNhFl+t
zLtVSZg0fdrTU3j0HMPwnBBx5KrcrF1XWFINKw==</SignatureValue>
            <KeyInfo>
                <X509Data>
                    <X509Certificate>MIIHwjCCBaqgAwIBAgIIEAEVEhhkInQwDQYJKoZIhvcNAQELBQAwgYkxCzAJBgNVBAYTAkJSMRMw
EQYDVQQKEwpJQ1AtQnJhc2lsMTQwMgYDVQQLEytBdXRvcmlkYWRlIENlcnRpZmljYWRvcmEgUmFp
eiBCcmFzaWxlaXJhIHYyMRIwEAYDVQQLEwlBQyBTT0xVVEkxGzAZBgNVBAMTEkFDIFNPTFVUSSBN
dWx0aXBsYTAeFw0xNTEyMjExODM3NTJaFw0xNjEyMjAxODM3NTJaMIHYMQswCQYDVQQGEwJCUjET
MBEGA1UEChMKSUNQLUJyYXNpbDE0MDIGA1UECxMrQXV0b3JpZGFkZSBDZXJ0aWZpY2Fkb3JhIFJh
aXogQnJhc2lsZWlyYSB2MjESMBAGA1UECxMJQUMgU09MVVRJMRswGQYDVQQLExJBQyBTT0xVVEkg
TXVsdGlwbGExGjAYBgNVBAsTEUNlcnRpZmljYWRvIFBKIEExMTEwLwYDVQQDEyhGVUpJT0tBIEVM
RVRSTyBJTUFHRU0gUyBBOjAxMDA4NzEzMDAwMTY0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
CgKCAQEApW2xHsOmYjHN/0/o+/DOHbfmfMTzZ3Fab74VJbvb/IBxV6xnzhe4WMmHBIJyNOOgcGkT
bfAgTaoA2u6JJGx//kugTGKhKUIxofn+lLXvRpL8Z6ggEk1fPSklqD/fPJ2hC63iLw/Xh1lZNiU5
lOnLf/8MdVAWkqF7W7jfkdpBlPtiGOZkkafhjSdHRmWIcqdubdfCGKtIYbXGQj7BVOaNYSCApRfw
xkAT0Gnha7FB5+dWB4Q9/KHWaMUVCcpM1SB87FbcrP8hrd8gzmdjaC8a289vStHPh8UDFZFmW2cu
ydETzIDg+5ZbpQaYSFMiyxMa5ZlwMtx+ohk9EHIp11vXOQIDAQABo4IC2zCCAtcwVAYIKwYBBQUH
AQEESDBGMEQGCCsGAQUFBzAChjhodHRwOi8vY2NkLmFjc29sdXRpLmNvbS5ici9sY3IvYWMtc29s
dXRpLW11bHRpcGxhLXYxLnA3YjAdBgNVHQ4EFgQU0Ylr4LGG5Oa4SdP38dryLCVwAxswCQYDVR0T
BAIwADAfBgNVHSMEGDAWgBQ1rjEU9l7Sek9Y/jSoGmeXCsSbBzBeBgNVHSAEVzBVMFMGBmBMAQIB
JjBJMEcGCCsGAQUFBwIBFjtodHRwczovL2NjZC5hY3NvbHV0aS5jb20uYnIvZG9jcy9kcGMtYWMt
c29sdXRpLW11bHRpcGxhLnBkZjCB3gYDVR0fBIHWMIHTMD6gPKA6hjhodHRwOi8vY2NkLmFjc29s
dXRpLmNvbS5ici9sY3IvYWMtc29sdXRpLW11bHRpcGxhLXYxLmNybDA/oD2gO4Y5aHR0cDovL2Nj
ZDIuYWNzb2x1dGkuY29tLmJyL2xjci9hYy1zb2x1dGktbXVsdGlwbGEtdjEuY3JsMFCgTqBMhkpo
dHRwOi8vcmVwb3NpdG9yaW8uaWNwYnJhc2lsLmdvdi5ici9sY3IvQUNTT0xVVEkvYWMtc29sdXRp
LW11bHRpcGxhLXYxLmNybDAOBgNVHQ8BAf8EBAMCBeAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsG
AQUFBwMEMIHDBgNVHREEgbswgbiBF3JhaW11bmRvQGZ1amlva2EuY29tLmJyoCoGBWBMAQMCoCET
H1JBSU1VTkRPIFBFUkVJUkEgREEgU0lMVkEgRklMSE+gGQYFYEwBAwOgEBMOMDEwMDg3MTMwMDAx
NjSgPQYFYEwBAwSgNBMyMjAwOTE5NjUzNzU1Nzg1ODExNTAwMDAwMDAwMDAwMDAwMDAwMDAxMTc5
NjA2U1NQR0+gFwYFYEwBAwegDhMMMDAwMDAwMDAwMDAwMA0GCSqGSIb3DQEBCwUAA4ICAQAnAgr8
Vs+NWGF+rwWxLUZiDR6xhBAvMsCWSE+0FMbBB3txusW5FKfUmgDBUVtraO8WhGAPOJpTNjSp4dyG
hoRZlMyHnCIkdYov5kzkEtEBnkzdcROHx2R7xvJVLKugsQjj6I8Q778Rb3RhQR/NE3WU6IQ5dbKl
oqk+V7gec+zp9XQUHdRU3lDzA49ETnSDV/R3RA3ohxfeAsEAqT41ZV4oT29/hk9eTvxzc27WuNbf
rMYoMJW2+V29swxmHSWOW7LDFA1UTC8nKsIDOUI4Vz6iB/CD5hxDx7MBHAvFdQ/Nuzj6K7ZpjTKD
7HZFqhfkO9Be30IFSZniH6e+kSLU996ACS0zpVCAv835j5PphClNgBZugpyNngrCsT40BdvMFcd6
THyU4UGL5xUMf/iQtIm5LJ6s/RXXITgwG5YWWD/TfcWZc+R/DUsB+NFMtHSH6a6tvFn6uNWBmFfN
qXPm3CXUILCisgcngJ1QZqh8UIy/rxayeDen7osqQ6P3bdjyZDvpMWl21tz0UdqHvJ9l6L7YaviK
R8pxYmJP4eEBa1Pu9QpmB3jjV/Me+2TPxSnSEWAtvFVTg9E5DVk2fwYYSw4Gg8KsqNQlbEz6PCBh
fELi4pRd6k8ld/FFGA2+9qYOhMM1zP11dSQQz35ZrWxnePTAR2ezBYnXmqd6aEnjI3mEJA==</X509Certificate>
                </X509Data>
            </KeyInfo>
        </Signature>
    </NFe>
    <protNFe versao="3.10">
        <infProt Id="ID152160634612683">
            <tpAmb>2</tpAmb>
            <verAplic>GO3.0</verAplic>
            <chNFe>52161101008713004909550120011344591988148770</chNFe>
            <dhRecbto>2016-11-24T11:15:34-02:00</dhRecbto>
            <nProt>152160634612683</nProt>
            <digVal>3QMTpdklj8PlzqoD5LCFtnfVlbs=</digVal>
            <cStat>100</cStat>
            <xMotivo>Autorizado o uso da NF-e</xMotivo>
        </infProt>
    </protNFe>
</nfeProc>
'
Exemplo de Resposta HTTP 202 Accepted
HTTP/1.1 202 Accepted
Content-Type: application/json;charset=UTF-8
Content-Length: 69

{
  "meta" : {
    "message" : "Documento enviado com sucesso."
  }
}

6. Nota Fiscal Eletrônica (NF-e)

Os recursos aqui descritos fazem uso dos mesmos campos para requisição.

6.1. Campos para Requisição

Path Type Description

chave

String

Chave de Acesso da NFe.

modelo

Array

Array de String para modelo da NFe. Os modelos possíveis são 55 para NF-e e 65 para NFC-e.

numero

String

Numero da NFe(String). Pode ser um intervalo, neste caso deve ser separado por ';'. Ex: 1;9999999

serie

String

Serie da NFe.

emiCnpj

Array

(DEPRECATED) Array de String para CNPJ de emitentes.

emiDoc

Array

Array de String para CNPJ/CPF de emitentes.

destCnpj

Array

(DEPRECATED) Array de String para CNPJ de destinatários.

destDoc

Array

Array de String para CNPJ/CPF de destinatários.

transpCnpj

Array

(DEPRECATED) Array de String para CNPJ de transportadoras.

transpDoc

Array

Array de String para CNPJ/CPF de transportadoras.

cancelados

Boolean

Se TRUE retorna dados APENAS de NFe canceladas. Se FALSE retorna dados APENAS de NFe NÃO canceladas. Se VAZIO retorna dados de NFe independente do status de cancelamento.

ean

Array

Código EAN do produto. Obs: obrigatório para consultar produtos.

emDataInicial

Number

Timestamp da data de emissão inicial. Caso não seja informada a data de emissão FINAL, a consulta será realizada À PARTIR esta data.

emDataFinal

Number

Timestamp da data de emissão final. Caso não seja informada a data de emissão INICIAL, a consulta será realizada ATÉ desta data.

emData

String

String da data de emissão específica no padrão ISO 8601 (yyyy-MM-dd). Inutiliza o uso da data de emissão inicial e final.

recDataFinal

Number

Timestamp da data inicial de recebimento na Sefaz. Caso não seja informada a data de recebimento FINAL, a consulta será realizada ATÉ esta data.

recDataInicial

Number

Timestamp da data final de recebimento na Sefaz. Caso não seja informada a data de recebimento INICIAL, a consulta será realizada À PARTIR esta data.

emiCidade

String

Nome da cidade onde a NFe foi emitida.

emiUF

String

Sigla UF do estado onde a NFe foi emitida.

destUF

String

Sigla UF do estado onde a NFe esta destinada.

pageSize

Number

Quantidade de elementos por página.

nextProtocol

Number

Protocolo para busca paginada.

tpAmb

Number

Tipo de Ambiente (1 = Produção, 2 = Homologação). O padrão é 1.

tpEmis

Number

Tipo de Emissão (1 = Normal, 4=DPEC)

vTotalNF

String

Valor total da NFe (String).Pode ser um intervalo, neste caso deve ser separado por ';'. Ex: '234.56;89000.89'

allCnpj

Boolean

Se TRUE deve retornar dados de Todos os CNPJS. Obs: Utilizado APENAS para as consultas de produtos.

6.2. Recursos

Estes recursos retornam dados apenas para os CNPJs permitidos para a aplicação que está o consumindo, ou seja:

  1. Caso seja passado algum CNPJ não permitido como parâmetro, a aplicação fará o relacionamento deste aos permitidos.

  2. Caso não seja passado qualquer CNPJ, a consulta será feita com base apenas nos CNPJs permitidos.

6.2.1. Requisitar Documento de NFe

POST /nfe

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista de Documentos de NFe.

Exemplo de Requisição HTTP
POST /v1/app/nfe HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br
Content-Length: 741

{
  "page" : 0,
  "pageSize" : 10,
  "nextProtocol" : 412414,
  "serie" : "1",
  "emiCidade" : "cidade",
  "emiUF" : "FG",
  "destUF" : "XX",
  "chave" : "4124124124124124124124124",
  "tpAmb" : 1,
  "tpEmis" : 89,
  "emiCnpj" : [ "18967487678445" ],
  "destCnpj" : [ "41214124141414" ],
  "transpCnpj" : [ "98966778982390" ],
  "emiDoc" : [ "82185202000110" ],
  "destDoc" : [ "82185202000110" ],
  "transpDoc" : [ "82185202000110" ],
  "modelo" : [ "55" ],
  "ean" : [ "41241414124" ],
  "numero" : "66573",
  "vTotalNF" : "78",
  "recDataInicial" : 4124124124124,
  "recDataFinal" : 4124124124124,
  "emDataInicial" : 241412412414,
  "emDataFinal" : 412414124124124,
  "emData" : "2014-06-09",
  "allCnpj" : false,
  "cancelados" : true
}
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/nfe' -i -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U' -d '{
  "page" : 0,
  "pageSize" : 10,
  "nextProtocol" : 412414,
  "serie" : "1",
  "emiCidade" : "cidade",
  "emiUF" : "FG",
  "destUF" : "XX",
  "chave" : "4124124124124124124124124",
  "tpAmb" : 1,
  "tpEmis" : 89,
  "emiCnpj" : [ "18967487678445" ],
  "destCnpj" : [ "41214124141414" ],
  "transpCnpj" : [ "98966778982390" ],
  "emiDoc" : [ "82185202000110" ],
  "destDoc" : [ "82185202000110" ],
  "transpDoc" : [ "82185202000110" ],
  "modelo" : [ "55" ],
  "ean" : [ "41241414124" ],
  "numero" : "66573",
  "vTotalNF" : "78",
  "recDataInicial" : 4124124124124,
  "recDataFinal" : 4124124124124,
  "emDataInicial" : 241412412414,
  "emDataFinal" : 412414124124124,
  "emData" : "2014-06-09",
  "allCnpj" : false,
  "cancelados" : true
}'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 13717

{
  "data" : [ {
    "id" : "50160415459431001089550010000665731583369649",
    "nfeProc" : {
      "xmlns" : "http://www.portalfiscal.inf.br/nfe",
      "protNFe" : {
        "versao" : 3.1,
        "infProt" : {
          "nProt" : 150160008822214,
          "digVal" : "/2J+AgKAHWhV80SYALYqsq2BAp4=",
          "verAplic" : "MS201503300900",
          "dhRecbto" : "2016-04-07T14:36:10-04:00",
          "chNFe" : "50160415459431001089550010000665731583369649",
          "xMotivo" : "Autorizado o uso da NF-e",
          "tpAmb" : 1,
          "cStat" : 100
        }
      },
      "xmlns:ns2" : "http://www.w3.org/2000/09/xmldsig#",
      "NFe" : {
        "xmlns" : "http://www.portalfiscal.inf.br/nfe",
        "infNFe" : {
          "infAdic" : {
            "obsCont" : [ {
              "xCampo" : "CODFIL",
              "xTexto" : 8
            }, {
              "xCampo" : "TPNOTA",
              "xTexto" : 55
            } ],
            "infCpl" : "NUM. PEDIDO: 8640283 / CODCLI: 1 / OBSFISCAL:  / OBSNOTA: ACERTO DE ESTOQUE REFERENTE A NF: 113536 SOLICITADA POR WESLEY E AUTORIZADA POR RODRIGO.  / LOTE: 0 / CODVENDR: 0 / FIL.OBS:  / OBS IMP: DECRETO 14.359/15 DECRETO 10 .100/00 ML 38% / OBS IMP: DECRETO 14.359/15 DECRETO 10.100/00 ML 38%"
          },
          "det" : [ {
            "nItem" : 1,
            "prod" : {
              "cEAN" : 7898911343049,
              "cProd" : 733618,
              "qCom" : 4.0,
              "cEANTrib" : 7898911343049,
              "vUnTrib" : 103.77,
              "qTrib" : 4.0,
              "vProd" : 415.08,
              "xProd" : "CAIXA D''AGUA POLIETILENO 500L FORTLEV  . .",
              "vUnCom" : 103.77,
              "indTot" : 1,
              "uTrib" : "PC01PC",
              "NCM" : 39251000,
              "uCom" : "PC01PC",
              "CFOP" : 5409,
              "CEST" : "0000000"
            },
            "imposto" : {
              "vTotTrib" : "0.00",
              "ICMS" : {
                "ICMS60" : {
                  "orig" : 0,
                  "CST" : 60,
                  "vBCSTRet" : "0.00",
                  "vICMSSTRet" : "0.00"
                }
              },
              "COFINS" : {
                "COFINSAliq" : {
                  "vCOFINS" : "0.00",
                  "CST" : "01",
                  "vBC" : "0.00",
                  "pCOFINS" : "0.00"
                }
              },
              "PIS" : {
                "PISAliq" : {
                  "vPIS" : "0.00",
                  "CST" : "01",
                  "vBC" : "0.00",
                  "pPIS" : "0.00"
                }
              }
            }
          }, {
            "nItem" : 2,
            "prod" : {
              "cEAN" : 7898527881133,
              "cProd" : 720359,
              "qCom" : 10.0,
              "cEANTrib" : 7898527881133,
              "vUnTrib" : "0.2800000000",
              "qTrib" : 10.0,
              "vProd" : 2.8,
              "xProd" : "LUVA SOLDA 32MM DIVERSOS  . .",
              "vUnCom" : "0.2800000000",
              "indTot" : 1,
              "uTrib" : "PC01PC",
              "NCM" : 39174090,
              "uCom" : "PC01PC",
              "CFOP" : 5409,
              "CEST" : "0000000"
            },
            "imposto" : {
              "vTotTrib" : "0.00",
              "ICMS" : {
                "ICMS60" : {
                  "orig" : 0,
                  "CST" : 60,
                  "vBCSTRet" : "0.00",
                  "vICMSSTRet" : "0.00"
                }
              },
              "COFINS" : {
                "COFINSAliq" : {
                  "vCOFINS" : "0.00",
                  "CST" : "01",
                  "vBC" : "0.00",
                  "pCOFINS" : "0.00"
                }
              },
              "PIS" : {
                "PISAliq" : {
                  "vPIS" : "0.00",
                  "CST" : "01",
                  "vBC" : "0.00",
                  "pPIS" : "0.00"
                }
              }
            }
          } ],
          "total" : {
            "ICMSTot" : {
              "vICMSUFDest" : "0.00",
              "vICMSUFRemet" : "0.00",
              "vCOFINS" : "0.00",
              "vBCST" : "0.00",
              "vICMSDeson" : "0.00",
              "vFCPUFDest" : "0.00",
              "vProd" : 417.88,
              "vSeg" : "0.00",
              "vNF" : 417.88,
              "vTotTrib" : "0.00",
              "vPIS" : "0.00",
              "vBC" : "0.00",
              "vST" : "0.00",
              "vICMS" : "0.00",
              "vII" : "0.00",
              "vDesc" : "0.00",
              "vOutro" : "0.00",
              "vIPI" : "0.00",
              "vFrete" : "0.00"
            }
          },
          "Id" : "NFe50160415459431001089550010000665731583369649",
          "ide" : {
            "tpNF" : 1,
            "mod" : 55,
            "indPres" : 1,
            "tpImp" : 1,
            "nNF" : 66573,
            "cMunFG" : 5006309,
            "procEmi" : 0,
            "finNFe" : 1,
            "dhEmi" : "2016-04-07T14:48:19-03:00",
            "tpAmb" : 1,
            "indFinal" : 0,
            "dhSaiEnt" : "2016-04-07T14:48:19-03:00",
            "idDest" : 1,
            "tpEmis" : 1,
            "cDV" : 1,
            "cUF" : 50,
            "serie" : 1,
            "natOp" : "TRANSFERENCIA REMETIDA P/ FILIAL",
            "cNF" : 58336964,
            "verProc" : "BEMATECH 4.2.034",
            "indPag" : 2
          },
          "emit" : {
            "xNome" : "COMERCIAL LTDA",
            "CRT" : 3,
            "xFant" : "SERTAO - PAR",
            "CNPJ" : "87569208678009",
            "enderEmit" : {
              "fone" : 6799999999,
              "UF" : "MS",
              "xPais" : "BRASIL",
              "cPais" : 1058,
              "xLgr" : "AVENIDA 10989",
              "xMun" : "PARANAIBA",
              "nro" : 2627,
              "cMun" : 5006309,
              "xBairro" : "CENTRO",
              "CEP" : 89909989
            },
            "IE" : 283285800
          },
          "dest" : {
            "xNome" : "EQUIPAMENTOS DOMESTICOS LTDA",
            "CNPJ" : "87908738290789",
            "enderDest" : {
              "fone" : 6799999999,
              "UF" : "MS",
              "xPais" : "BRASIL",
              "cPais" : 1058,
              "xLgr" : "R  TREZE DE MAIO",
              "xMun" : "C. GRANDE",
              "nro" : 557,
              "cMun" : 5002704,
              "xBairro" : "SANTA MARIA",
              "CEP" : 67789909
            },
            "IE" : 281079692,
            "indIEDest" : 1,
            "email" : "EMAIL@EMAIL.COM.BR;"
          },
          "versao" : 3.1,
          "transp" : {
            "modFrete" : 0,
            "vol" : {
              "pesoL" : 42.1,
              "esp" : "VOLUMES",
              "qVol" : 14,
              "pesoB" : 42.1
            }
          }
        }
      },
      "versao" : 3.1
    },
    "dhEmi" : 1460051299000,
    "dhReg" : 1460051299000,
    "docEmit" : "87569208678009",
    "docDest" : "87908738290789",
    "envolvidos" : [ "87569208678009", "87908738290789", null ],
    "emails" : [ "EMAIL@EMAIL.COM.BR" ]
  }, {
    "id" : "53170603573324000964550060000020001733208449",
    "nfeProc" : {
      "xmlns" : "http://www.portalfiscal.inf.br/nfe",
      "protNFe" : {
        "versao" : 3.1,
        "infProt" : {
          "nProt" : 353170021471578,
          "digVal" : "h1rRQm79lja0lbl1Cr7+51bJE3A=",
          "verAplic" : "SVRS201705291104",
          "dhRecbto" : "2017-06-19T09:40:37-03:00",
          "chNFe" : "53170603573324000964550060000020001733208449",
          "Id" : "ID353170021471578",
          "xMotivo" : "Autorizado o uso da NF-e",
          "tpAmb" : 1,
          "cStat" : 100
        }
      },
      "NFe" : {
        "infNFe" : {
          "infAdic" : {
            "infCpl" : "MOTORISTA - JEAN - ICMS DE FRETE SERA DE RESPONSABILIDADE DO EMITENTE CONF. ART. 264 INC. IV DO DECRETO 4.852/97 - B/C 983,56 x 12% = 118,03 MERC. SERA RET. INT CLEBER AIRTON MELO M - CPF 272.282.240 - 53 IE: 11.197.584 - 0 END.: ROD. BR 060 KM 09 ENTRADA A ESQUERDA SANTO ANTONIO - GO - VACINADOS CONTRA GUMBORO/MAREK EM 29/04/2017 VENDA EFETUADA COM SUSPENSAO DA CONTRIBUICAO PARA O PIS/PASEP E DA COFINS CONF. ART 2o, INC III DA IN RFB 1.157/2011, P/ NCM 01.03 E 01.05."
          },
          "compra" : {
            "xPed" : "AV36646"
          },
          "det" : [ {
            "nItem" : 1,
            "prod" : {
              "cEAN" : "",
              "cProd" : 25022,
              "qCom" : 9945,
              "cEANTrib" : "",
              "vUnTrib" : 2.5,
              "qTrib" : 9945,
              "vProd" : 24862.5,
              "xProd" : "FRANGO VIVO",
              "vUnCom" : 2.5,
              "indTot" : 1,
              "uTrib" : "KG",
              "NCM" : "01059900",
              "uCom" : "KG",
              "CFOP" : 6101
            },
            "imposto" : {
              "ICMS" : {
                "ICMS00" : {
                  "modBC" : 3,
                  "orig" : 0,
                  "CST" : "00",
                  "vBC" : 24862.5,
                  "vICMS" : 2983.5,
                  "pICMS" : 12
                }
              },
              "IPI" : {
                "IPINT" : {
                  "CST" : 53
                },
                "cEnq" : 999
              },
              "COFINS" : {
                "COFINSNT" : {
                  "CST" : "09"
                }
              },
              "PIS" : {
                "PISNT" : {
                  "CST" : "09"
                }
              }
            }
          } ],
          "total" : {
            "ICMSTot" : {
              "vCOFINS" : "0.00",
              "vBCST" : "0.00",
              "vICMSDeson" : "0.00",
              "vProd" : 24862.5,
              "vSeg" : "0.00",
              "vNF" : 24862.5,
              "vPIS" : "0.00",
              "vBC" : 24862.5,
              "vST" : "0.00",
              "vICMS" : 2983.5,
              "vII" : "0.00",
              "vDesc" : "0.00",
              "vOutro" : "0.00",
              "vIPI" : "0.00",
              "vFrete" : "0.00"
            }
          },
          "cobr" : {
            "dup" : {
              "dVenc" : "2017-07-17",
              "nDup" : "0002000/01",
              "vDup" : 24862.5
            }
          },
          "Id" : "NFe53170603573324000964550060000020001733208449",
          "ide" : {
            "tpNF" : 1,
            "mod" : 55,
            "indPres" : 9,
            "tpImp" : 1,
            "nNF" : 2000,
            "cMunFG" : 5300108,
            "procEmi" : 0,
            "finNFe" : 1,
            "dhEmi" : "2017-06-19T09:40:33-03:00",
            "tpAmb" : 1,
            "indFinal" : 0,
            "dhSaiEnt" : "2017-06-19T09:45:35-03:00",
            "idDest" : 2,
            "tpEmis" : 1,
            "cDV" : 9,
            "cUF" : 53,
            "serie" : 6,
            "natOp" : "VENDA PRODUCAO ESTABELECIMENTO",
            "cNF" : 73320844,
            "verProc" : "Oobj-DFe",
            "indPag" : 1
          },
          "emit" : {
            "xNome" : "BONASA ALIMENTOS S/A - ESTAB 517 - 03",
            "CRT" : 3,
            "xFant" : "BONASA 517",
            "CNPJ" : "03573324000964",
            "enderEmit" : {
              "xCpl" : "01",
              "fone" : "6121063733",
              "UF" : "DF",
              "xPais" : "BRASIL",
              "cPais" : 1058,
              "xLgr" : "QUADRA 800",
              "xMun" : "BRASILIA",
              "nro" : "LOTE",
              "cMun" : 5300108,
              "xBairro" : "REC. DAS EMAS",
              "CEP" : "72600970"
            },
            "IE" : "0767820200463"
          },
          "dest" : {
            "xNome" : "AVICOLA BARREIRA LTDA",
            "CNPJ" : "34122432000197",
            "enderDest" : {
              "xCpl" : "1171 DO PISD",
              "fone" : "7736119650",
              "UF" : "BA",
              "xPais" : "BRASIL",
              "cPais" : 1058,
              "xLgr" : "LOTEAMENTO",
              "xMun" : "BARREIRAS",
              "nro" : "LOTE",
              "cMun" : 2903201,
              "xBairro" : "BARREIRAS SUL",
              "CEP" : "47805060"
            },
            "IE" : 28839343,
            "indIEDest" : 1
          },
          "versao" : 3.1,
          "transp" : {
            "modFrete" : 1,
            "vol" : {
              "marca" : "BONASA ALIMENTOS",
              "pesoL" : 9945,
              "esp" : "CAIXA FRANGO VIVO",
              "qVol" : 478,
              "pesoB" : 12669.6
            },
            "transporta" : {
              "xNome" : "OSMAIL CALDERARO DE OLIVEIRA",
              "UF" : "TO",
              "xEnder" : "RUA WALDIR LINS N 289",
              "xMun" : "PARAISO DO TOCANTINS",
              "CNPJ" : "07638624000188",
              "IE" : 293893128
            },
            "veicTransp" : {
              "UF" : "BA",
              "placa" : "MWR0794"
            }
          }
        }
      },
      "versao" : 3.1
    },
    "enrichment" : {
      "codtipologia" : "31",
      "codvendedor" : "799",
      "nomevendedor" : "THIAGO DE REZENDE SILVA",
      "nometipologia" : "FRANGO VIVO",
      "codsupervisor" : "0"
    },
    "dhEmi" : 1497876033000,
    "dhReg" : 1497876039000,
    "docEmit" : "03573324000964",
    "docDest" : "34122432000197",
    "docTransp" : "07638624000188",
    "envolvidos" : [ "03573324000964", "34122432000197", "07638624000188" ]
  } ],
  "pagination" : {
    "pageSize" : 5,
    "pageTotalElements" : 2,
    "lastPage" : true,
    "nextProtocol" : 22926123
  }
}
Exemplo de Resposta HTTP Nfes não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 133

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum documento encontrado."
    } ]
  }
}

6.2.2. Requisitar Documentos de Produtos da NFe

POST /nfe/produto

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista de documentos de produtos extraídos das NFe, exatamente como aparecem nas mesmas.

  • Caso o campo allCnpj seja utilizado, serão consultados dados de todos os CNPJs cadastrados.

Exemplo de Requisição HTTP
POST /v1/app/nfe/produto HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br
Content-Length: 189

{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "tpAmb" : 1,
  "destCnpj" : [ "12789837648907" ],
  "destDoc" : [ "12789837648907" ],
  "allCnpj" : false,
  "cancelados" : false
}
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/nfe/produto' -i -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U' -d '{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "tpAmb" : 1,
  "destCnpj" : [ "12789837648907" ],
  "destDoc" : [ "12789837648907" ],
  "allCnpj" : false,
  "cancelados" : false
}'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 2747

{
  "data" : [ {
    "id" : "35160409311281000500550010001545481288754225",
    "nfeProc" : {
      "NFe" : {
        "infNFe" : {
          "det" : {
            "prod" : {
              "cEAN" : "",
              "cProd" : "04367",
              "qCom" : 20.0,
              "cEANTrib" : "",
              "vUnTrib" : 32.4,
              "qTrib" : 20.0,
              "vProd" : 648.0,
              "xProd" : "MUPY LONGA VIDA MACA 200 Ml UN",
              "vUnCom" : 32.4,
              "indTot" : 1,
              "uTrib" : "CX",
              "NCM" : 22029000,
              "uCom" : "CX",
              "CFOP" : 5405,
              "CEST" : "0301000"
            }
          },
          "emit" : {
            "enderEmit" : {
              "UF" : "SP",
              "xMun" : "Aracariguama",
              "CEP" : 18147000
            }
          }
        }
      }
    }
  }, {
    "id" : "35160409311281000500550010001545481288754225",
    "nfeProc" : {
      "NFe" : {
        "infNFe" : {
          "det" : {
            "prod" : {
              "cEAN" : "",
              "cProd" : "04601",
              "qCom" : 20.0,
              "cEANTrib" : "",
              "vUnTrib" : 32.4,
              "qTrib" : 20.0,
              "vProd" : 648.0,
              "xProd" : "MUPY LONGA VIDA MORANGO 200Ml",
              "vUnCom" : 32.4,
              "indTot" : 1,
              "uTrib" : "CX",
              "NCM" : 22029000,
              "uCom" : "CX",
              "CFOP" : 5405,
              "CEST" : "0301000"
            }
          },
          "emit" : {
            "enderEmit" : {
              "UF" : "SP",
              "xMun" : "Aracariguama",
              "CEP" : 18147000
            }
          }
        }
      }
    }
  }, {
    "id" : "35160409311281000500550010001545481288754225",
    "nfeProc" : {
      "NFe" : {
        "infNFe" : {
          "det" : {
            "prod" : {
              "cEAN" : "",
              "cProd" : "04455",
              "qCom" : 20.0,
              "cEANTrib" : "",
              "vUnTrib" : 32.4,
              "qTrib" : 20.0,
              "vProd" : 648.0,
              "xProd" : "MUPY LONGA VIDA UVA 200 Ml",
              "vUnCom" : 32.4,
              "indTot" : 1,
              "uTrib" : "CX",
              "NCM" : 22029000,
              "uCom" : "CX",
              "CFOP" : 5405,
              "CEST" : "0301000"
            }
          },
          "emit" : {
            "enderEmit" : {
              "UF" : "SP",
              "xMun" : "Aracariguama",
              "CEP" : 18147000
            }
          }
        }
      }
    }
  } ],
  "pagination" : {
    "pageSize" : 5,
    "pageTotalElements" : 3,
    "lastPage" : true,
    "nextProtocol" : 2983925
  }
}
Exemplo de Resposta HTTP Produtos não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 133

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum documento encontrado."
    } ]
  }
}

6.2.3. Requisitar Produtos de NFe Sumarizados

POST /nfe/produto/sumarizacao
  • Este recurso retorna uma lista de produtos com os seguintes dados sumarizados:

    • Valor Médio.

    • Valor Total.

    • Valor Unitário.

    • Quantidade de produtos vendidos.

  • Caso o campo allCnpj seja utilizado, serão consultados dados de todos os CNPJs cadastrados.

  • O campo CEAN é obrigatório.

Exemplo de Requisição HTTP
POST /v1/app/nfe/produto/sumarizacao HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br
Content-Length: 146

{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "tpAmb" : 1,
  "ean" : [ "7896293804103" ],
  "allCnpj" : true,
  "cancelados" : false
}
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/nfe/produto/sumarizacao' -i -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U' -d '{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "tpAmb" : 1,
  "ean" : [ "7896293804103" ],
  "allCnpj" : true,
  "cancelados" : false
}'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 168

{
  "data" : [ {
    "nome" : "TIKUWA KAI HO 200G",
    "cean" : "7896293804103",
    "qTotal" : 1752,
    "vTotal" : 8518.9,
    "vUnMedio" : 9.357169607844117
  } ]
}
Exemplo de Resposta HTTP faltando campo CEAN 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 136

{
  "meta" : {
    "errors" : [ {
      "error" : "InvalidParamsException",
      "message" : "Campo EAN é obrigatório."
    } ]
  }
}
Exemplo de Resposta HTTP Produtos não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 133

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum documento encontrado."
    } ]
  }
}

6.2.4. Requisitar Evento relacionado a NFe

POST /nfe/evento

Esse recurso utiliza paginação estática.

  • Este recurso pode ser utlizado de duas formas:

    • Passando os campos modelo,numero,serie e emiCnpj da NFe corretamente preenchidos na requisição.

    • Passando o campo chave da NFe corretamente preenchido na requisição.

Exemplo de Requisição HTTP
POST /v1/app/nfe/evento HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br
Content-Length: 249

{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "serie" : "1",
  "tpAmb" : 1,
  "emiCnpj" : [ "13489284679099" ],
  "emiDoc" : [ "13489284679099" ],
  "modelo" : [ "55" ],
  "numero" : "66573",
  "allCnpj" : false,
  "cancelados" : false
}
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/nfe/evento' -i -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U' -d '{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "serie" : "1",
  "tpAmb" : 1,
  "emiCnpj" : [ "13489284679099" ],
  "emiDoc" : [ "13489284679099" ],
  "modelo" : [ "55" ],
  "numero" : "66573",
  "allCnpj" : false,
  "cancelados" : false
}'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1440

{
  "data" : [ {
    "id" : "ID1101115016041545943100108955001000066573158336964901",
    "procEventoNFe" : {
      "xmlns" : "http://www.portalfiscal.inf.br/nfe",
      "evento" : {
        "xmlns" : "http://www.portalfiscal.inf.br/nfe",
        "infEvento" : {
          "cOrgao" : 50,
          "dhEvento" : "2016-04-07T16:06:56-03:00",
          "nSeqEvento" : 1,
          "detEvento" : {
            "nProt" : 150160008822214,
            "descEvento" : "Cancelamento",
            "xJust" : "Cancelamento de Nota Fiscal Eletronica",
            "versao" : 1.0
          },
          "CNPJ" : "87569208678009",
          "Id" : "ID1101115016041545943100108955001000066573158336964901",
          "chNFe" : "50160415459431001089550010000665731583369649",
          "tpAmb" : 1,
          "verEvento" : 1.0,
          "tpEvento" : 110111
        },
        "versao" : 1.0
      },
      "retEvento" : {
        "infEvento" : {
          "cOrgao" : 50,
          "nProt" : 150160008828093,
          "nSeqEvento" : 1,
          "verAplic" : "MS201503300900",
          "xEvento" : "Cancelamento",
          "dhRegEvento" : "2016-04-07T15:06:58-04:00",
          "xMotivo" : "Evento registrado e vinculado a NF-e",
          "chNFe" : "50160415459431001089550010000665731583369649",
          "tpAmb" : 1,
          "cStat" : 135,
          "tpEvento" : 110111
        },
        "versao" : 1.0
      },
      "versao" : 1.0
    }
  } ]
}
Exemplo de Resposta HTTP NFe não encontrada para os dados passados 400 Bad Request
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 133

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum documento encontrado."
    } ]
  }
}
Exemplo de Resposta HTTP Dados da NFe insuficientes para consultar 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 159

{
  "meta" : {
    "errors" : [ {
      "error" : "InvalidParamsException",
      "message" : "Dados da NFe insuficientes para consultar Evento."
    } ]
  }
}
Exemplo de Resposta HTTP Evento não encontrado 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 133

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum documento encontrado."
    } ]
  }
}

6.2.5. Requisitar Arquivo XML da NFe

GET /nfe/{accessKey}

Esse recurso não oferece paginação.

  • Este recurso retorna o arquivo XML da NFe para download.

Exemplo de Requisição HTTP

Unresolved directive in nfe-service.adoc - include::/slave/workspace/oobj-nuvei-rest-api-FIX/target/generated-snippets/nfe/xml-chave-acesso/http-request.adoc[]

Exemplo de Comando Curl para Requisitar

Unresolved directive in nfe-service.adoc - include::/slave/workspace/oobj-nuvei-rest-api-FIX/target/generated-snippets/nfe/xml-chave-acesso/curl-request.adoc[]

Exemplo de Resposta HTTP 200 OK

Unresolved directive in nfe-service.adoc - include::/slave/workspace/oobj-nuvei-rest-api-FIX/target/generated-snippets/nfe/xml-chave-acesso/http-response.adoc[]

Exemplo de Resposta HTTP Arquivo XML não encontrado 404 Not Found
HTTP/1.1 404 Not Found
Content-Disposition: attachment; filename=32451004784759039489506358826048062740998636.xml
Content-Type: application/xml
Content-Length: 132

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Arquivo XML nao encontrado."
    } ]
  }
}

6.2.6. Requisitar quantidade de NFes emitidas por período

GET /nfe/stats/emissao

Esse recurso não oferece paginação.

  • Este recurso retorna a quantidade de NFes emitidas para o período.

Exemplo de Requisição HTTP
POST /v1/app/nfe/stats/emissao HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br
Content-Length: 268

{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "tpAmb" : 1,
  "emiDoc" : [ "09553244000176", "09311281000500", "01098983022697", "15459431001089", "87569208678009", "12345678901236" ],
  "emData" : "2016-04-07",
  "allCnpj" : false,
  "cancelados" : false
}
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/nfe/stats/emissao' -i -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U' -d '{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "tpAmb" : 1,
  "emiDoc" : [ "09553244000176", "09311281000500", "01098983022697", "15459431001089", "87569208678009", "12345678901236" ],
  "emData" : "2016-04-07",
  "allCnpj" : false,
  "cancelados" : false
}'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 209

{
  "data" : {
    "emitentes" : [ "09553244000176", "09311281000500", "01098983022697", "15459431001089", "87569208678009", "12345678901236" ],
    "emData" : "2016-04-07",
    "totalNfesEmitidas" : 239
  }
}

7. Nota Fiscal Do Consumidor Eletrônica (NFC-e)

Os recursos aqui descritos fazem uso dos mesmos campos para requisição.

7.1. Campos para Requisição

Path Type Description

chNFe

String

Chave de Acesso da NFe.

numero

String

Numero da NFe(String). Pode ser um intervalo, neste caso deve ser separado por ';'. Ex: 1;9999999

serie

String

Serie da NFe.

emiDoc

Array

Array de String para CNPJ/CPF de emitentes.

destCnpj

Array

(DEPRECATED) Array de String para CNPJ de destinatários.

destDoc

Array

Array de String para CNPJ/CPF de destinatários.

cancelados

Boolean

Se TRUE retorna dados APENAS de NFe canceladas. Se FALSE retorna dados APENAS de NFe NÃO canceladas. Se VAZIO retorna dados de NFe independente do status de cancelamento.

ean

Array

Código EAN do produto. Obs: obrigatório para consultar produtos.

emDataInicial

Number

Timestamp da data de emissão inicial em milisegundos. Caso não seja informada a data de emissão FINAL, a consulta será realizada À PARTIR esta data.

emDataFinal

Number

Timestamp da data de emissão final em milisegundos. Caso não seja informada a data de emissão INICIAL, a consulta será realizada ATÉ desta data.

recDataFinal

Number

Timestamp da data inicial de recebimento na Sefaz em milisegundos. Caso não seja informada a data de recebimento FINAL, a consulta será realizada ATÉ esta data.

recDataInicial

Number

Timestamp da data final de recebimento na Sefaz em milisegundos. Caso não seja informada a data de recebimento INICIAL, a consulta será realizada À PARTIR esta data.

emiCidade

String

Nome da cidade onde a NFe foi emitida.

emiUF

String

Sigla UF do estado onde a NFe foi emitida.

destUF

String

Sigla UF do estado onde a NFe esta destinada.

pageSize

Number

Quantidade de elementos por página.

nextProtocol

Number

Protocolo para busca paginada.

tpEmis

Number

Tipo de Emissão (1 = Normal, 4=DPEC)

vNF

String

Valor total da NFe (String).Pode ser um intervalo, neste caso deve ser separado por ';'. Ex: '234.56;89000.89'

Caso campos não pertencentes aos filtros aqui citados sejam informados, a API ignorará o campo passado.

7.2. Recursos

Estes recursos retornam dados apenas para os CNPJs permitidos para a aplicação que está o consumindo, ou seja:

  1. Caso seja passado algum CNPJ não permitido como parâmetro, a aplicação fará o relacionamento deste aos permitidos.

  2. Caso não seja passado qualquer CNPJ, a consulta será feita com base apenas nos CNPJs permitidos.

7.2.1. Requisitar Documento de NFCe

POST /nfce

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista de Documentos de NFCe.

Exemplo de Requisição HTTP
POST /v1/app/nfce HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0OTUsImV4cCI6MTU3Mzc1NTI5NX0.u60qdmvHXOgT9Edz-hFGE1EvoOpEQcRq6CdEceQv09w
Host: rest.noov.com.br
Content-Length: 537

{
  "page" : 0,
  "pageSize" : 10,
  "nextProtocol" : 412414,
  "serie" : "1",
  "emiCidade" : "cidade",
  "emiUF" : "FG",
  "destUF" : "XX",
  "chNFe" : "4124124124124124124124124",
  "tpEmis" : 89,
  "destCnpj" : [ "41214124141414" ],
  "emiDoc" : [ "82185202000110" ],
  "destDoc" : [ "82185202000110" ],
  "ean" : [ "41241414124" ],
  "numero" : "66573",
  "vNF" : "78",
  "recDataInicial" : 4124124124124,
  "recDataFinal" : 4124124124124,
  "emDataInicial" : 241412412414,
  "emDataFinal" : 412414124124124,
  "cancelados" : true
}
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/nfce' -i -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0OTUsImV4cCI6MTU3Mzc1NTI5NX0.u60qdmvHXOgT9Edz-hFGE1EvoOpEQcRq6CdEceQv09w' -d '{
  "page" : 0,
  "pageSize" : 10,
  "nextProtocol" : 412414,
  "serie" : "1",
  "emiCidade" : "cidade",
  "emiUF" : "FG",
  "destUF" : "XX",
  "chNFe" : "4124124124124124124124124",
  "tpEmis" : 89,
  "destCnpj" : [ "41214124141414" ],
  "emiDoc" : [ "82185202000110" ],
  "destDoc" : [ "82185202000110" ],
  "ean" : [ "41241414124" ],
  "numero" : "66573",
  "vNF" : "78",
  "recDataInicial" : 4124124124124,
  "recDataFinal" : 4124124124124,
  "emDataInicial" : 241412412414,
  "emDataFinal" : 412414124124124,
  "cancelados" : true
}'
Exemplo de Resposta HTTP Nfes não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 133

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum documento encontrado."
    } ]
  }
}

8. Cupom Fiscal Eletrônico (CF-e)

Os recursos aqui descritos fazem uso dos mesmos campos para requisição.

8.1. Campos para Requisição

Path Type Description

id

String

Chave de Acesso da CFe.

emiDoc

Array

Array de String para CNPJ/CPF de emitentes.

emiCidade

String

Nome da cidade onde a CFe foi emitida.

dataEmissao

Array

Data de emissão da NFCe do tipo timestamp em milisegundos. Deve-se passar o range de data por meio de um array.Ex: ["12345","123456"]

vNF

String

Valor total da CFe (Double).Pode ser um intervalo, neste caso deve ser separado por ';'. Ex: '234.56;89000.89'

pageSize

Number

Quantidade de elementos por página.

nextProtocol

Number

Protocolo para busca paginada.

Caso campos não pertencentes aos filtros aqui citados sejam informados, a API ignorará o campo passado.

8.2. Recursos

Estes recursos retornam dados apenas para os CNPJs permitidos para a aplicação que está o consumindo, ou seja:

  1. Caso seja passado algum CNPJ não permitido como parâmetro, a aplicação fará o relacionamento deste aos permitidos.

  2. Caso não seja passado qualquer CNPJ, a consulta será feita com base apenas nos CNPJs permitidos.

8.2.1. Requisitar Documento de CFe

POST /cfe

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista de Documentos de CFe.

Exemplo de Requisição HTTP
POST /v1/app/cfe HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0OTUsImV4cCI6MTU3Mzc1NTI5NX0.u60qdmvHXOgT9Edz-hFGE1EvoOpEQcRq6CdEceQv09w
Host: rest.noov.com.br
Content-Length: 231

{
  "page" : 0,
  "pageSize" : 10,
  "nextProtocol" : 412414,
  "emiCidade" : "cidade",
  "id" : "4124124124124124124124124",
  "emiDoc" : [ "09553244000176" ],
  "vNF" : "78.0",
  "dataEmissao" : [ 1460266485000, 1485993600000 ]
}
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/cfe' -i -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0OTUsImV4cCI6MTU3Mzc1NTI5NX0.u60qdmvHXOgT9Edz-hFGE1EvoOpEQcRq6CdEceQv09w' -d '{
  "page" : 0,
  "pageSize" : 10,
  "nextProtocol" : 412414,
  "emiCidade" : "cidade",
  "id" : "4124124124124124124124124",
  "emiDoc" : [ "09553244000176" ],
  "vNF" : "78.0",
  "dataEmissao" : [ 1460266485000, 1485993600000 ]
}'
Exemplo de Resposta HTTP Nfes não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 133

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum documento encontrado."
    } ]
  }
}

9. Totalizações de Nota Fiscal Eletrônica (NF-e)

O recurso aqui descrito faz uso dos seguintes campos para requisição.

9.1. Campos para Requisição

Parameter Description

chave

(String) Chave de Acesso da NFe.

emits

(Obrigatório) (Array de Strings) Valor de CPF/CNPJ de emitente da NFe.

cfops

(Array de Numéricos) Valor de CFOP dos produtos da NFe.

dia

(Obrigatório) (String) Dia da emissão da NFe.

vendedor

(Numérico) Código de vendedor vínculado à NFe.

cancelados

(Booleano) Flag que permite ou não retornar totalizações de documentos cancelados. (Padrão: false)

9.2. Recursos

As seguintes regras se aplicam a este recurso:

  1. O NOOV não retornará dados de empresas que o aplicativo não tenha acesso às NFes e/ou permissão para acessar específicamente o Valor Total de suas NFes.

  2. Caso seja passada a chave da NFe, a consulta será feita com base apenas na chave.

  3. Caso a chave da NFe não seja passada, os campos dia e emits se tornam OBRIGATÓRIOS.

9.2.1. Requisitar Totalização

GET /nfe/totalizer

Esse recurso não utiliza paginação.

  • Este recurso retorna uma lista contendo o Valor Total da NFe por vendedor, CFOPs e dia.

Exemplo de Requisição HTTP
GET /v1/app/nfe/totalizer?emits=12345678901236&dia=2017-01-11&vendedor=12345&chave=12341678907878901236550010003385601736707620&cfops=1234&cancelados=false HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/nfe/totalizer?emits=12345678901236&dia=2017-01-11&vendedor=12345&chave=12341678907878901236550010003385601736707620&cfops=1234&cancelados=false' -i -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 252

{
  "data" : [ {
    "dia" : "2016-04-07",
    "emitente" : "12345678901236",
    "chNF" : "17160412345678901236550010003385601736707620",
    "vendedor" : "4567",
    "valorNF" : 128.99,
    "cfops" : [ "6108.0", "6910.0" ],
    "tipoNF" : 0.0
  } ]
}
Exemplo de Resposta HTTP Nfes não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 146

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum registro encontrado para o filtro."
    } ]
  }
}
Exemplo de Resposta HTTP Parâmetros inválidos 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 200

{
  "meta" : {
    "errors" : [ {
      "error" : "InvalidParamsException",
      "message" : "Os parâmetros 'DIA' e 'EMITS' são obrigatórios caso a chave da NFe não seja informada."
    } ]
  }
}

10. Conhecimento de Transporte Eletrônico (CT-e)

O seguinte recurso será utilizado para requisições relacionadas a CTEs.

10.1. Campos para Requisição

Path Type Description

remCnpjBase

String

String do CNPJ base (8 caracteres) ou CNPJ completo (14 caracteres) apenas com numeros.

emDataInicial

Number

Timestamp da data de emissão inicial.

emDataFinal

Number

Timestamp da data de emissão final.

emData

Number

Timestamp da data de emissão.

recDataInicial

Number

Timestamp da data de recebimento inicial.

recDataFinal

Number

Timestamp da data de recebimento final.

recData

Number

Timestamp da data de recebimento.

destDoc

Array

Valor de CPF/CPNJ de destinatário.

remDoc

Array

Valor de CPF/CPNJ de remetente. Atenção: este campo não deve ser passado junto com o campo remCnpjBase.

emiDoc

Array

Valor de CPF/CPNJ de emitente.

expDoc

Array

Valor de CPF/CPNJ de expedidor.

nextProtocol

Number

Protocolo para busca paginada.

chave

String

Chave de acesso do CTe.

serie

String

Serie do CTe.

numero

String

Numero do CTe(String). Pode ser um intervalo, neste caso deve ser separado por ';'. Ex: 1;9999999

vTotal

String

Valor total do CTe (String).Pode ser um intervalo, neste caso deve ser separado por ';'. Ex: '234.56;89000.89'

tpEmis

Number

Tipo de Emissão (1 = Normal, 4=DPEC)

10.1.1. Requisitar valor total do frete.

POST /cte/totalFrete

Esse recurso não utiliza paginação.

  • Este recurso retorna uma lista de valores totais de frete.

Exemplo de Requisição HTTP
POST /v1/app/cte HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br
Content-Length: 568

{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 3123123,
  "emDataInicial" : 1573753496378,
  "emDataFinal" : 1573753496378,
  "recDataInicial" : 1573753496378,
  "recDataFinal" : 1573753496378,
  "emData" : 1573753496378,
  "recData" : 1573753496378,
  "tpEmis" : 1,
  "remCnpjBase" : "09311281",
  "emiDoc" : [ "35766962000130", "04480362746" ],
  "expDoc" : [ "35766962000130", "04480362746" ],
  "destDoc" : [ "35766962000130" ],
  "serie" : "4141124124",
  "chave" : "412741289479182749814",
  "numero" : "1412424;312323",
  "vTotal" : "4244.090;131231.90"
}
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/cte' -i -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U' -d '{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 3123123,
  "emDataInicial" : 1573753496378,
  "emDataFinal" : 1573753496378,
  "recDataInicial" : 1573753496378,
  "recDataFinal" : 1573753496378,
  "emData" : 1573753496378,
  "recData" : 1573753496378,
  "tpEmis" : 1,
  "remCnpjBase" : "09311281",
  "emiDoc" : [ "35766962000130", "04480362746" ],
  "expDoc" : [ "35766962000130", "04480362746" ],
  "destDoc" : [ "35766962000130" ],
  "serie" : "4141124124",
  "chave" : "412741289479182749814",
  "numero" : "1412424;312323",
  "vTotal" : "4244.090;131231.90"
}'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 133

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum documento encontrado."
    } ]
  }
}
Exemplo de Resposta HTTP CTEs não encontrados 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 126

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "CTEs nao encontrados."
    } ]
  }
}
Exemplo de Resposta HTTP CNPJ inválido 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 136

{
  "meta" : {
    "errors" : [ {
      "error" : "InvalidParamsException",
      "message" : "CNPJ informado e invalido."
    } ]
  }
}

11. Dados de Envolvidos

O seguinte recurso será utilizado para requisitar os envolvidos (clientes, fornecedores, destinatarios, trasnsportadores, tomadores, expeditores, remetentes) em relação à algum CNPJ cadastrado que a aplicação tenha acesso.

11.1. Campos para Requisição

Path Type Description

cnpj

String

Obrigatório. String contendo o CNPJ da empresa a ser consultada.

tipoEnvolvimento

Number

Obrigatório. Integer contendo o tipo de envolvimento pretendido.

ultimaData

Number

Timestamp da ultima data de envolvimento. Caso informada, será consultado a partir dela.

11.2. Tipos de Envolvimento

Código Nome

1

Fornecedores

2

Clientes

3

Transportadores

4

Remetentes

5

Expeditores

6

Tomadores

7

Destinatarios

11.3. Recurso

Estes recursos retornam dados como endereco, CNPJ ou CPF, nome e telefone dos envolvidos de acordo com o CNPJ passado como parametro e o tipo de envolvimento pretendido.

  1. Os campos cnpj e tipoEnvolvimento são obrigatórios.

  2. OBS: Para a consutla serão informados o cnpj e o tipoEnvolvimento e serão retornados todos os envolvidos no qual o cnpj informado teve este tipoEnvolvimento passado como parametro de consulta.

11.3.1. Requisitar dados de envolvidos

POST /envolvido

Esse recurso utiliza paginação estática.

  • Este recurso retorna uma lista de envolvidos.

Exemplo de Requisição HTTP
POST /v1/app/envolvido HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br
Content-Length: 143

{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "cnpj" : "12345678901236",
  "tipoEnvolvimento" : 1,
  "ultimaData" : 1465268460000
}
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/envolvido' -i -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U' -d '{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "cnpj" : "12345678901236",
  "tipoEnvolvimento" : 1,
  "ultimaData" : 1465268460000
}'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 523

{
  "data" : {
    "content" : [ {
      "xNome" : "MA DROGARIA PERF E SIMILARES LTDA EPP",
      "fone" : "6132721414",
      "endereco" : {
        "UF" : "DF",
        "xLgr" : "SHCNORTE CL QD110 BLC LJ14 TERREO,0,",
        "xMun" : "BRASILIA",
        "nro" : 0,
        "cMun" : 5300108,
        "xBairro" : "ASA NORTE",
        "CEP" : "70753530"
      }
    } ],
    "last" : true,
    "totalElements" : 1,
    "totalPages" : 1,
    "first" : true,
    "numberOfElements" : 1,
    "size" : 5,
    "number" : 0
  }
}
Exemplo de Resposta HTTP Envolvidos não encontrados 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 138

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nao foram encontrados envolvidos."
    } ]
  }
}
Exemplo de Resposta HTTP Falta o campo obrigatório CNPJ 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 133

{
  "meta" : {
    "errors" : [ {
      "error" : "Propriedade inválida cnpj",
      "message" : "CNPJ e obrigatorio."
    } ]
  }
}
Exemplo de Resposta HTTP Falta o campo obrigatório tipoEnvolvimento 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 161

{
  "meta" : {
    "errors" : [ {
      "error" : "Propriedade inválida tipoEnvolvimento",
      "message" : "Tipo de Envolvimento e obrigatorio."
    } ]
  }
}
Exemplo de Resposta HTTP tipoEnvolvimento não catalogado 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 150

{
  "meta" : {
    "errors" : [ {
      "error" : "InvalidParamsException",
      "message" : "Tipo de Envolvimento '89' nao catalogado"
    } ]
  }
}
Exemplo de Resposta HTTP página sem resultados 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 149

{
  "meta" : {
    "errors" : [ {
      "error" : "InvalidParamsException",
      "message" : "Pagina informada nao contem resultados."
    } ]
  }
}

12. Empresas Permitidas

O serviço a seguir retorna dados básicos das empresas que deram permissão ao aplicativo.

12.1. Campos para Resposta

Path Type Description

data[].corporateName

String

Razão Social da empresa.

data[].fantasyName

String

Nome fantasia da empresa.

data[].cnpj

String

Cadastro nacional de pessoa jurídica.

data[].number

String

Número do estabelecimento no logradouro.

data[].street

String

Logradouro.

data[].city

String

Cidade da empresa.

data[].uf

String

Código da Unidade Federativa.

data[].permission

String

Nível de permissão concedido.

data[].status

String

Status da permissão.

12.1.1. Requisitar dados de empresas que permitem o acesso ao aplicativo e o nível de permissão.

GET /company/permitted

Esse recurso não utiliza paginação.

  • Este recurso retorna uma lista empresas e o nível de permissão concedido.

Exemplo de Requisição HTTP
GET /v1/app/company/permitted HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/company/permitted' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1553

{
  "data" : [ {
    "corporateName" : "OOBJ TECNOLOGIA DA INFORMACAO LTDA ME",
    "fantasyName" : "OOBJ",
    "cnpj" : "09553244000176",
    "city" : "AUTAZES",
    "street" : "Rua 88, n. 559",
    "uf" : "AM",
    "permission" : "DOWNLOAD",
    "status" : "GRANTED"
  }, {
    "corporateName" : "HYDE ALIMENTOS LTDA FILIAL",
    "fantasyName" : "HYDE",
    "cnpj" : "17261661000173",
    "city" : "ACRELÂNDIA",
    "uf" : "AC",
    "permission" : "DOWNLOAD",
    "status" : "GRANTED"
  }, {
    "corporateName" : "PAQUETA",
    "fantasyName" : "PAQUETA",
    "cnpj" : "17261661000254",
    "permission" : "DOWNLOAD",
    "status" : "GRANTED"
  }, {
    "corporateName" : "SERTAO - MATRIZ",
    "fantasyName" : "SERTAO - MATRIZ",
    "cnpj" : "17261661000416",
    "city" : "GOIÂNIA",
    "uf" : "GO",
    "permission" : "DOWNLOAD",
    "status" : "GRANTED"
  }, {
    "corporateName" : "COMERCIAL - MATRIZ",
    "fantasyName" : "COMERCIAL - MATRIZ",
    "cnpj" : "17261661000505",
    "city" : "BELO HORIZONTE",
    "uf" : "MG",
    "permission" : "DOWNLOAD",
    "status" : "GRANTED"
  }, {
    "corporateName" : "COMERCIO LOCAL",
    "fantasyName" : "COMERCIO LOCAL",
    "cnpj" : "17261661000688",
    "city" : "NOVO GAMA",
    "street" : "Rua Antonio Paulo Garcia",
    "number" : "1989",
    "uf" : "GO",
    "permission" : "DOWNLOAD",
    "status" : "GRANTED"
  }, {
    "corporateName" : "COMERCIO LOCAL",
    "cnpj" : "16311786000106",
    "city" : "Goiania",
    "uf" : "GO",
    "permission" : "DOWNLOAD",
    "status" : "GRANTED"
  } ]
}
Exemplo de Resposta HTTP Empresas não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 152

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Não existem empresas permitidas para este app."
    } ]
  }
}

13. Enriquecimento de Dados

Este serviço ainda está em construção. Os end-points descritos aqui ainda não estão funcionando em produção.

Existem cenários em que um aplicativo deseja registrar dados extras acerca de um envolvido em transações fiscais ou até mesmo acerca das transações fiscais. Nesses casos, ele pode adicionar informações extras para posterior consulta ou agregação. A essa funcionalidade deu-se o nome de "Enriquecimento de Dados".

Através da utilização de um aplicativo, uma empresa pode enviar dados, colocando alguns meta-dados para posterior consulta dela e de outras empresas. Para funcionamento adequado dos recursos abaixo, cada empresa deverá ter uma aplicativo relacionado apenas a ela.

13.1. Recursos

13.1.1. Enviar dados

POST /enrichment

Recurso destinado ao envio de dados relacionados com o CNPJ, transação fiscal ou envolvidos.

Table 8. Campos para Requisição
Nome Tipo Descrição

owner

String

CNPJ da empresa dona da informação. (Obrigatório)

docKey

String

Chave ou CNPJ do distribuidor. (Obrigaório)

docType

String

Tipo do 'docKey' do distribuidor. Ex: "cnpj", "chave". (Obrigatório)

category

String

Nome da categoria dos dados a serem inseridos. Ex: "metas", "vendas". (Obrigatório)

expirationDate

Timestamp

Timestamp da data de expiração dos dados enviados. (Opcional)

startDate

Timestamp

Timestamp da data de inicio da validade dos dados enviados. (Opcional)

interested

Array de Strings

Array contendo os CNPJs de interessados que poderão consultar os dados enviados. (Opcional)

data

Array de Object

Array de Objetos com os dados a serem enviados. (Obrigatório)

Exemplo de Requisição HTTP
POST /v1/app/enrichment HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br
Content-Length: 322

{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "docKey" : "35160402274937000180550050000554331100554347",
  "docType" : "NFE",
  "owner" : "09553244000176",
  "category" : "goals",
  "interested" : [ "87569208678009", "15459431001089" ],
  "expirationDate" : 1762000440000,
  "data" : [ "TESTE", 456987, "A" ]
}
Exemplo de comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/enrichment' -i -X POST -H 'Content-Type: application/json' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U' -d '{
  "page" : 0,
  "pageSize" : 0,
  "nextProtocol" : 0,
  "docKey" : "35160402274937000180550050000554331100554347",
  "docType" : "NFE",
  "owner" : "09553244000176",
  "category" : "goals",
  "interested" : [ "87569208678009", "15459431001089" ],
  "expirationDate" : 1762000440000,
  "data" : [ "TESTE", 456987, "A" ]
}'
Exemplo de Resposta HTTP
HTTP/1.1 201 Created
Content-Type: application/json;charset=UTF-8
Content-Length: 412

{
  "data" : {
    "page" : 0,
    "pageSize" : 0,
    "nextProtocol" : 0,
    "docKey" : "35160402274937000180550050000554331100554347",
    "docType" : "NFE",
    "owner" : "09553244000176",
    "category" : "goals",
    "interested" : [ "87569208678009", "15459431001089" ],
    "expirationDate" : 1762000440000,
    "creationDate" : 1573753452499,
    "appId" : 1,
    "data" : [ "TESTE", 456987, "A" ]
  }
}

13.1.2. Consultar dados

GET /enrichment

Recurso para consulta de dados enviados por alguma empresa. Esta consulta só retornará dados em que o CNPJ requisitor esteja relacionado como interessado.

Table 9. Campos para Requisição
Nome Tipo Descrição

owner

String

CNPJ da empresa dona da informação. (Opcional)

docKey

String

Chave ou CNPJ do distribuidor. (Obrigatório)

docType

String

Tipo do 'docKey' do distribuidor. Ex: "cnpj", "chave". (Opcional)

createdAtStart

Timestamp

Timestamp da data de criação dos dados a serem consultados. (Opcional)

createdAtEnd

Timestamp

Timestamp da data de criação dos dados a serem consultados. (Opcional)

startAt

Timestamp

Timestamp da data de inicio dos dados a serem consultados. Só será utilizado caso o parâmetro searchAll seja marcado como 'true'. (Opcional)

expireAt

Timestamp

Timestamp da data de expiração dos dados a serem consultados. Só será utilizado caso o parâmetro searchAll seja marcado como 'true'. (Opcional)

category

String

Nome da categoria dos dados a serem consultados. Ex: "goals", "sales". (Opcional)

searchAll

Boolean

Boolean que verifica se a consulta retornará todos os itens do filtro(TRUE) OU apenas os itens dentro de um período de datas(FALSE). (Opcional)

lastCreated

Boolean

Boolean que verifica se a consulta retornará apenas o último documento criado para o filtro(TRUE) OU todos os documentos para o filtro(FALSE). (Opcional)

query

JSON

JSON contento um filtro dentro dos dados (Opcional).

O campo query, caso informado, deverá ser um JSON contendo nome e valor dos campos para realização de filtro. Por exemplo, caso seja necessário filtrar apenas metas do supermercado de código 123456 (storeCode), bastaria passar a seguinte string no campo query:

{"storeCode": "123456"}

Neste campo é possível informar mais de um filtro. Por exemplo:

{"storeCode": "123456", "activatedEC": true}

O campo searchAll é FALSE por default. Desta forma caso não seja marcado como TRUE sempre retornará as metas referentes ao período em que a data da requisição encontra-se entre o startDate e o expirationDate.

O campo lastCreated é FALSE por default. Desta forma sempre retornará TODAS as metas referentes aos outros parâmetros da consulta. Caso marcado como TRUE, retornará apenas o último documento de metas inserido, baseando-se na data de criação.

Exemplo de Requisição HTTP
GET /v1/app/enrichment?startAt=1475543419432&docKey=80221013000211&searchAll=true HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U
Host: rest.noov.com.br
Exemplo de comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/enrichment?startAt=1475543419432&docKey=80221013000211&searchAll=true' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLTRkZmItOGY5NS0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.ALJV6ul5CLj9hyOkr9cO2CamMP-xWh-v3KGMIPqXn8U'
Exemplo de Resposta HTTP
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 3033

{
  "data" : [ {
    "page" : 0,
    "pageSize" : 0,
    "nextProtocol" : 0,
    "docKey" : "80221013000211",
    "docType" : "CNPJ",
    "owner" : "12345678000145",
    "category" : "goals",
    "interested" : [ "80221013000200", "12345678901236" ],
    "startDate" : 1475543419432,
    "expirationDate" : 1475593419432,
    "creationDate" : 1475543619432,
    "appId" : 1,
    "data" : [ {
      "realized" : 93,
      "platform" : "Top 200 Assinado",
      "introductionText" : "Olá, Vendedor! Você está numa loja Raio X.",
      "category" : "Gillete",
      "seller" : "Jefferson Santos",
      "discount" : 12,
      "subChannel" : "20 Plus",
      "availableEC" : true,
      "goal" : 150,
      "version" : "1",
      "activatedEC" : true,
      "updateDate" : 1475543619432,
      "storeCode" : "569874563218"
    }, {
      "subChannel" : "20 Plus",
      "availableEC" : true,
      "version" : "1",
      "storeCode" : "547195000194",
      "seller" : "Jefferson Santos",
      "platform" : "Top 200 Assinado",
      "introductionText" : "Olá, Vendedor! Você está numa loja Raio X.",
      "activatedEC" : false,
      "category" : "Pampers",
      "goal" : 130,
      "realized" : 53,
      "updateDate" : 1475543619432,
      "discount" : 15
    }, {
      "availableEC" : false,
      "introductionText" : "Olá, Vendedor! Você está numa loja Raio X.",
      "version" : "1",
      "storeCode" : "547195000194",
      "goal" : 100,
      "discount" : 10,
      "realized" : 84,
      "platform" : "Top 200 Assinado",
      "subChannel" : "20 Plus",
      "activatedEC" : false,
      "category" : "Laundry",
      "updateDate" : 1475543619432,
      "seller" : "Gabriel Santos"
    }, {
      "subChannel" : "20 Plus",
      "storeCode" : "1841180000105",
      "category" : "Gillete",
      "version" : "1",
      "seller" : "Gabriel Santos",
      "realized" : 93,
      "discount" : 12,
      "activatedEC" : true,
      "goal" : 150,
      "introductionText" : "Olá, Vendedor! Você está numa loja Raio X.",
      "platform" : "Top 200 Assinado",
      "updateDate" : 1475543619432,
      "availableEC" : true
    }, {
      "goal" : 130,
      "realized" : 53,
      "seller" : "Gabriel Santos",
      "category" : "Pampers",
      "subChannel" : "20 Plus",
      "availableEC" : false,
      "introductionText" : "Olá, Vendedor! Você está numa loja Raio X.",
      "discount" : 15,
      "platform" : "Top 200 Assinado",
      "activatedEC" : true,
      "version" : "1",
      "updateDate" : 1475543619432,
      "storeCode" : "1841180000105"
    }, {
      "category" : "Laundry",
      "goal" : 100,
      "subChannel" : "20 Plus",
      "storeCode" : "547195000194",
      "realized" : 84,
      "seller" : "Jefferson Santos",
      "introductionText" : "Olá, Vendedor! Você está numa loja Raio X.",
      "discount" : 10,
      "activatedEC" : false,
      "platform" : "Top 200 Assinado",
      "availableEC" : true,
      "updateDate" : 1475543619432,
      "version" : "1"
    } ]
  } ]
}

14. Produtos Vendidos

14.1. Recursos

Estes recursos retornam dados apenas para os CNPJs permitidos para a aplicação que está o consumindo, sempre comparando estes aos CNPJs enviados no parametro emits.

14.1.1. Requisitar Produtos Vendidos

GET /sales

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista de Produtos Vendidos e faz uso dos seguintes campos para requisição.

14.1.2. Campos para Requisição

Parameter Description

status

Array com os status em que um documento se encontra. Os possíveis status estão presentes na tabela de status abaixo.

emDataInicial

Timestamp da data de emissão inicial. Caso não seja informada, a consulta será realizada a partir do documento com data de emissão mais antiga.

emDataFinal

Timestamp da data de emissão final. Caso não seja informada, a consulta será realizada até a data do documento com data de emissão mais recente.

emits

OBRIGATÓRIO. Array de String com os CNPJs/CPFs de emitentes dos documentos que serão consultados.

intraGrupo

Se informado como true, retorna apenas dados de comercialização interna dos grupos de empresas dos emitentes informados. Caso false, os dados de comercialização interna de um grupo não serão retornados. É false por padrão.

tipoGrupo

String representado o tipo do grupo de empresas a ser consultado. Possui duas possibilidades, DISTRIBUTOR e STORE. É DISTRIBUTOR por padrão.

tipoNotaFiscal

Inteiro do código do tipo de Nota Fiscal. Pode ser 0 para entrada ou 1 para saída.

todosDoGrupo

Se informado como true, serão consultados todos os emitentes no grupo de empresas dos CNPJs passados no parâmetro emits. É false por padrão.

pageSize

Quantidade de elementos por página.

nextProtocol

Protocolo para busca paginada.

  • O campo status pode conter os seguintes valores:

Status Descrição

NAO_CONSULTADO

Documento ainda não foi verificado na SEFAZ

FALHA_CONSULTA

Ocorreu uma falha ao consultar o documento na SEFAZ

NAO_ENCONTRADO

Documento pode ter sido emitido em contingência

AUTORIZADO

Documento está autorizado na SEFAZ

CANCELADO

Documento está cancelado na SEFAZ

DENEGADO

Documento encontra-se denegado na SEFAZ

EM_PROCESSAMENTO_SEFAZ

Documento encontra-se em processamento na SEFAZ

REJEITADA

Documento rejeitado pela SEFAZ

Exemplo de Requisição HTTP
GET /v1/app/sales?emits=09553244000176&tipoGrupo=distributor&pageSize=100&nextProtocol=2 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzYsImV4cCI6MTU3Mzc1NTI3Nn0.ccznETeADxx3eUoVMXI2dmJajni0gfxvLmKYNWOT2fw
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/sales?emits=09553244000176&tipoGrupo=distributor&pageSize=100&nextProtocol=2' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzYsImV4cCI6MTU3Mzc1NTI3Nn0.ccznETeADxx3eUoVMXI2dmJajni0gfxvLmKYNWOT2fw'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1324

{
  "data" : [ {
    "eanCom" : "0000000000001",
    "qtdCom" : 1.0,
    "eanTrib" : "0000000000001",
    "qtdTrib" : 1.0,
    "prodId" : "0000000000001",
    "qtd" : 1.0,
    "cfop" : "5405",
    "emit" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rodovia RS 239",
      "numero" : "3000",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "razaoSocial" : "OOBJ TECNOLOGIA",
      "nomeFant" : "OOBJ TECNOLOGIA",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135994100"
    },
    "dest" : {
      "doc" : "12345678901236",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO",
      "razaoSocial" : "EMPRESA FICTICIA",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135998800"
    },
    "dhEmiNF" : 1394161200000,
    "numNF" : 9968,
    "finNF" : 1,
    "tipoNF" : 1,
    "status" : "AUTORIZADO",
    "dhValNF" : 1460689200000,
    "itemCode" : 2
  } ],
  "pagination" : {
    "pageSize" : 100,
    "pageTotalElements" : 1,
    "lastPage" : true,
    "nextProtocol" : 3
  }
}
Exemplo de Resposta HTTP Produtos não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 128

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum item encontrado."
    } ]
  }
}
Exemplo de Resposta HTTP Não possui permissão para o CNPJ 403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json;charset=UTF-8
Content-Length: 164

{
  "meta" : {
    "errors" : [ {
      "error" : "AuthorizationException",
      "message" : "Não possui permissão para este CNPJ: 789652321458796"
    } ]
  }
}
Exemplo de Resposta HTTP Grupo de empresas não encontrado 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 198

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum grupo de empresas encontrado para os cnpjs passados como parâmetro do tipo informado."
    } ]
  }
}
Exemplo de Resposta HTTP CNPJs pertecem a mais de um grupo de empresas 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 183

{
  "meta" : {
    "errors" : [ {
      "error" : "InvalidParamsException",
      "message" : "Cnpjs passados como parâmetro pertencem a grupos de empresas diferentes."
    } ]
  }
}
Exemplo de Resposta HTTP Parâmetro dests nulo 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 146

{
  "meta" : {
    "errors" : [ {
      "error" : "InvalidParamsException",
      "message" : "Parâmetro emits não pode ser nulo."
    } ]
  }
}

14.1.3. Requisitar Produtos Modificados

GET /sales/modified

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista de Produtos Vendidos que sofreram alteração no status.

  • A data de modificação inicial e final não pode ser um período maior que 31 dias.

Path Description

dtModInicial

OBRIGATÓRIO. Timestamp da data de última modificação inicial. Essa é a data em que o registro sofreu a última modificação.

dtModFinal

OBRIGATÓRIO. Timestamp da data de modificação final.

Exemplo de Requisição HTTP
GET /v1/app/sales/modified?dtModInicial=1461117600000&dtModFinal=1461124800000 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzYsImV4cCI6MTU3Mzc1NTI3Nn0.ccznETeADxx3eUoVMXI2dmJajni0gfxvLmKYNWOT2fw
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/sales/modified?dtModInicial=1461117600000&dtModFinal=1461124800000' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzYsImV4cCI6MTU3Mzc1NTI3Nn0.ccznETeADxx3eUoVMXI2dmJajni0gfxvLmKYNWOT2fw'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1732

{
  "data" : [ {
    "eanCom" : "0000000000002",
    "qtdCom" : 1.0,
    "eanTrib" : "0000000000001",
    "qtdTrib" : 1.0,
    "prodId" : "0000000000001",
    "qtd" : 1.0,
    "cfop" : "5405",
    "emit" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rodovia RS 239",
      "numero" : "3000",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "razaoSocial" : "SINOSCAR S A",
      "nomeFant" : "SINOSCAR S/A",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135994100"
    },
    "dest" : {
      "doc" : "23654896321475",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO",
      "razaoSocial" : "PAQUETA EMPREENDIMENTOS IMOBILIARIOS LTDA",
      "nomeFant" : "Nome Fantasia",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135998800"
    },
    "entrega" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO"
    },
    "dhEmiNF" : 1394161200000,
    "numNF" : 9968,
    "indFinalNF" : 1,
    "finNF" : 1,
    "tipoNF" : 1,
    "status" : "CANCELADO",
    "dhValNF" : 1460689200000,
    "dhCanc" : 1395111600000,
    "dhUltMod" : 1461121200000,
    "itemCode" : 4
  } ],
  "pagination" : {
    "pageSize" : 5,
    "pageTotalElements" : 1,
    "lastPage" : true,
    "nextProtocol" : 5
  }
}

14.1.4. Requisitar Produtos Vendidos Devolvidos

GET /sales/returned

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista de Produtos Vendidos Devolvidos e faz uso dos seguintes campos para requisição.

14.1.5. Campos para Requisição

Parameter Description

emDataInicial

Timestamp da data de emissão inicial. Caso não seja informada, a consulta será realizada a partir do documento com data de emissão mais antiga.

emDataFinal

Timestamp da data de emissão final. Caso não seja informada, a consulta será realizada até a data do documento com data de emissão mais recente.

cnpjs

OBRIGATÓRIO. Array de String com os CNPJs/CPFs de destinatários e emitentes dos documentos que serão consultados.

tipoGrupo

String representado o tipo do grupo de empresas a ser consultado. Possui duas possibilidades, DISTRIBUTOR e STORE. É DISTRIBUTOR por padrão.

tipoNotaFiscal

Inteiro do código do tipo de Nota Fiscal. Pode ser 0 para entrada ou 1 para saída.

todosDoGrupo

Se informado como true, serão consultados todos os emitentes no grupo de empresas dos CNPJs passados no parâmetro emits. É false por padrão.

pageSize

Quantidade de elementos por página.

nextProtocol

Protocolo para busca paginada.

  • Caso o campo tipoNotaFiscal não seja informado, será utilizado o valor padrão que é 1 (SAÍDA) neste caso, os CNPJs permitidos ao aplicativo serão os do destinatário no retorno da consulta. Caso seja passado o valor 0 (ENTRADA) os CNPJs do aplicativo serão os do emitente no retorno da consulta.

Exemplo de Requisição HTTP
GET /v1/app/sales/returned?cnpjs=09553244000176&todosDoGrupo=true&pageSize=100 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzcsImV4cCI6MTU3Mzc1NTI3N30.bLIdCpL3VfH5OYs9y3ZU05jSVFasyul7bG1WaTdVMJo
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/sales/returned?cnpjs=09553244000176&todosDoGrupo=true&pageSize=100' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzcsImV4cCI6MTU3Mzc1NTI3N30.bLIdCpL3VfH5OYs9y3ZU05jSVFasyul7bG1WaTdVMJo'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 4704

{
  "data" : [ {
    "eanCom" : "0000000000001",
    "qtdCom" : 1.0,
    "eanTrib" : "0000000000001",
    "qtdTrib" : 1.0,
    "prodId" : "0000000000001",
    "qtd" : 1.0,
    "cfop" : "5405",
    "emit" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rodovia RS 239",
      "numero" : "3000",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "razaoSocial" : "NOME FICTICIO S A",
      "nomeFant" : "NOME FICTICIO S/A",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135994100"
    },
    "dest" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO",
      "razaoSocial" : "EMPREENDIMENTOS IMOBILIARIOS",
      "nomeFant" : "Nome Fantasia",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135998800"
    },
    "entrega" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO"
    },
    "dhEmiNF" : 1394161200000,
    "numNF" : 9968,
    "indFinalNF" : 1,
    "finNF" : 4,
    "tipoNF" : 1,
    "status" : "AUTORIZADO",
    "dhValNF" : 1460689200000,
    "dhUltMod" : 1460257200000,
    "itemCode" : 4
  }, {
    "eanCom" : "0000000000001",
    "qtdCom" : 1.0,
    "eanTrib" : "0000000000001",
    "qtdTrib" : 1.0,
    "prodId" : "0000000000001",
    "qtd" : 1.0,
    "cfop" : "5405",
    "emit" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rodovia RS 239",
      "numero" : "3000",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "razaoSocial" : "NOME FICTICIO S A",
      "nomeFant" : "NOME FICTICIO S/A",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135994100"
    },
    "dest" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO",
      "razaoSocial" : "EMPREENDIMENTOS IMOBILIARIOS",
      "nomeFant" : "Nome Fantasia",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135998800"
    },
    "entrega" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO"
    },
    "dhEmiNF" : 1394161200000,
    "numNF" : 9968,
    "indFinalNF" : 1,
    "finNF" : 4,
    "tipoNF" : 1,
    "status" : "AUTORIZADO",
    "itemCode" : 4
  }, {
    "eanCom" : "0000000000001",
    "qtdCom" : 1.0,
    "eanTrib" : "0000000000001",
    "qtdTrib" : 1.0,
    "prodId" : "0000000000001",
    "qtd" : 1.0,
    "cfop" : "5405",
    "emit" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rodovia RS 239",
      "numero" : "3000",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "razaoSocial" : "NOME FICTICIO S A",
      "nomeFant" : "NOME FICTICIO S/A",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135994100"
    },
    "dest" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO",
      "razaoSocial" : "EMPREENDIMENTOS IMOBILIARIOS",
      "nomeFant" : "Nome Fantasia",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135998800"
    },
    "entrega" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO"
    },
    "dhEmiNF" : 1394161200000,
    "numNF" : 9968,
    "indFinalNF" : 1,
    "finNF" : 4,
    "tipoNF" : 1,
    "status" : "AUTORIZADO",
    "itemCode" : 4
  } ],
  "pagination" : {
    "pageSize" : 100,
    "pageTotalElements" : 3,
    "lastPage" : true,
    "nextProtocol" : 5
  }
}
Exemplo de Resposta HTTP Produtos não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 128

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum item encontrado."
    } ]
  }
}
Exemplo de Resposta HTTP Não possui permissão para o CNPJ 403 Forbidden
HTTP/1.1 403 Forbidden
Content-Type: application/json;charset=UTF-8
Content-Length: 164

{
  "meta" : {
    "errors" : [ {
      "error" : "AuthorizationException",
      "message" : "Não possui permissão para este CNPJ: 789652321458796"
    } ]
  }
}
Exemplo de Resposta HTTP Grupo de empresas não encontrado 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 198

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum grupo de empresas encontrado para os cnpjs passados como parâmetro do tipo informado."
    } ]
  }
}
Exemplo de Resposta HTTP CNPJs pertecem a mais de um grupo de empresas 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 183

{
  "meta" : {
    "errors" : [ {
      "error" : "InvalidParamsException",
      "message" : "Cnpjs passados como parâmetro pertencem a grupos de empresas diferentes."
    } ]
  }
}
Exemplo de Resposta HTTP Parâmetro dests nulo 400 Bad Request
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8
Content-Length: 146

{
  "meta" : {
    "errors" : [ {
      "error" : "InvalidParamsException",
      "message" : "Parâmetro cnpjs não pode ser nulo."
    } ]
  }
}

14.1.6. Requisitar Produtos Devolvidos Cancelados

GET /sales/returned/cancelled

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista de Produtos Devolvidos que foram cancelados.

  • Este recurso retorna dados para todos os CNPJs permitidos para a aplicação que consome o serviço.

Path Description

dtCancelInicial

Timestamp da data de cancelamento inicial. Caso não seja informada, a consulta será realizada a partir do documento com data de emissão mais antiga.

dtCancelFinal

Timestamp da data de cancelamento final. Caso não seja informada, a consulta será realizada até a data do documento com data de emissão mais antiga.

dtModInicial

Timestamp da data de última modificação inicial. Essa é a data em que o registro sofreu a última modificação.

dtModFinal

Timestamp da data de modificação final.

Exemplo de Requisição HTTP
GET /v1/app/sales/returned/cancelled?dtCancelInicial=1394236800000 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzcsImV4cCI6MTU3Mzc1NTI3N30.bLIdCpL3VfH5OYs9y3ZU05jSVFasyul7bG1WaTdVMJo
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/sales/returned/cancelled?dtCancelInicial=1394236800000' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzcsImV4cCI6MTU3Mzc1NTI3N30.bLIdCpL3VfH5OYs9y3ZU05jSVFasyul7bG1WaTdVMJo'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 3202

{
  "data" : [ {
    "eanCom" : "0000000000001",
    "qtdCom" : 1.0,
    "eanTrib" : "0000000000001",
    "qtdTrib" : 1.0,
    "prodId" : "0000000000001",
    "qtd" : 1.0,
    "cfop" : "5405",
    "emit" : {
      "doc" : "23654896321475",
      "uf" : "RS",
      "logradouro" : "Rodovia RS 239",
      "numero" : "3000",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "razaoSocial" : "SINOSCAR S A",
      "nomeFant" : "SINOSCAR S/A",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135994100"
    },
    "dest" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO",
      "razaoSocial" : "PAQUETA EMPREENDIMENTOS IMOBILIARIOS LTDA",
      "nomeFant" : "Nome Fantasia",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135998800"
    },
    "entrega" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO"
    },
    "dhEmiNF" : 1394161200000,
    "numNF" : 9968,
    "indFinalNF" : 1,
    "finNF" : 4,
    "tipoNF" : 1,
    "status" : "CANCELADO",
    "dhCanc" : 1394247600000,
    "itemCode" : 4
  }, {
    "eanCom" : "0000000000001",
    "qtdCom" : 1.0,
    "eanTrib" : "0000000000001",
    "qtdTrib" : 1.0,
    "prodId" : "0000000000001",
    "qtd" : 1.0,
    "cfop" : "5405",
    "emit" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rodovia RS 239",
      "numero" : "3000",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "razaoSocial" : "SINOSCAR S A",
      "nomeFant" : "SINOSCAR S/A",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135994100"
    },
    "dest" : {
      "doc" : "23654896321475",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO",
      "razaoSocial" : "PAQUETA EMPREENDIMENTOS IMOBILIARIOS LTDA",
      "nomeFant" : "Nome Fantasia",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135998800"
    },
    "entrega" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO"
    },
    "dhEmiNF" : 1394161200000,
    "numNF" : 9968,
    "indFinalNF" : 1,
    "finNF" : 4,
    "tipoNF" : 0,
    "status" : "CANCELADO",
    "dhCanc" : 1394247600000,
    "itemCode" : 4
  } ],
  "pagination" : {
    "pageSize" : 5,
    "pageTotalElements" : 2,
    "lastPage" : true,
    "nextProtocol" : 5
  }
}
Exemplo de Resposta HTTP Produtos não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 128

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum item encontrado."
    } ]
  }
}
Exemplo de Resposta HTTP Data de cancelamento não informada 400 Bad Request

Unresolved directive in salesitem-service.adoc - include::/slave/workspace/oobj-nuvei-rest-api-FIX/target/generated-snippets/salesItem/sales-canceladas-sem-dt-cancelamento/http-response.adoc[]

14.1.7. Requisitar Produtos Devolvidos Modificados

GET /sales/returned/modified

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista de Produtos Devolvidos que sofreram alteração no status.

  • A data de modificação inicial e final não pode ser um período maior que 31 dias.

Path Description

dtModInicial

OBRIGATÓRIO. Timestamp da data de última modificação inicial. Essa é a data em que o registro sofreu a última modificação.

dtModFinal

OBRIGATÓRIO. Timestamp da data de modificação final.

Exemplo de Requisição HTTP
GET /v1/app/sales/returned/modified?dtModInicial=1459468800000&dtModFinal=1461974400000 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzYsImV4cCI6MTU3Mzc1NTI3Nn0.ccznETeADxx3eUoVMXI2dmJajni0gfxvLmKYNWOT2fw
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/sales/returned/modified?dtModInicial=1459468800000&dtModFinal=1461974400000' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzYsImV4cCI6MTU3Mzc1NTI3Nn0.ccznETeADxx3eUoVMXI2dmJajni0gfxvLmKYNWOT2fw'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1700

{
  "data" : [ {
    "eanCom" : "0000000000001",
    "qtdCom" : 1.0,
    "eanTrib" : "0000000000001",
    "qtdTrib" : 1.0,
    "prodId" : "0000000000001",
    "qtd" : 1.0,
    "cfop" : "5405",
    "emit" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rodovia RS 239",
      "numero" : "3000",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "razaoSocial" : "NOME FICTICIO S A",
      "nomeFant" : "NOME FICTICIO S/A",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135994100"
    },
    "dest" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO",
      "razaoSocial" : "EMPREENDIMENTOS IMOBILIARIOS",
      "nomeFant" : "Nome Fantasia",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135998800"
    },
    "entrega" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO"
    },
    "dhEmiNF" : 1394161200000,
    "numNF" : 9968,
    "indFinalNF" : 1,
    "finNF" : 4,
    "tipoNF" : 1,
    "status" : "AUTORIZADO",
    "dhValNF" : 1460689200000,
    "dhUltMod" : 1460257200000,
    "itemCode" : 4
  } ],
  "pagination" : {
    "pageSize" : 5,
    "pageTotalElements" : 1,
    "lastPage" : true,
    "nextProtocol" : 5
  }
}

14.1.8. Requisitar Produtos Vendidos Cancelados

GET /sales/cancelled

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista de Produtos Vendidos que foram cancelados.

  • Este recurso não prevê o envio de emitentes específicos e retorna dados para todos os CNPJs permitidos para a aplicação que consome o serviço.

  • Além dos parâmentros de paginação, ao menos um dos seguintes parâmetros é obrigatório e deve ser informado para este recurso:

Path Description

dtCancelInicial

Timestamp da data de cancelamento inicial. Caso não seja informada, a consulta será realizada a partir do documento com data de emissão mais antiga.

dtCancelFinal

Timestamp da data de cancelamento final. Caso não seja informada, a consulta será realizada até a data do documento com data de emissão mais antiga.

dtModInicial

Timestamp da data de última modificação inicial. Essa é a data em que o registro sofreu a última modificação.

dtModFinal

Timestamp da data de modificação final.

Exemplo de Requisição HTTP
GET /v1/app/sales/cancelled?dtCancelInicial=1394236800000&dtCancelFinal=1394323199000 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzcsImV4cCI6MTU3Mzc1NTI3N30.bLIdCpL3VfH5OYs9y3ZU05jSVFasyul7bG1WaTdVMJo
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/sales/cancelled?dtCancelInicial=1394236800000&dtCancelFinal=1394323199000' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NzcsImV4cCI6MTU3Mzc1NTI3N30.bLIdCpL3VfH5OYs9y3ZU05jSVFasyul7bG1WaTdVMJo'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 1732

{
  "data" : [ {
    "eanCom" : "0000000000001",
    "qtdCom" : 1.0,
    "eanTrib" : "0000000000001",
    "qtdTrib" : 1.0,
    "prodId" : "0000000000001",
    "qtd" : 1.0,
    "cfop" : "5405",
    "emit" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rodovia RS 239",
      "numero" : "3000",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "razaoSocial" : "SINOSCAR S A",
      "nomeFant" : "SINOSCAR S/A",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135994100"
    },
    "dest" : {
      "doc" : "23654896321475",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO",
      "razaoSocial" : "PAQUETA EMPREENDIMENTOS IMOBILIARIOS LTDA",
      "nomeFant" : "Nome Fantasia",
      "nomePais" : "BRASIL",
      "codPais" : 1058,
      "cep" : "93800000",
      "fone" : "5135998800"
    },
    "entrega" : {
      "doc" : "09553244000176",
      "uf" : "RS",
      "logradouro" : "Rua 25 DE JULHO",
      "numero" : "43",
      "nomeMunicipio" : "SAPIRANGA",
      "codMunicipio" : 4319901,
      "bairro" : "CENTRO",
      "complemento" : "ANDAR TERREO"
    },
    "dhEmiNF" : 1394161200000,
    "numNF" : 9968,
    "indFinalNF" : 1,
    "finNF" : 1,
    "tipoNF" : 1,
    "status" : "CANCELADO",
    "dhValNF" : 1460689200000,
    "dhCanc" : 1394247600000,
    "dhUltMod" : 1460257200000,
    "itemCode" : 4
  } ],
  "pagination" : {
    "pageSize" : 5,
    "pageTotalElements" : 1,
    "lastPage" : true,
    "nextProtocol" : 5
  }
}
Exemplo de Resposta HTTP Produtos não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 128

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum item encontrado."
    } ]
  }
}
Exemplo de Resposta HTTP Data de cancelamento não informada 400 Bad Request

Unresolved directive in salesitem-service.adoc - include::/slave/workspace/oobj-nuvei-rest-api-FIX/target/generated-snippets/salesItem/sales-canceladas-sem-dt-cancelamento/http-response.adoc[]

14.2. Campos retornados

Os campos a seguir representam o retorno de todos os recursos aqui descritos.

Path Type Description

eanCom

String

Código EAN comercializado.

qtdCom

Number

Quantidade Comercializada.

eanTrib

String

Código EAN Tributado.

qtdTrib

Number

Quantidade tributada.

prodId

String

Código do produto presente na NF-e normalizado (será o EAN tributado se ele existir, caso contrário o EAN comercializado. Se nenhum dos dois existirem, será uma concatenação do CNPJ do emitente com o código do produto).

qtd

Number

Quantidade Comercializada na NF-e (segue a regra de prodId acima para quantidade).

cfop

String

Código Fiscal de Operações e Prestações.

emit

Object

Dados do emitente da NF-e.

emit.doc

String

Documento (CPF/CNPJ) referente ao emitente.

emit.razaoSocial

String

Razão social do emitente.

emit.nomeFant

String

Nome fantasia do emitente.

emit.nomePais

String

País de origem do emitente da NF-e.

emit.codPais

Number

Código IBGE do país do emitente.

emit.cep

String

CEP do emitente da NF-e.

emit.fone

String

Número de telefone do emitente da NF-e.

emit.uf

String

UF do emitente.

emit.logradouro

String

Logradouro do endereço do emitente.

emit.numero

String

Número do endereço do emitente.

emit.nomeMunicipio

String

Nome do município do emitente.

emit.codMunicipio

Number

Código IBGE do município do emitente.

emit.bairro

String

Bairro do endereço do emitente.

emit.complemento

String

Complemento ao endereço do emitente.

dest

Object

Dados do destinatário da NF-e.

dest.doc

String

Documento (CPF/CNPJ) referente ào Destinatário.

dest.razaoSocial

String

Razão social do destinatário.

dest.nomeFant

String

Nome fantasia do destinatário.

dest.nomePais

String

Nome do país do destinatário.

dest.codPais

Number

Código IBGE do país do destinatário.

dest.cep

String

CEP do destinatário.

dest.fone

String

Número de telefone do destinatário.

dest.uf

String

UF do destinatário.

dest.logradouro

String

Logradouro do endereço do destinatário.

dest.numero

String

Número do endereço do destinatário.

dest.nomeMunicipio

String

Nome do município do destinatário.

dest.codMunicipio

Number

Código IBGE do município do destinatário.

dest.bairro

String

Bairro do destinatário.

dest.complemento

String

Complemento ao endereço do destinatário.

entrega

Object

Dados de entrega.

entrega.doc

String

Documento (CPF/CNPJ) referente à entrega.

entrega.uf

String

UF da entrega.

entrega.logradouro

String

Logradouro da entrega.

entrega.numero

String

Número do endereço de entrega.

entrega.nomeMunicipio

String

Nome do município da entrega.

entrega.codMunicipio

Number

Código IBGE do município da entrega.

entrega.bairro

String

Bairro da entrega.

entrega.complemento

String

Complemento ao endereço de entrega.

dhEmiNF

Number

Timestamp contendo data e hora da emissão da NF-e.

dhValNF

Number

Timestamp contendo data e hora da validação da NF-e na SEFAZ.

numNF

Number

Número da NF-e.

indFinalNF

Number

Indicação de operação com o consumidor final (0 - Não; 1 - Consumidor Final).

finNF

Number

Finalidade da emissão da NF-es (1 - NF-e normal; 2 - NF-e complementar; 3 - NF-e de Ajuste; 4 - Devolução/Retorno).

tipoNF

Number

Tipo da NF-e (0 - entrada; 1 - saída).

status

String

Status atual do item.

refDocs

Number Array

IDs dos documentos fiscais aos quais o item retornado faz referência.

docId

Number

ID do documento fiscal em que este item estava presente.

itemCode

Number

Código para identificação única do item de venda.

15. Produtos Vendidos pelo Varejo

15.1. Consulta Redes de Varejos

Permite consultar as redes de varejo cadastradas. Retorna lista de redes que o APP autenticado tem permissão.

GET /retailSales/rede

Esse recurso utiliza paginação dinâmica.

15.1.1. Campos para requisição

Não é necessário passar nenhum campo adicional na requisição.

Exemplo de Requisição HTTP
GET /v1/app/retailSales/rede HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTEsImV4cCI6MTU3Mzc1NTI1MX0.ucxIeb2EYYG7XfHfrdtEyprwRgqY0yaVwNIKqcYgUNI
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/retailSales/rede' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTEsImV4cCI6MTU3Mzc1NTI1MX0.ucxIeb2EYYG7XfHfrdtEyprwRgqY0yaVwNIKqcYgUNI'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 139

{
  "data" : [ {
    "idRede" : "1",
    "nomeRede" : "Oobj Varejo"
  }, {
    "idRede" : "2",
    "nomeRede" : "Oobj Distribuicao"
  } ]
}

15.1.2. Campos retornados

Path Type Description

idRede

Number

Identificador único da rede. Esse ID é gerado no momento do cadastro do varejo

nomeRede

String

Nome da rede de varejos

15.2. Consulta Lojas (CNPJs)

Permite que a indústria consulte os CNPJ de todas as lojas de uma rede de varejo.

GET /retailSales/rede/cnpj?idRede=0000000001
GET /retailSales/rede/cnpj?xUF=GO
GET /retailSales/rede/cnpj?xMun=Goiania
GET /retailSales/rede/cnpj?xMun=São%20paulo

Esse recurso utiliza paginação dinâmica.

15.2.1. Campos para Requisição

Parameter Description

idRede

ID da rede obtido no endpoint anterior (obrigatório)

ufSigla

Sigla da UF (opcional)

xMun

Nome do município (opcional)

Exemplo de Requisição HTTP
GET /v1/app/retailSales/rede/cnpj?idRede=1&ufSigla=GO&xMun=Goi%C3%A2nia HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTAsImV4cCI6MTU3Mzc1NTI1MH0.jUS1zObGcHkIU1ZSHMrchB-y9oGHrsPtU4L72i3-YbA
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/retailSales/rede/cnpj?idRede=1&ufSigla=GO&xMun=Goi%C3%A2nia' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTAsImV4cCI6MTU3Mzc1NTI1MH0.jUS1zObGcHkIU1ZSHMrchB-y9oGHrsPtU4L72i3-YbA'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 287

{
  "data" : [ {
    "doc" : "09553244000176",
    "ufSigla" : "GO",
    "xMun" : "Goiânia",
    "idRede" : "1",
    "nomeRede" : "Oobj Varejo"
  }, {
    "doc" : "09311281000500",
    "ufSigla" : "GO",
    "xMun" : "Goiânia",
    "idRede" : "1",
    "nomeRede" : "Oobj Varejo"
  } ]
}
Exemplo de Resposta HTTP redes não encontradas 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 129

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhuma rede encontrada."
    } ]
  }
}

15.2.2. Campos retornados

Path Type Description

doc

String

CPF ou CNPJ do emitente

ufSigla

String

Sigla da UF do emitente

xMun

String

Nome do município do emitente

idRede

Number

Identificador único da rede. Esse ID é gerado no momento do cadastro do varejo

nomeRede

String

Nome da rede de varejos

15.3. Consulta Vendas por Período

Permite que a indústria consulte os itens vendidos por data, podendo filtrar ainda pelo CNPJ. Permite filtrar por data da venda (inicial e final). Retorna uma lista de itens vendidos incluindo a informação do IMEI. Retorna itens vendidos até no máximo três meses atrás.

15.3.1. Campos para Requisição

Parameter Description

dhInicio

Data da venda inicial no padrão (yyyy-MM-ddThh:mm:ss). Ex: 2019-04-08T18:00:00 (obrigatório)

dhFim

Data da venda final no padrão (yyyy-MM-ddThh:mm:ss). Ex: 2019-04-08T19:00:00 (obrigatório)

cnpj

CNPJ do emitente (opcional)

Exemplo de Requisição HTTP
GET /v1/app/retailSales/period?dhInicio=2019-02-01T00%3A00%3A00&dhFim=2019-02-28T23%3A59%3A59&cnpj=01008713009706 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTEsImV4cCI6MTU3Mzc1NTI1MX0.ucxIeb2EYYG7XfHfrdtEyprwRgqY0yaVwNIKqcYgUNI
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/retailSales/period?dhInicio=2019-02-01T00%3A00%3A00&dhFim=2019-02-28T23%3A59%3A59&cnpj=01008713009706' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTEsImV4cCI6MTU3Mzc1NTI1MX0.ucxIeb2EYYG7XfHfrdtEyprwRgqY0yaVwNIKqcYgUNI'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 922

{
  "data" : [ {
    "ide" : {
      "id" : "321902095532440001765501200021509212323921001",
      "tpAmb" : 1,
      "serie" : 12,
      "nDF" : 215092,
      "dhEmi" : "2019-02-18T00:00:00-03:00",
      "tpNF" : 1,
      "finNFe" : 1
    },
    "emit" : {
      "doc" : "09553244000176",
      "xNome" : "Oobj TI",
      "endereco" : {
        "cUF" : "GO",
        "xMun" : "GOIANIA"
      }
    },
    "dest" : {
      "doc" : "01234567890123",
      "xNome" : "Nome do destinatario"
    },
    "prod" : {
      "nItem" : 1,
      "cEAN" : "12345678901234",
      "xProd" : "Nome do produto 1",
      "ncm" : "123456789",
      "cfop" : "6102",
      "uCom" : "UN",
      "qCom" : 1.0,
      "tipoOperacao" : "VENDA"
    },
    "otherImeis" : [ "0000000000" ],
    "status" : "AUTORIZADO"
  } ],
  "pagination" : {
    "pageSize" : 5,
    "pageTotalElements" : 1,
    "lastPage" : true,
    "nextProtocol" : 1060
  }
}
Exemplo de Resposta HTTP nenhum item encontrado 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 128

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum item encontrado."
    } ]
  }
}

15.4. Consulta Vendas por CNPJ

Permite que a indústria consulte todos os itens vendidos, podendo filtrar pelo CNPJ. Caso não seja informado o CNPJ, será retornado todas as vendas de todos os varejos em que o aplicativo tem acesso. Retorna itens vendidos até no máximo três meses atrás.

15.4.1. Campos para Requisição

Parameter Description

cnpj

CNPJ do emitente (opcional)

Exemplo de Requisição HTTP
GET /v1/app/retailSales?cnpj=01008713009706 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.thPkaAC9gXh6LYT1xG3b5viChHk8i2LygZWnBt2zKzs
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/retailSales?cnpj=01008713009706' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTIsImV4cCI6MTU3Mzc1NTI1Mn0.thPkaAC9gXh6LYT1xG3b5viChHk8i2LygZWnBt2zKzs'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 922

{
  "data" : [ {
    "ide" : {
      "id" : "321902095532440001765501200021509212323921001",
      "tpAmb" : 1,
      "serie" : 12,
      "nDF" : 215092,
      "dhEmi" : "2019-02-18T00:00:00-03:00",
      "tpNF" : 1,
      "finNFe" : 1
    },
    "emit" : {
      "doc" : "09553244000176",
      "xNome" : "Oobj TI",
      "endereco" : {
        "cUF" : "GO",
        "xMun" : "GOIANIA"
      }
    },
    "dest" : {
      "doc" : "01234567890123",
      "xNome" : "Nome do destinatario"
    },
    "prod" : {
      "nItem" : 1,
      "cEAN" : "12345678901234",
      "xProd" : "Nome do produto 1",
      "ncm" : "123456789",
      "cfop" : "6102",
      "uCom" : "UN",
      "qCom" : 1.0,
      "tipoOperacao" : "VENDA"
    },
    "otherImeis" : [ "0000000000" ],
    "status" : "AUTORIZADO"
  } ],
  "pagination" : {
    "pageSize" : 5,
    "pageTotalElements" : 1,
    "lastPage" : true,
    "nextProtocol" : 1060
  }
}
Exemplo de Resposta HTTP nenhum item encontrado 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 128

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum item encontrado."
    } ]
  }
}

15.5. Consulta Venda por Número

Permite consultar os detalhes de uma venda específica. Na requisição deve-se informar: CNPJ do Emitente, modelo, ano, série e número da nota fiscal.

15.5.1. Campos para Requisição

Parameter Description

cnpj

CNPJ do emitente (obrigatório)

modelo

Modelo do documento. Ex: 55 - NFe; 57 - SAT; 65 - NFCe (obrigatório)

ano

Ano no formato 'yyyy'. Ex: 2019

serie

Série do documento (obrigatório)

numero

Número do documento (obrigatório)

Exemplo de Requisição HTTP
GET /v1/app/retailSales/numero?cnpj=01008713009706&modelo=55&ano=2019&serie=12&numero=215092 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTEsImV4cCI6MTU3Mzc1NTI1MX0.ucxIeb2EYYG7XfHfrdtEyprwRgqY0yaVwNIKqcYgUNI
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/retailSales/numero?cnpj=01008713009706&modelo=55&ano=2019&serie=12&numero=215092' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTEsImV4cCI6MTU3Mzc1NTI1MX0.ucxIeb2EYYG7XfHfrdtEyprwRgqY0yaVwNIKqcYgUNI'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 922

{
  "data" : [ {
    "ide" : {
      "id" : "321902095532440001765501200021509212323921001",
      "tpAmb" : 1,
      "serie" : 12,
      "nDF" : 215092,
      "dhEmi" : "2019-02-18T00:00:00-03:00",
      "tpNF" : 1,
      "finNFe" : 1
    },
    "emit" : {
      "doc" : "09553244000176",
      "xNome" : "Oobj TI",
      "endereco" : {
        "cUF" : "GO",
        "xMun" : "GOIANIA"
      }
    },
    "dest" : {
      "doc" : "01234567890123",
      "xNome" : "Nome do destinatario"
    },
    "prod" : {
      "nItem" : 1,
      "cEAN" : "12345678901234",
      "xProd" : "Nome do produto 1",
      "ncm" : "123456789",
      "cfop" : "6102",
      "uCom" : "UN",
      "qCom" : 1.0,
      "tipoOperacao" : "VENDA"
    },
    "otherImeis" : [ "0000000000" ],
    "status" : "AUTORIZADO"
  } ],
  "pagination" : {
    "pageSize" : 5,
    "pageTotalElements" : 1,
    "lastPage" : true,
    "nextProtocol" : 1060
  }
}
Exemplo de Resposta HTTP nenhum item encontrado 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 128

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum item encontrado."
    } ]
  }
}

15.6. Consulta Venda por ID

Permite consultar os detalhes de uma venda específica passando apenas o ID.

15.6.1. Campos para Requisição

Parameter Description

id

ID único do item vendido, composto por chave natural, tipo de ambiente e número do item (obrigatório)

Exemplo de Requisição HTTP
GET /v1/app/retailSales/id?id=321902095532440001765501200021509212323921001 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTEsImV4cCI6MTU3Mzc1NTI1MX0.ucxIeb2EYYG7XfHfrdtEyprwRgqY0yaVwNIKqcYgUNI
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/retailSales/id?id=321902095532440001765501200021509212323921001' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTEsImV4cCI6MTU3Mzc1NTI1MX0.ucxIeb2EYYG7XfHfrdtEyprwRgqY0yaVwNIKqcYgUNI'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 922

{
  "data" : [ {
    "ide" : {
      "id" : "321902095532440001765501200021509212323921001",
      "tpAmb" : 1,
      "serie" : 12,
      "nDF" : 215092,
      "dhEmi" : "2019-02-18T00:00:00-03:00",
      "tpNF" : 1,
      "finNFe" : 1
    },
    "emit" : {
      "doc" : "09553244000176",
      "xNome" : "Oobj TI",
      "endereco" : {
        "cUF" : "GO",
        "xMun" : "GOIANIA"
      }
    },
    "dest" : {
      "doc" : "01234567890123",
      "xNome" : "Nome do destinatario"
    },
    "prod" : {
      "nItem" : 1,
      "cEAN" : "12345678901234",
      "xProd" : "Nome do produto 1",
      "ncm" : "123456789",
      "cfop" : "6102",
      "uCom" : "UN",
      "qCom" : 1.0,
      "tipoOperacao" : "VENDA"
    },
    "otherImeis" : [ "0000000000" ],
    "status" : "AUTORIZADO"
  } ],
  "pagination" : {
    "pageSize" : 5,
    "pageTotalElements" : 1,
    "lastPage" : true,
    "nextProtocol" : 1060
  }
}
Exemplo de Resposta HTTP nenhum item encontrado 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 128

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum item encontrado."
    } ]
  }
}

15.7. Consulta por IMEI

Permite pesquisar por um IMEI específico.

15.7.1. Campos para Requisição

Parameter Description

imei

Número do IMEI (obrigatório)

Exemplo de Requisição HTTP
GET /v1/app/retailSales/imei?imei=1234567890 HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTAsImV4cCI6MTU3Mzc1NTI1MH0.jUS1zObGcHkIU1ZSHMrchB-y9oGHrsPtU4L72i3-YbA
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/retailSales/imei?imei=1234567890' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy00ZGZiLThmOTUtNzJiMy0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM0NTAsImV4cCI6MTU3Mzc1NTI1MH0.jUS1zObGcHkIU1ZSHMrchB-y9oGHrsPtU4L72i3-YbA'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 922

{
  "data" : [ {
    "ide" : {
      "id" : "321902095532440001765501200021509212323921001",
      "tpAmb" : 1,
      "serie" : 12,
      "nDF" : 215092,
      "dhEmi" : "2019-02-18T00:00:00-03:00",
      "tpNF" : 1,
      "finNFe" : 1
    },
    "emit" : {
      "doc" : "09553244000176",
      "xNome" : "Oobj TI",
      "endereco" : {
        "cUF" : "GO",
        "xMun" : "GOIANIA"
      }
    },
    "dest" : {
      "doc" : "01234567890123",
      "xNome" : "Nome do destinatario"
    },
    "prod" : {
      "nItem" : 1,
      "cEAN" : "12345678901234",
      "xProd" : "Nome do produto 1",
      "ncm" : "123456789",
      "cfop" : "6102",
      "uCom" : "UN",
      "qCom" : 1.0,
      "tipoOperacao" : "VENDA"
    },
    "otherImeis" : [ "0000000000" ],
    "status" : "AUTORIZADO"
  } ],
  "pagination" : {
    "pageSize" : 5,
    "pageTotalElements" : 1,
    "lastPage" : true,
    "nextProtocol" : 1060
  }
}
Exemplo de Resposta HTTP nenhum item encontrado 404 Not Found
HTTP/1.1 404 Not Found
Content-Type: application/json;charset=UTF-8
Content-Length: 128

{
  "meta" : {
    "errors" : [ {
      "error" : "NotFoundException",
      "message" : "Nenhum item encontrado."
    } ]
  }
}

15.8. Campos retornados

Os campos retornados abaixo se referem a todas as consultas por itens vendidos pelo varejo.

Path Type Description

ide.id

String

ID composto por chaveNatural + tpAmb + nItem + tpEvento, onde a chave natural é a parte da chave de acesso suprimindo o Código Numérico e dígito verificador. Na NFe e NFCe são os primeiros 35 dígitos. No caso do SAT que é composto por 37 dígitos. O tpEvento só vai existir caso seja um cancelamento.

ide.tpAmb

Number

1 - Produção; 2 - Homologação

ide.serie

Number

Série do Documento Fiscal. Série 890-899 de uso exclusivo para emissão de NF-e avulsa, pelo contribuinte com seu certificado digital, através do site do Fisco (procEmi=2). Série 900-999 - uso exclusivo de NF-e emitidas no SCAN.

ide.nDF

Number

Número do Documento Fiscal. Está ligado diretamente à série. Sempre que a série for alterada, como por exemplo, na entrada de contingência SCAN, a numeração deve ser iniciada em "1".

ide.dhEmi

String

Data e Hora de emissão do Documento Fiscal (AAAA-MM-DDThh:mm:ss) ex.: 2012-09-01T13:00:00. Se não informada, será considerada a data e hora do processamento do arquivo.

ide.tpNF

Number

0 - entrada; 1 - saída; 9 - Cancelamento. Por padrão 1 - saída, caso não seja informada.

ide.finNFe

Number

1 - NF-e normal; 2 - NF-e complementar; 3 - NF-e de ajuste; 4 - Devolução / Retorno; 9 - Cancelamento

emit.doc

String

Informar o CNPJ ou CPF do emitente. Deverá ser informado com os zeros não significativos.

emit.xNome

String

Razão Social ou nome do emitente.

emit.cUF

String

Código da UF do emitente do Documento Fiscal de acordo com a tabela do IBGE de código de unidades da federação (Tabela de UF, Município e País).

emit.xMun

String

Nome do município do emitente

dest.doc

String

Informar o CNPJ ou CPF ou identificador de Estrangeiro do destinatário, preenchendo os zeros não significativos. Não informar o conteúdo da TAG se a operação for realizada com o exterior. Identificação do Estrangeiro não precisa ser preenchido com zeros

dest.xNome

String

Razão Social ou nome do destinatário

prod.nItem

Number

Número do item (1-990)

prod.cEAN

String

GTIN (Global Trade Item Number) do produto, antigo código EAN ou código de barras. Preencher com o código GTIN-8, GTIN-12, GTIN-13 ou GTIN-14 (antigos códigos EAN, UPC e DUN-14), não informar o conteúdo da TAG em caso de o produto não possuir este código.

prod.xProd

String

Descrição do produto ou serviço

prod.ncm

String

Código NCM (8 posições), informar o gênero (posição do capítulo do NCM) quando a operação não for de comércio exterior (importação/exportação) ou o produto não seja tributado pelo IPI. Em caso de serviço informar o código 99. (v. 2.0)

prod.cfop

String

Código Fiscal de Operações e Prestações

prod.tipoOperacao

String

Tipo de Operação da nota. VENDA, DEVOLUCAO, TRANSFERENCIA, CANCELAMENTO.

prod.uCom

String

Unidade Comercial. Informar a unidade de comercialização do produto.

prod.qCom

Numero

Quantidade Comercial. Informar a quantidade de comercialização do produto. (v. 2.0).

prod.imei

String

IMEI do item extraído do campo infAdProd.

otherImeis

String Array

IMEIs extraídos dos campos infCpl e ObsCont.

16. Noov Files

16.1. Recursos

Estes recursos permitem receber e acessar arquivos obtidos pelo serviço noov-file-watcher.

O serviço noov-file-watcher é um serviço a ser instalado em clientes com o objetivo de monitorar uma determinada pasta para identificar, de forma não intrusiva a criação e alteração de novos arquivos, encaminhando somente a parte alterada para esse recurso.

É responsabilidade desse recurso, manter o versionamento das alterações ocorridas nos arquivos monitorados pelo noov-file-watcher.

É responsabilidade desses recursos organizar os arquivos de acordo com cada instância de noov-file-watcher que esteja enviando arquivos.

16.1.1. Requisitar Lista de Instâncias

GET /files

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista das instâncias de noov-file-watcher que enviaram arquivos para o servidor. Como os arquivos são disponibilizados de forma hierárquica, simulando uma estrutura de pastas, o primeiro nível dessa hierarquia é a identificação da instância.

Exemplo de Requisição HTTP
GET /v1/app/files HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM1MTAsImV4cCI6MTU3Mzc1NTMxMH0.lYSois42b_S_RPYdvAiExmNYY4jp9M27r6ZTFgAJnKA
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/files' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM1MTAsImV4cCI6MTU3Mzc1NTMxMH0.lYSois42b_S_RPYdvAiExmNYY4jp9M27r6ZTFgAJnKA'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 174

{
  "data" : [ "my_instance_id" ],
  "pagination" : {
    "number" : 0,
    "pageSize" : 10,
    "pageTotalElements" : 1,
    "totalElements" : 1,
    "lastPage" : true
  }
}

16.1.2. Requisitar Arquivos de Instância

GET /files/{instanceId}

Esse recurso utiliza paginação dinâmica.

  • Este recurso retorna uma lista de Meta-informações de arquivos enviados por uma determinada instância (definida em {instanceId}).

Table 10. /v1/app/files/{instanceId}
Parameter Description

instanceId

identificador da instância que inseriu os arquivos desejados

Table 11. Campos da Resposta
Path Type Description

data[].applicationId

Number

identificação da aplicação autorizada a utilizar o serviço

data[].instanceId

String

identificação da instância que de onde o arquivo foi obtido

data[].originalPath

String

caminho original do arquivo na instância de onde ele foi obtido

data[].pathHash

String

hash gerado a partir do caminho original do arquivo

data[].sendDate

Number

timestamp de quando o arquivo foi enviado para o servidor

data[].updateDate

Number

timestamp da última atualização do arquivo

data[].fileSize

Number

tamanho total do arquivo

pagination.number

Number

número da página retornada

pagination.pageSize

Number

número de elementos na página

pagination.pageTotalElements

Number

número todal de elementos na página retornada

pagination.totalElements

Number

número todal de elementos

pagination.lastPage

Boolean

flag indicador de última página

Exemplo de Requisição HTTP
GET /v1/app/files/my_instance_id HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM1MTAsImV4cCI6MTU3Mzc1NTMxMH0.lYSois42b_S_RPYdvAiExmNYY4jp9M27r6ZTFgAJnKA
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/files/my_instance_id' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM1MTAsImV4cCI6MTU3Mzc1NTMxMH0.lYSois42b_S_RPYdvAiExmNYY4jp9M27r6ZTFgAJnKA'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 675

{
  "data" : [ {
    "id" : 1,
    "applicationId" : 2,
    "instanceId" : "my_instance_id",
    "originalPath" : "C:\\\\original\\\\path1.txt",
    "pathHash" : "oginal-path-hash",
    "sendDate" : 1505415866000,
    "updateDate" : 1505839005000,
    "fileSize" : 512
  }, {
    "id" : 2,
    "applicationId" : 2,
    "instanceId" : "my_instance_id",
    "originalPath" : "C:\\\\original\\\\path2.txt",
    "pathHash" : "oginal-path-hash2",
    "sendDate" : 1505415867000,
    "updateDate" : 1505839005000,
    "fileSize" : 512
  } ],
  "pagination" : {
    "number" : 0,
    "pageSize" : 10,
    "pageTotalElements" : 2,
    "totalElements" : 2,
    "lastPage" : true
  }
}
Exemplo de Resposta HTTP Instância Não Encontrada
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 134

{
  "data" : [ ],
  "pagination" : {
    "number" : 0,
    "pageSize" : 10,
    "pageTotalElements" : 0,
    "totalElements" : 0
  }
}
Exemplo de Resposta HTTP Instância Não Possui Arquivos
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 134

{
  "data" : [ ],
  "pagination" : {
    "number" : 0,
    "pageSize" : 10,
    "pageTotalElements" : 0,
    "totalElements" : 0
  }
}

16.1.3. Requisitar Informações de Arquivo

GET /files/{instanceId}/{originalPathHash}
  • Este recurso permite obter meta-informações do arquivo especificado em {pathHash}

Table 12. /v1/app/files/{instanceId}/{originalPathHash}
Parameter Description

instanceId

identificador da instância que inseriu os arquivos desejados

originalPathHash

hash gerado a partir do caminho/nome original do arquivo entregue ao servidor

Table 13. Campos da Resposta
Path Type Description

applicationId

Number

identificação da aplicação autorizada a utilizar o serviço

instanceId

String

identificação da aplicação autorizada a utilizar o serviço

originalPath

String

caminho original do arquivo de na instância onde ele foi obtido

pathHash

String

hash gerado a partir do caminho original do arquivo

createdAt

Number

timestamp de quando o arquivo foi enviado para o servidor

updatedAt

Number

timestamp da última atualização do arquivo

Exemplo de Requisição HTTP
GET /v1/app/files/my_instance_id/oginal-path-hash HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM1MTAsImV4cCI6MTU3Mzc1NTMxMH0.lYSois42b_S_RPYdvAiExmNYY4jp9M27r6ZTFgAJnKA
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/files/my_instance_id/oginal-path-hash' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM1MTAsImV4cCI6MTU3Mzc1NTMxMH0.lYSois42b_S_RPYdvAiExmNYY4jp9M27r6ZTFgAJnKA'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 207

{
  "applicationId" : 2,
  "instanceId" : "my_instance_id",
  "originalPath" : "C:\\\\original\\\\path1.txt",
  "pathHash" : "oginal-path-hash",
  "createdAt" : 1505415866000,
  "updatedAt" : 1505839005000
}

16.1.4. Requisitar Conteúdo de Arquivo

GET /files/{instanceId}/{pathHash}/download
  • Este recurso permite obter o conteúdo do arquivo especificado em {pathHash} na sua versão mais recente junto com suas meta-informações.

O resultado deste recurso é retornado em formato xml.

Exemplo de Requisição HTTP
GET /v1/app/files/my_instance_id/oginal-path-hash/download HTTP/1.1
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM1MTAsImV4cCI6MTU3Mzc1NTMxMH0.lYSois42b_S_RPYdvAiExmNYY4jp9M27r6ZTFgAJnKA
Host: rest.noov.com.br
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/files/my_instance_id/oginal-path-hash/download' -i -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM1MTAsImV4cCI6MTU3Mzc1NTMxMH0.lYSois42b_S_RPYdvAiExmNYY4jp9M27r6ZTFgAJnKA'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/xml;**charset=UTF-8**
Content-Length: 447

<?xml version="1.0" encoding="UTF-8"?>
<file>
    <metadata>
        <applicationId>2</applicationId>
        <instanceId>my_instance_id</instanceId>
        <originalPath>C:\\original\\path1.txt</originalPath>
        <hashPath>oginal-path-hash</hashPath>
        <createdAt>2017-09-14T16:04:26-03:00</createdAt>
        <updatedAt>2017-09-19T13:36:45-03:00</updatedAt>
    </metadata>
    <content>&lt;![CDATA[conteudoS3]]&gt;</content>
</file>

16.1.5. Enviar Arquivos ao Servidor

POST /files
  • Este recurso permite que arquivos sejam enviados ao servidor. Este recurso permite recebimento de arquivos em partes, sendo que cada envio deve informar o offset dessa parte referente ao arquivo completo e o temanho dessa parte.

Fica de responsabilidade do cliente da api gerenciar os offsets das partes de arquivos enviadas ao servidor. A api não irá validar conflitos de offset durante o recebimento de arquivos. É importante manter um valor constante das partes enviadas ao servidor.

O cliente noov-file-watcher irá enviar o conteúdo dos arquivos separados em partes de até 10240 bytes. Em caso de alteração de arquivo, somente o conteúdo compreendido no bloco de 10240 bytes alterado será reenviado ao servidor.

Exemplo de Requisição HTTP
POST /v1/app/files HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM1MTAsImV4cCI6MTU3Mzc1NTMxMH0.lYSois42b_S_RPYdvAiExmNYY4jp9M27r6ZTFgAJnKA
Host: rest.noov.com.br
Content-Length: 1629

{
  "applicationId" : 1,
  "instanceId" : "INSTANCEID",
  "originalPath" : "C:\\original\\path.txt",
  "pathHash" : "Qzpcb3JpZ2luYWxccGF0aC50eHQ=",
  "sendDate" : 1506826800000,
  "updateDate" : 1506826800000,
  "offset" : 0,
  "size" : 1024,
  "content" : "YWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQ=="
}
Exemplo de Comando Curl para Requisitar
$ curl 'https://rest.noov.com.br/v1/app/files' -i -X POST -H 'Content-Type: application/json;charset=UTF-8' -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MGUzYzhkNy03MmIzLThmOTUtNGRmYi0zZmExOTE2ODM3MjAiLCJpYXQiOjE1NzM3NTM1MTAsImV4cCI6MTU3Mzc1NTMxMH0.lYSois42b_S_RPYdvAiExmNYY4jp9M27r6ZTFgAJnKA' -d '{
  "applicationId" : 1,
  "instanceId" : "INSTANCEID",
  "originalPath" : "C:\\original\\path.txt",
  "pathHash" : "Qzpcb3JpZ2luYWxccGF0aC50eHQ=",
  "sendDate" : 1506826800000,
  "updateDate" : 1506826800000,
  "offset" : 0,
  "size" : 1024,
  "content" : "YWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQ=="
}'
Exemplo de Resposta HTTP 200 OK
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Content-Length: 10

2085984185

O valor retornado por essa requisição é um inteiro representando o CR32 calculado do conteúdo enviado.