Listagem de Notas Fiscais
Requisição para a consulta de dados dos notas fiscais de pedidos.
Método GET
https://{api_address}/orders/invoices
Código de Exemplo
<?php
$params["access_token"] = "### Chave de Acesso ###";
$params["sort"] = "id_desc";
$url = "https://{api_address}/orders/invoices/?".http_build_query($params);
ob_start();
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_exec($ch);
// JSON de retorno
$resposta = json_decode(ob_get_contents());
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
ob_end_clean();
curl_close($ch);
if($code == "200"){
//Tratamento dos dados de resposta da consulta.
}else{
//Tratamento das mensagens de erro
}
?>
string URLAuth = "https://{api_address}/orders/invoices/";
NameValueCollection queryParameters = new NameValueCollection();
queryParameters.Add("access_token", "### Chave de Acesso ###");
queryParameters.Add("sort", "id_desc");
List items = new List();
foreach (String name in queryParameters)
items.Add(String.Concat(name, "=", System.Web.HttpUtility.UrlEncode(queryParameters[name])));
string argsString = String.Join("&", items.ToArray());
WebRequest request = WebRequest.Create(URLAuth + "?" + argsString);
request.Credentials = CredentialCache.DefaultCredentials;
WebResponse response = request.GetResponse();
Console.WriteLine(((HttpWebResponse)response).StatusDescription);
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseData = reader.ReadToEnd();
Console.WriteLine(responseData);
reader.Close();
response.Close();
String url = "https://{api_address}/orders/invoices/";
Map<String, String> mapToConvert = new HashMap<>();
mapToConvert.put("access_token", "### Chave de Acesso ###");
mapToConvert.put("sort", "id_desc");
String queryString = "";
for (Entry<String, String> entry : mapToConvert.entrySet()) {
queryString += entry.getKey()+"="+ entry.getValue()+"&";
}
try {
URL obj = new URL(url+"?"+queryString);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("User-Agent", USER_AGENT);
int responseCode = con.getResponseCode();
BufferedReader in ;
if (responseCode >= 200 && responseCode < 300){
in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
}else{
in = new BufferedReader(
new InputStreamReader(con.getErrorStream()));
}
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
String resposta = response.toString();
} catch (Exception ex){
// Tratamento da Exception
}
Parâmetros enviados
Field | Type | Description |
---|---|---|
access_token | String |
Chave de acesso |
Retorno em caso de sucesso (status code 200 ou 201)
Field | Type | Description |
---|---|---|
paging | Object |
Dados de paginação |
total | Number |
Total de registros |
page | Number |
Página corrente |
offset | Number |
Registro inicial da página |
limit | Number |
Limite de registros |
maxLimit | Number |
Máximo de registros |
sort | Object[] |
Ordenação |
availableFilters | String[] |
Filtros disponíveis |
appliedFilters | String[] |
Filtros utilizados |
OrderInvoices | Object[] |
Listagem das notas fiscais |
OrderInvoice | Object |
Dados da nota fiscal |
id | Number |
Código da nota fiscal |
order_id | String |
Código do pedido |
issue_date | Date |
Data de emissão |
number | String |
Número da nota fiscal |
serie | String |
Série da nota fiscal |
value | Decimal |
Valor total da nota fiscal |
key | String |
Chave da nota fiscal |
link | String |
URL de acesso da nota fiscal |
xml_danfe | String |
XML Danfe |
created | Date |
Data de criação |
updated | Date |
Data de atualização |
ProductCfop | Object[] |
Dados dos produtos CFOP |
product_id | Number |
Código do produto |
variation_id | Number |
Código da variação |
cfop | Number |
Código CFOP |
order_invoice_id | Number |
Código da nota fiscal |
Json de retorno
HTTP/1.1 200 OK
{
"paging": {
"total": 6,
"page": 1,
"offset": 0,
"limit": 1,
"maxLimit": 50
},
"sort": [
{
"id": "desc"
}
],
"availableFilters": [],
"appliedFilters": [],
"OrderInvoices": [
{
"OrderInvoice": {
"id": "123",
"order_id": "123",
"issue_date": "2016-08-15",
"number": "213123213213",
"serie": "123",
"value": "50.85",
"key": "12345678901234567890123456789012345678901234",
"link": "http://www.link.com.br/12345678901234567890123456789012345678901234",
"xml_danfe": "### XML DANFE ###",
"created": "2016-08-16 16:19:40",
"updated": "2016-08-17 16:15:39",
"ProductCfop": [
{
"product_id": "123",
"variation_id": "0",
"cfop": "1234"
}
]
}
}
]
}
Consultar Dados da Nota Fiscal
Requisição para a consulta de dados de uma nota fiscal do pedido utilizando o código do pedido e o código da nota fical.
Método GET
https://{api_address}/orders/:order_id/invoices/:invoice_id
Código de Exemplo
<?php
$params["access_token"] = "### Chave de Acesso ###";
$url = "https://{api_address}/orders/123/invoices/456?".http_build_query($params);
ob_start();
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_exec($ch);
// JSON de retorno
$resposta = json_decode(ob_get_contents());
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
ob_end_clean();
curl_close($ch);
if($code == "200"){
//Tratamento dos dados de resposta da consulta.
}else{
//Tratamento das mensagens de erro
}
?>
string URLAuth = "https://{api_address}/orders/123/invoices/456";
NameValueCollection queryParameters = new NameValueCollection();
queryParameters.Add("access_token", "### Chave de Acesso ###");
List items = new List();
foreach (String name in queryParameters)
items.Add(String.Concat(name, "=", System.Web.HttpUtility.UrlEncode(queryParameters[name])));
string argsString = String.Join("&", items.ToArray());
WebRequest request = WebRequest.Create(URLAuth + "?" + argsString);
request.Credentials = CredentialCache.DefaultCredentials;
WebResponse response = request.GetResponse();
Console.WriteLine(((HttpWebResponse)response).StatusDescription);
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseData = reader.ReadToEnd();
Console.WriteLine(responseData);
reader.Close();
response.Close();
String url = "https://{api_address}/orders/123/invoices/456";
Map<String, String> mapToConvert = new HashMap<>();
mapToConvert.put("access_token", "### Chave de Acesso ###");
String queryString = "";
for (Entry<String, String> entry : mapToConvert.entrySet()) {
queryString += entry.getKey()+"="+ entry.getValue()+"&";
}
try {
URL obj = new URL(url+"?"+queryString);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("User-Agent", USER_AGENT);
int responseCode = con.getResponseCode();
BufferedReader in ;
if (responseCode >= 200 && responseCode < 300){
in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
}else{
in = new BufferedReader(
new InputStreamReader(con.getErrorStream()));
}
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
String resposta = response.toString();
} catch (Exception ex){
// Tratamento da Exception
}
Parâmetros enviados
Field | Type | Description |
---|---|---|
access_token | String |
Chave de acesso |
:order_id | Number |
Código do pedido |
:invoice_id | Number |
Código do pedido |
Retorno em caso de sucesso (status code 200 ou 201)
Field | Type | Description |
---|---|---|
OrderInvoices | Object[] |
Listagem das notas fiscais |
OrderInvoice | Object |
Dados da nota fiscal |
id | Number |
Código da nota fiscal |
order_id | String |
Código do pedido |
issue_date | Date |
Data de emissão |
number | String |
Número da nota fiscal |
serie | String |
Série da nota fiscal |
value | Decimal |
Valor total da nota fiscal |
key | String |
Chave da nota fiscal |
link | String |
URL de acesso da nota fiscal |
xml_danfe | String |
XML Danfe |
ProductCfop | Object[] |
Dados dos produtos CFOP |
product_id | Number |
Código do produto |
variation_id | Number |
Código da variação |
cfop | Number |
Código CFOP |
order_invoice_id | Number |
Código da nota fiscal |
Json de retorno
HTTP/1.1 200 OK
{
"OrderInvoices": [
{
"OrderInvoice": {
"id": "123",
"order_id": "123",
"issue_date": "2016-08-15",
"number": "213123213213",
"serie": "123",
"value": "50.85",
"key": "12345678901234567890123456789012345678901234",
"link": "http://link.com.br/12345678901234567890123456789012345678901234",
"xml_danfe": "### XML DANFE ###"
},
"ProductCfop": [
{
"product_id": "123",
"variation_id": "0",
"cfop": "1234",
"order_invoice_id": "123"
}
]
}
]
}
Consultar Nota por Pedido
Requisição para a consulta de dados de uma nota fiscal do pedido utilizando somente o código do pedido.
Método GET
https://{api_address}/orders/:id/invoices
Código de Exemplo
<?php
$params["access_token"] = "### Chave de Acesso ###";
$url = "https://{api_address}/orders/123/invoices/?".http_build_query($params);
ob_start();
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_exec($ch);
// JSON de retorno
$resposta = json_decode(ob_get_contents());
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
ob_end_clean();
curl_close($ch);
if($code == "200"){
//Tratamento dos dados de resposta da consulta.
}else{
//Tratamento das mensagens de erro
}
?>
string URLAuth = "https://{api_address}/orders/123/invoices/";
NameValueCollection queryParameters = new NameValueCollection();
queryParameters.Add("access_token", "### Chave de Acesso ###");
List items = new List();
foreach (String name in queryParameters)
items.Add(String.Concat(name, "=", System.Web.HttpUtility.UrlEncode(queryParameters[name])));
string argsString = String.Join("&", items.ToArray());
WebRequest request = WebRequest.Create(URLAuth + "?" + argsString);
request.Credentials = CredentialCache.DefaultCredentials;
WebResponse response = request.GetResponse();
Console.WriteLine(((HttpWebResponse)response).StatusDescription);
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseData = reader.ReadToEnd();
Console.WriteLine(responseData);
reader.Close();
response.Close();
String url = "https://{api_address}/orders/123/invoices/";
Map<String, String> mapToConvert = new HashMap<>();
mapToConvert.put("access_token", "### Chave de Acesso ###");
String queryString = "";
for (Entry<String, String> entry : mapToConvert.entrySet()) {
queryString += entry.getKey()+"="+ entry.getValue()+"&";
}
try {
URL obj = new URL(url+"?"+queryString);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("User-Agent", USER_AGENT);
int responseCode = con.getResponseCode();
BufferedReader in ;
if (responseCode >= 200 && responseCode < 300){
in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
}else{
in = new BufferedReader(
new InputStreamReader(con.getErrorStream()));
}
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
String resposta = response.toString();
} catch (Exception ex){
// Tratamento da Exception
}
Parâmetros enviados
Field | Type | Description |
---|---|---|
access_token | String |
Chave de acesso |
:id | Number |
Código do pedido |
Retorno em caso de sucesso (status code 200 ou 201)
Field | Type | Description |
---|---|---|
OrderInvoices | Object[] |
Listagem das notas fiscais |
OrderInvoice | Object |
Dados da nota fiscal |
id | Number |
Código da nota fiscal |
order_id | String |
Código do pedido |
issue_date | Date |
Data de emissão |
number | String |
Número da nota fiscal |
serie | String |
Série da nota fiscal |
value | Decimal |
Valor total da nota fiscal |
key | String |
Chave da nota fiscal |
link | String |
URL de acesso da nota fiscal |
xml_danfe | String |
XML Danfe |
ProductCfop | Object[] |
Dados dos produtos CFOP |
product_id | Number |
Código do produto |
variation_id | Number |
Código da variação |
cfop | Number |
Código CFOP |
order_invoice_id | Number |
Código da nota fiscal |
Json de retorno
HTTP/1.1 200 OK
{
"OrderInvoices": [
{
"OrderInvoice": {
"id": "123",
"order_id": "123",
"issue_date": "2016-08-15",
"number": "213123213213",
"serie": "123",
"value": "50.85",
"key": "12345678901234567890123456789012345678901234",
"link": "http://link.com.br/12345678901234567890123456789012345678901234",
"xml_danfe": "### XML DANFE ###"
},
"ProductCfop": [
{
"product_id": "123",
"variation_id": "0",
"cfop": "1234",
"order_invoice_id": "123"
}
]
}
]
}
Cadastrar Nota Fiscal
Requisição para inclusão dos dados de nota fiscal de pedidos. Deverá enviar o JSON com os dados da nota fiscal para a criação.
Método POST
https://{api_address}/orders/:id/invoices
Código de Exemplo
<?php
$params["access_token"] = "### Chave de Acesso ###";
$data["issue_date"] = "2016-08-15";
$data["number"] = "213123213213";
$data["serie"] = "123";
$data["value"] = "50.85";
$data["key"] = "12345678901234567890123456789012345678901234";
$data["link"] = "http://www.link.com.br/12345678901234567890123456789012345678901234";
$data["xml_danfe"] = "### XML DANFE ###";
$data["ProductCfop"]["product_id"] = "123";
$data["ProductCfop"]["variation_id"] = "0";
$data["ProductCfop"]["cfop"] = "1234";
$url = "https://{api_address}/orders/123/invoices/?".http_build_query($params);
ob_start();
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen(json_encode($data)))
);
curl_exec($ch);
// JSON de retorno
$resposta = json_decode(ob_get_contents());
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
ob_end_clean();
curl_close($ch);
if($code == "201"){
//Tratamento dos dados de resposta da consulta.
}else{
//Tratamento das mensagens de erro
}
?>
string URLAuth = "https://{api_address}/orders/123/invoices/";
NameValueCollection queryParameters = new NameValueCollection();
queryParameters.Add("access_token", "### Chave de Acesso ###");
List items = new List();
foreach (String name in queryParameters)
items.Add(String.Concat(name, "=", System.Web.HttpUtility.UrlEncode(queryParameters[name])));
string argsString = String.Join("&", items.ToArray());
string postString = "{";
postString += " \"issue_date\": \"2016-08-15\",";
postString += " \"number\": \"213123213213\",";
postString += " \"serie\": \"123\",";
postString += " \"value\": \"50.85\",";
postString += " \"key\": \"12345678901234567890123456789012345678901234\",";
postString += " \"link\": \"http://www.link.com.br/12345678901234567890123456789012345678901234\",";
postString += " \"xml_danfe\": \"### XML DANFE ###\",";
postString += " \"OrderStatus\": {";
postString += " \"product_id\": \"123\",";
postString += " \"variation_id\": \"0\"";
postString += " \"cfop\": \"1234\"";
postString += " }";
postString += "}";
HttpWebRequest webRequest = WebRequest.Create(URLAuth + "?" + argsString) as HttpWebRequest;
webRequest.Method = "POST";
webRequest.ContentType = "application/json";
StreamWriter requestWriter = new StreamWriter(webRequest.GetRequestStream());
requestWriter.Write(postString);
requestWriter.Close();
StreamReader responseReader = new StreamReader(webRequest.GetResponse().GetResponseStream());
string responseData = responseReader.ReadToEnd();
responseReader.Close();
webRequest.GetResponse().Close();
String url = "https://{api_address}/orders/123/invoices/";
StringBuffer response = null ;
try{
String access_token = "?access_token=### Chave de Acesso ###";
URL obj = new URL(url+access_token);
HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();
//add reuqest header
con.setRequestMethod("POST");
con.setRequestProperty("User-Agent", USER_AGENT);
con.setRequestProperty("Content-Type", "application/json");
con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
String postString = "{";
postString += " \"issue_date\": \"2016-08-15\",";
postString += " \"number\": \"213123213213\",";
postString += " \"serie\": \"123\",";
postString += " \"value\": \"50.85\",";
postString += " \"key\": \"12345678901234567890123456789012345678901234\",";
postString += " \"link\": \"http://www.link.com.br/12345678901234567890123456789012345678901234\",";
postString += " \"xml_danfe\": \"### XML DANFE ###\",";
postString += " \"OrderStatus\": {";
postString += " \"product_id\": \"123\",";
postString += " \"variation_id\": \"0\"";
postString += " \"cfop\": \"1234\"";
postString += " }";
postString += "}";
// Send post request
con.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes(postString);
wr.flush();
wr.close();
int responseCode = con.getResponseCode();
BufferedReader in ;
if (responseCode >= 200 && responseCode < 300){
in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
}else{
in = new BufferedReader(
new InputStreamReader(con.getErrorStream()));
}
String inputLine;
response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
} catch (Exception ex){
// Tratamento da Exception
}
String resposta = response.toString();
Parâmetros enviados
Field | Type | Description |
---|---|---|
access_token | String |
Chave de acesso |
:id | Number |
Código do pedido |
issue_date | Date |
Data de emissão |
number | String |
Número da nota fiscal |
serie | String |
Série da nota fiscal |
value | Decimal |
Valor total da nota fiscal |
key | String |
Chave da nota fiscal |
link | String |
URL de acesso da nota fiscal |
xml_danfe | String |
XML Danfe |
ProductCfop | Object[] |
Dados dos produtos CFOP |
product_id | Number |
Código do produto |
variation_id | Number |
Código da variação |
cfop | Number |
Código CFOP |
Estrutura de Json
POST /orders/123/invoices/?access_token=abc96fb7b1defd2496b9a9d81071fa12319b12306465e057d0ebca9bd9ab19
{
"issue_date": "2016-08-15",
"number": "213123213213",
"serie": "123",
"value": "50.85",
"key": "12345678901234567890123456789012345678901234",
"link": "http://www.link.com.br/12345678901234567890123456789012345678901234",
"xml_danfe": "### XML DANFE ###",
"ProductCfop": [
{
"product_id": "123",
"variation_id": "123",
"cfop": "1234"
}
]
}
Retorno em caso de sucesso (status code 200 ou 201)
Field | Type | Description |
---|---|---|
message | String |
Mensagem de retorno |
id | Number |
Código da nota fiscal |
code | Number |
Código do retorno (201) |
Json de retorno
HTTP/1.1 201 OK
{
"message": "Created",
"id": "123",
"code": 201
}
Atualizar Dados da Nota Fiscal
Requisição para alterar os dados de uma nota fiscal de pedidos. Deverá enviar o JSON com os dados da nota fiscal para a alteração.
Método PUT
https://{api_address}/orders/:order_id/invoices/:invoice_id
Código de Exemplo
<?php
$params["access_token"] = "### Chave de Acesso ###";
$data["issue_date"] = "2016-08-15";
$data["number"] = "213123213213";
$data["serie"] = "123";
$data["value"] = "50.85";
$data["key"] = "12345678901234567890123456789012345678901234";
$data["link"] = "http://www.link.com.br/12345678901234567890123456789012345678901234";
$data["xml_danfe"] = "### XML DANFE ###";
$data["ProductCfop"]["product_id"] = "123";
$data["ProductCfop"]["variation_id"] = "0";
$data["ProductCfop"]["cfop"] = "1234";
$url = "https://{api_address}/orders/123/invoices/456?".http_build_query($params);
ob_start();
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen(json_encode($data)))
);
curl_exec($ch);
// JSON de retorno
$resposta = json_decode(ob_get_contents());
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
ob_end_clean();
curl_close($ch);
if($code == "200"){
//Tratamento dos dados de resposta da consulta.
}else{
//Tratamento das mensagens de erro
}
?>
string URLAuth = "https://{api_address}/orders/123/invoices/456";
NameValueCollection queryParameters = new NameValueCollection();
queryParameters.Add("access_token", "### Chave de Acesso ###");
List items = new List();
foreach (String name in queryParameters)
items.Add(String.Concat(name, "=", System.Web.HttpUtility.UrlEncode(queryParameters[name])));
string argsString = String.Join("&", items.ToArray());
string putString = "{";
putString += " \"issue_date\": \"2016-08-15\",";
putString += " \"number\": \"213123213213\",";
putString += " \"serie\": \"123\",";
putString += " \"value\": \"50.85\",";
putString += " \"key\": \"12345678901234567890123456789012345678901234\",";
putString += " \"link\": \"http://www.link.com.br/12345678901234567890123456789012345678901234\",";
putString += " \"xml_danfe\": \"### XML DANFE ###\",";
putString += " \"OrderStatus\": {";
putString += " \"product_id\": \"123\",";
putString += " \"variation_id\": \"0\"";
putString += " \"cfop\": \"1234\"";
putString += " }";
putString += "}";
HttpWebRequest webRequest = WebRequest.Create(URLAuth + "?" + argsString) as HttpWebRequest;
webRequest.Method = "PUT";
webRequest.ContentType = "application/json";
StreamWriter requestWriter = new StreamWriter(webRequest.GetRequestStream());
requestWriter.Write(putString);
requestWriter.Close();
StreamReader responseReader = new StreamReader(webRequest.GetResponse().GetResponseStream());
string responseData = responseReader.ReadToEnd();
responseReader.Close();
webRequest.GetResponse().Close();
String url = "https://{api_address}/orders/invoices/456";
StringBuffer response = null ;
try{
String access_token = "?access_token=### Chave de Acesso ###";
URL obj = new URL(url+access_token);
HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();
//add reuqest header
con.setRequestMethod("PUT");
con.setRequestProperty("User-Agent", USER_AGENT);
con.setRequestProperty("Content-Type", "application/json");
con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
String putString = "{";
putString += " \"issue_date\": \"2016-08-15\",";
putString += " \"number\": \"213123213213\",";
putString += " \"serie\": \"123\",";
putString += " \"value\": \"50.85\",";
putString += " \"key\": \"12345678901234567890123456789012345678901234\",";
putString += " \"link\": \"http://www.link.com.br/12345678901234567890123456789012345678901234\",";
putString += " \"xml_danfe\": \"### XML DANFE ###\",";
putString += " \"OrderStatus\": {";
putString += " \"product_id\": \"123\",";
putString += " \"variation_id\": \"0\"";
putString += " \"cfop\": \"1234\"";
putString += " }";
putString += "}";
// Send put request
con.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes(putString);
wr.flush();
wr.close();
int responseCode = con.getResponseCode();
BufferedReader in ;
if (responseCode == 200){
in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
}else{
in = new BufferedReader(
new InputStreamReader(con.getErrorStream()));
}
String inputLine;
response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
} catch (Exception ex){
// Tratamento da Exception
}
String resposta = response.toString();
Parâmetros enviados
Field | Type | Description |
---|---|---|
access_token | String |
Chave de acesso |
:order_id | Number |
Código do pedido |
:invoice_id | Number |
Código da nota fiscal |
issue_date | Date |
Data de emissão |
number | String |
Número da nota fiscal |
serie | String |
Série da nota fiscal |
value | Decimal |
Valor total da nota fiscal |
key | String |
Chave da nota fiscal |
link | String |
URL de acesso da nota fiscal |
xml_danfe | String |
XML Danfe |
ProductCfop | Object[] |
Dados dos produtos CFOP |
product_id | Number |
Código do produto |
variation_id | Number |
Código da variação |
cfop | Number |
Código CFOP |
Estrutura de Json
PUT /orders/123/invoices/456?access_token=abc96fb7b1defd2496b9a9d81071fa12319b12306465e057d0ebca9bd9ab19
{
"issue_date": "2016-08-15",
"number": "213123213213",
"serie": "123",
"value": "50.85",
"key": "12345678901234567890123456789012345678901234",
"link": "http://www.link.com.br/12345678901234567890123456789012345678901234",
"xml_danfe": "### XML DANFE ###",
"ProductCfop": [
{
"product_id": "123",
"variation_id": "123",
"cfop": "1234"
}
]
}
Retorno em caso de sucesso (status code 200 ou 201)
Field | Type | Description |
---|---|---|
message | String |
Mensagem de retorno |
id | Number |
Código da nota fiscal |
code | Number |
Código do retorno (200) |
Json de retorno
HTTP/1.1 200 OK
{
"message": "Saved",
"id": "1234",
"code": 200
}
....
Considerações:
Com relação ao processo de nota fiscal via API, atualmente apenas informamos como deverá ser enviada a estrutura dos campos dentro da API. A Tray não disponibiliza nenhum exemplo de XML, pois o conteúdo do mesmo, ficará à cargo do integrador que está emitindo a nota fiscal, os dados á serem inseridos no xml, irá depender da configuração entre lojista x ERP.
O conteúdo do XML e os caracteres, o integrador deverá validar diretamente em sua aplicação. O integrador poderá fazer uso de um validador online de xml, para validar e ajustar o envio dos seus dados.
Quando se tratar de um pedido do Mercado Livre, é muito importante o integrador validar junto ao lojista, o fluxo da utilização do Faturar do ML, para que não venha ocorrer problemas de duplicação de notas fiscais.
Sendo assim, é de suma importância que o integrador contemple em sua rotina, a checagem do pedido, para averiguar se o mesmo já possui nota emitida ou não, pois é muito comum retornar um erro genérico do Mercado Livre na API, devido ao pedido já possuir uma nota fiscal e o integrador ficar tentando criar uma nota que já existe. Por este motivo, o fluxo do Faturador do ML deverá ser acertado entre ERP X LOJISTA.
https://vendedores.mercadolivre.com.br/agora-emitir-nf-e-gratis-e-possivel/
Comentários