Importação de Pedido
POST https://freterapido.com/api/external/embarcador/v1/order-import?token=[seu_token]
Método que permite realizar a importação de dados de um pedido, realizando uma nova cotação e contratação (solicitação de coleta) seguidamente, sem a necessidade de passar pelos endpoints de cotação e contratação separadamente.
Atenção:
A regra de solicitação de coleta deve ser informada para que a API realize a contratação do frete da forma esperada, seja pela opção de menor preço, menor prazo ou mesma transportadora informada no pedido.
Basta enviar uma requisição com os parâmetros estabelecidos abaixo.
Observação quanto ao envio de nota fiscal:
O envio da NFe é opcional pois há um endpoint específico para o envio da nota em fluxo posterior, porém caso o frete permaneça sem NFe, não será possível realizar o rastreio com as transportadoras.
Envio:
Parâmetros da URL:
Nome | Descrição | Formato / Exemplo | Obrigatório |
---|---|---|---|
token | Token de integração | String de 32 caracteres | * |
*Obrigatório |
Parâmetros do corpo da requisição:
Nome | Descrição | Formato / Exemplo | Obrigatório |
---|---|---|---|
shipper | Objeto com dados da conta do remetente | Objeto em json | * |
registered_number | CNPJ da conta registrada na Frete Rápido | String Numérica de 14 caracteres sem formatação | * |
platform_code | Código da plataforma integrada. Solicite o código da sua plataforma à Frete Rápido. | String | * |
recipient | Objeto com alguns dados do destinatário | Objeto em json | * |
type | Tipo de destinatário | Inteiro 0 = Pessoa Física 1 = Pessoa Jurídica |
* |
registered_number | Registro federal do destinatário (CNPJ ou CPF) | String | * |
state_inscription | Registro estadual do destinatário (Inscrição Estadual) | String | Opcional |
name | Nome ou Razão Social do destinatário | String de até 255 caracteres | * |
Endereço de e-mail do destinatário para casos de necessidade de contato por parte da transportadora | String | Opcional | |
phone | Telefone do destinatário para casos de necessidade de contato pela transportadora | String Numérica sem formatação | Opcional |
address | Endereço do destinatário | Objeto em json | * |
zipcode | CEP do destinatário | String Numérica de 8 dígitos | * |
street | Logradouro do destinatário | String | * |
number | Número do local do destinatário | String | * |
neighborhood | Bairro do destinatário | String | * |
complement | Complemento do endereço | String | Opcional |
country | Para operações no Brasil, informar apenas BRA | String | * |
city | Cidade do destinatário | String | Obrigatório se o CEP for inválido |
state | Estado (UF) do destinatário | String | Obrigatório se o CEP for inválido |
dispatcher | Objeto com alguns dados do ponto de expedição | Objeto em json | * |
registered_number | String Numérica de 14 caracteres sem formatação | String | * |
state_inscription | Inscrição estadual do ponto de expedição | String | * |
name | Razão Social ou Nome Fantasia do ponto de expedição | String | * |
address | Objeto com dados de endereço do expedidor da carga | Objeto em json | * |
zipcode | CEP de origem do Expedidor ¹ | String Numérica de 8 dígitos | * |
street | Logradouro do expedidor | String | * |
number | Número do local do expedidor | String | * |
neighborhood | Bairro do expedidor | String | * |
complement | Complemento do endereço | String | Opcional |
volumes | Dados dos volumes do ponto de expedição | Array de Objetos | * |
amount | Quantidade do mesmo volume/item | Inteiro | * |
category | Tipo do volume/Categoria do produto (vide tabela de tipos de volumes) | String | * |
sku | SKU do volume/produto informado | String | Opcional |
tag | Tag do volume/produto informado | String | Opcional |
description | Descrição do produto/item | String | Opcional |
height | Altura em Metros do volume/produto unitário | Float | * |
width | Largura em Metros do volume/produto unitário | Float | * |
length | Comprimento em Metros do volume/produto unitário | Float | * |
unitary_price | Valor unitário do volume/item informado | Float | * |
unitary_weight | Peso unitário (em Kg) do volume/item | Float | * |
consolidate | Consolidar volume? Default: false | Booleano | Opcional |
overlaid | Sobrepor volume sobre outro? Default: false | Booleano | Opcional |
rotate | Rotacionar/Tombar volume? Default: false | Booleano | Opcional |
amount_volumes | Quantidade de volumes do produto ao qual este volume pertence. Ex.: Este volume pertence a um jogo de cama que é composto por quatro volumes no mesmo SKU, então o campo deve ser preenchido com 4. Nós usaremos esta informação para agrupar os volumes de um mesmo produto. |
Inteiro | Opcional |
metadata | Array de objetos contendo chave e valor com as informações adicionais da contratação | Array de objetos JSON contendo até 64 itens | Opcional |
key | Nome do atributo de informação extra da solicitação de coleta, deve ser nome único para chave | String de até 255 caracteres | Se houver metadados |
value | Corresponde ao valor do atributo da chave informada | String de até 255 caracteres | Se houver metadados |
carrier | Os dados abaixo serão utilizados na comparação ao contratar a mesma transportadora | Objeto em json | Se type_hiring = 3 |
name | Caso o "name" seja informado e o "registered_number" esteja vazio, o "name" será utilizado na comparação junto com o "service" ao contratar o frete da mesma transportadora | String | Obrigatório se registered_number não for informado |
registered_number | Caso o "registered_number" seja informado, será utilizado junto com o "service" na comparação ao contratar o frete da mesma transportadora | String | Obrigatório se name não for informado ou se not_quote for true |
service | O service é utilizado na comparação ao contratar o frete da mesma transportadora | String | * |
not_quote | Importação do pedido sem recotação do frete | Booleano | * |
delivery_time | Prazo de entrega em dias | Inteiro | Somente se not_quote for true |
original_delivery_time | Prazo de entrega original em dias | Inteiro | Somente se not_quote for true |
type_hiring | A propriedade "type_hiring" será utilizada para definir a regra de contratação. Se deverá ser a de (1) menor preço, ou (2) menor prazo, ou a (3) mesma transportadora informada na requisição. Caso "not_quote" seja true, "type_hiring" deve ser 3 | Inteiro | * |
total_price | Preço total do pedido. Se informado, substituirá proporcionalmente o valor informado nos volumes. ² | Numérico | Opcional |
channel | Canal de venda | String | Opcional |
subchannel | Subcanal de venda | String | Opcional |
identification | Identificador externo da cotação na plataforma | String | Opcional |
order_number | Número do pedido na loja | String | Opcional |
parent_order_number | Número do pedido pai na loja | String | Opcional |
order_date | Data de criação do pedido na loja | Datetime (YYYY-MM-DD HH:mm:ss) | Obrigatório se not_quote for true |
invoiced_date | Data de faturamento do pedido na loja | Datetime (YYYY-MM-DD HH:mm:ss) | Opcional |
collection_date | Data de possível coleta informada pelo Embarcador. Atenção! Este poderá ser aceito ou recusado pela Transportadora. | Date | Opcional |
payment_type | Forma de pagamento do pedido | String | Opcional |
notes | Observação(texto livre) do cliente sobre o pedido | String | Opcional |
freight_value | Valor do frete cobrado ao consumidor final | Numérico (float) | Obrigatório se not_quote for true |
invoice | Array de objetos com os dados de Notas Fiscais | Array de objetos | Opcional |
number | Número da nota fiscal | String Numérica | Se Houver NF |
serie | Série da nota fiscal | String Numérica | Se Houver NF |
key | Chave de acesso da nota fiscal | String Numérica | Se Houver NF |
amount_volumes | Quantidade de Volumes da nota fiscal | String Numérica | Se Houver NF |
total_value | Valor da nota fiscal | Numérico (float) | Se Houver NF |
items_value | Valor total dos itens da nota fiscal | Numérico (float) | Se Houver NF |
issue_date | Data da emissão da nota fiscal | Datetime ("YYYY-MM-DD hh:mm:ss") | Se Houver NF |
*Obrigatório
¹ Expedidor é utilizado quando a transportadora deve coletar a mercadoria em outro local diferente do local do remetente, muito utilizado por empresas onde o remetente é de outro estado mas a mercadoria deve ser coletada no estado onde se encontra a transportadora. Exemplo: Uma empresa remetente de RS, Transportadora de SP, mercadoria deve ser coletada na filial da empresa que está em SP para ser entregue em BA. Nesse caso, o expedidor deve ser a filial de SP para que o conhecimento de transporte saia com origem SP, destino BA, ao invés de RS como origem.
² Utilize o total_price com cuidado e somente caso a sua integração não consiga informar o preço unitário dos volumes (unitary_price).
Exemplo de envio:
{
"shipper": {
"registered_number": "",
"platform_code": ""
},
"recipient": {
"type":0,
"registered_number": "",
"state_inscription": "",
"name": "",
"email": "",
"phone": "",
"address": {
"zipcode": "",
"street": "",
"number": "",
"neighborhood": "",
"complement": "",
"country": "",
"city": "",
"state": ""
}
},
"dispatcher": {
"registered_number": "",
"state_inscription": "",
"name": "",
"address": {
"zipcode": "",
"street": "",
"number": "",
"neighborhood": "",
"complement": ""
}
},
"volumes": [
{
"amount": 1,
"amount_volumes": 0,
"category": "",
"sku": "",
"tag": "",
"description": "",
"height": 0.0,
"width": 0.0,
"length": 0.0,
"unitary_price": 0.0,
"unitary_weight": 0.0,
"consolidate": false,
"overlaid": false,
"rotate": false
}
],
"metadata": [
{
"key": "",
"value": ""
}
],
"carrier": {
"name": "",
"registered_number": "",
"service": ""
},
"type_hiring": 0,
"total_price": 0.0,
"channel": "",
"subchannel": "",
"identification": "",
"order_number": "",
"parent_order_number": "",
"order_date": "",
"invoiced_date": "",
"collection_date": "",
"payment_type": "",
"notes": "",
"freight_value": 0.00,
"invoice": [
{
"number": "",
"serie": "",
"key": "",
"amount_volumes": "",
"total_value": 0.0,
"items_value": 0.00,
"issue_date": ""
},
{
"number": "",
"serie": "",
"key": "",
"amount_volumes": "",
"total_value": 0.00,
"items_value": 0.00,
"issue_date": ""
}
]
}
Resposta:
- Se a requisição obtiver sucesso, será retornado o código de resposta HTTP 200 com as ofertas que atendem a rota, conforme os dados e exemplo abaixo.
Nome | Descrição | Formato / Exemplo | Retornado |
---|---|---|---|
freight_id | Identificador do frete contratado na Frete Rápido. Pode ser utilizado para rastrear o frete. | String de 13 caracteres | Sempre |
tracking_url | URL de rastreio do frete pelo ID Frete Rápido. | String | Sempre |
{
"id_frete": "FR211104KGVOR",
"rastreio": "https://ondeestameupedido.com.br/FR211104KGVOR"
}
Erros:
- Em caso de erro, será retornado um código de erro, conforme estabelecido na lista de códigos desta API.