Ir para o conteúdo

Solicitação de Coleta

POST http://dominiotransportadora.com.br/api/v1/coleta/

Disparo de dados para como ordem de coleta.

A Transportadora pode preparar um webservice para receber as solicitações de coleta do Embarcador.

A Frete Rápido irá disparar o conjunto de dados abaixo, através de uma requisição.

This is a alt text.

Envio:

Parâmetros do corpo da requisição:

Nome
Descrição Formato / Exemplo Informado
canal Canal utilizado no momento da cotação/simulação String Opcional
data_coleta Data de coleta informada pelo Embarcador Date ("YYYY-MM-DD") Opcional
data_faturamento Data de faturamento do pedido na loja Datetime (YYYY-MM-DD HH:mm:ss) Opcional
data_pedido Data de criação do pedido na loja Datetime (YYYY-MM-DD HH:mm:ss) Opcional
destinatario Objeto com dados de endereço do destinatário da carga Objeto em json *
 cnpj_cpf CNPJ ou CPF do destinatário da carga. Você pode validar se é Pessoa Física ou Jurídica pela quantidade de caracteres. String de 11 ou 14 caracteres sem formatação *
 email E-mail do destinatário da carga String Opcional
 endereco Objeto em json *
  bairro Bairro do destinatário String *
  cep CEP do destinatário String *
  cidade Cidade do destinatário String *
  complemento Complemento do endereço (se houver) String Opcional
  estado Estado do destinatário (exemplo: ES) String *
  numero Número do local do destinatário String *
  rua Logradouro do destinatário String *
 inscricao_estadual Inscrição Estadual do destinatário da carga String Se Pessoa Jurídica
 nome Nome ou Razão Social do destinatário da carga String *
 telefone Telefone do destinatário da carga String Opcional
expedidor Objeto com dados de endereço do expedidor da carga (se houver) Objeto em json Se houver expedidor
 cnpj CNPJ do expedidor da carga String de 14 caracteres sem formatação Se houver expedidor
 endereco Objeto em json Se houver expedidor
  bairro Bairro do expedidor String Se houver expedidor
  cep CEP do expedidor / retirada da carga String Se houver expedidor
  cidade Cidade do expedidor String Se houver expedidor
  complemento Complemento do endereço (se houver) String Opcional
  estado Estado do expedidor (exemplo: MG) String Se houver expedidor
  numero Número do local do expedidor String Se houver expedidor
  rua Logradouro do expedidor String Se houver expedidor
 inscricao_estadual Inscrição Estadual do expedidor da carga String Se houver expedidor
 nome_fantasia Nome Fantasia do expedidor da carga String Se houver expedidor
 razao_social Razão Social do expedidor da carga String Se houver expedidor
forma_pagamento Forma de pagamento do pedido String Opcional
id_frete Identificador único de cada cotação/frete na Frete Rápido. Através deste é possível obter e relacionar todos os outros dados. String de 13 caracteres *
identificador Identificador fornecido pela transportadora String Opcional
metadados Array de objetos contendo chave e valor com as informações adicionais da contratação Array de objeto JSON contendo até 64 itens Opcional
 chave Nome do atributo de informação extra da solicitação de coleta, que são informadas pelo embarcador, deve ser nome único para chave String de até 255 caracteres Se houver metadados
 valor Corresponde ao valor do atributo da chave informada. String de até 255 caracteres Se houver metadados
nfe Objeto com as informações da NF-e Objeto em json Opcional
 chave_acesso Chave da NF String Se houver NF
 data_emissao Data de emissão NF DateTime ("YYYY-MM-DD hh:mm:ss") Condicionalmente
 numero Número da NF String Se houver NF
 quantidade_volumes Quantidade de Volumes da NF String Condicionalmente
 serie Série da NF String Se houver NF
 valor Valor da NF Numérico (float) Se houver NF
 valor_itens Valor dos itens na NF Numérico (float) Condicionalmente
nfes Array de objetos com as informações da(s) NF-e(s) Array de objetos Opcional
 chave_acesso Chave da NF String Se houver NF
 data_emissao Data de emissão NF DateTime ("YYYY-MM-DD hh:mm:ss") Condicionalmente
 numero Número da NF String Se houver NF
 quantidade_volumes Quantidade de Volumes da NF String Condicionalmente
 serie Série da NF String Se houver NF
 valor Valor da NF Numérico (float) Se houver NF
 valor_itens Valor dos itens na NF Numérico (float) Condicionalmente
numero_pedido Número do pedido na loja String Opcional
obs_cliente Observação(texto livre) do cliente sobre o pedido String Opcional
remetente Objeto com dados de endereço do remetente / origem da carga Objeto em json *
 cnpj CNPJ do remetente da carga String de 14 caracteres sem formatação *
 endereco Objeto em json *
  bairro Bairro do remetente String *
  cep CEP do remetente String *
  cidade Cidade do remetente String *
  complemento Complemento do endereço (se houver) String Opcional
  estado Estado do remetente (exemplo: SP) String *
  numero Número do local do remetente String *
  rua Logradouro do remetente String *
 inscricao_estadual Inscrição Estadual do remetente da carga String *
 nome_fantasia Nome Fantasia do remetente da carga String *
 razao_social Razão Social do remetente da carga String *
servico Serviço informado na cotação de frete String *
tipo_cobranca String com o tipo de cobrança do frete CIF ou FOB *
token Token de integração String de 32 caracteres *
token_oferta Identificador da cotação realizada antes do frete ter sido contratado String *
transportadora Objeto com as informações da Transportadora Objeto em json *
 cnpj CNPJ da Transportadora String *
 valor_cotado Valor Cotado String *
valor_pedido Valor total do pedido Numérico(float) Opcional
volumes Array com um ou mais objetos dos volumes informados Array em json *
Objeto com as características do volume informado Objeto em json *
 altura Altura do volume unitário em metros Numérico (float) *
 comprimento Comprimento do volume unitário em metros Numérico (float) *
 descricao Descrição do volume concatenada com a descrição do produto informado String Opcional
 largura Largura do volume unitário em metros Numérico (float) *
 peso_real Peso total (em Kg) dos volumes informados. Exemplo: 6 volumes com 0.5 Kg cada, o valor informado será de 3 Kg Numérico (float) *
 quantidade Quantidade de volumes iguais e do mesmo tipo Numérico (inteiro) *
 sku SKU do produto informado String Opcional
 tag Tag do volume/produto informado String Opcional
 tipo Tipo do volume informado (vide tabela de tipos de volumes) Numérico (inteiro) *
 valor Valor total do conjunto de volumes informados. Exemplo: 6 volumes custando R$20,00 cada, então o valor informado será R$120,00 Numérico (float) *

* Informados sempre

Exemplo de envio:

    {
        "canal": "",
        "data_coleta": "",
        "data_faturamento": "",
        "data_pedido": "",
        "destinatario": {
            "cnpj_cpf": "",
            "email": "",
            "endereco": {
                "bairro": "",
                "cep": "",
                "cidade":"",
                "complemento": "",
                "estado":"",
                "numero": "",
                "rua": "",
            },
            "inscricao_estadual": "",
            "nome": "",
            "telefone": "", 
        },
        "expedidor": {
            "cnpj": "",
            "endereco": {
                "bairro": "",
                "cep": "",
                "cidade": "",
                "complemento": "",
                "estado": "",
                "numero": "",
                "rua": ""
            },
            "inscricao_estadual": "",
            "nome_fantasia": "",
            "razao_social": ""
        },
        "forma_pagamento": "",
        "id_frete": "",
        "identificador":"",
        "metadados": [
            {
                "chave": "",
                "valor": ""
            }
        ],
        "nfe": {
            "chave_acesso": "",
            "data_emissao": "",
            "numero": "",
            "quantidade_volumes": "",
            "serie": "",
            "valor": 0.00,
            "valor_itens": 0.00
        },
        "nfes": [
            {
            "chave_acesso": "",
            "data_emissao": "",
            "numero": "",
            "quantidade_volumes": "",
            "serie": "",
            "valor": 0.00,
            "valor_itens": 0.00
            },
            {
            "chave_acesso": "",
            "data_emissao": "",
            "numero": "",
            "quantidade_volumes": "",
            "serie": "",
            "valor": 0.00,
            "valor_itens": 0.00
            }
        ],
        "numero_pedido": "",
        "obs_cliente": "",
        "remetente": {
            "cnpj": "",
            "endereco": {
                "bairro": "",
                "cep": "",
                "cidade": "",
                "complemento": "",
                "estado": "",
                "numero": "",
                "rua": ""
            },
            "inscricao_estadual": "",
            "nome_fantasia": "",
            "razao_social": ""
        },
        "servico": "",
        "tipo_cobranca": "",
        "token": "",
        "token_oferta":"",
        "transportadora": {
            "cnpj": "",
            "valor_cotado": ""
        },
        "valor_pedido": 0.00,
        "volumes": [
            {
                "altura": 0.00,
                "comprimento": 0.00,
                "descricao": "",
                "largura": 0.00,
                "peso_real": 0.00,
                "quantidade": 0,
                "sku": "",
                "tag": "",
                "tipo": 0,
                "valor": 0.00
            },
            {
                "altura": 0.00,
                "comprimento": 0.00,
                "descricao": "",
                "largura": 0.00,
                "peso_real": 0.00,
                "quantidade": 0,
                "sku": "",
                "tag": "",
                "tipo": 0,
                "valor": 0.00
            }
        ],
    }
Resposta:

  • Se a requisição obtiver sucesso, deve ser retornado o código de resposta HTTP 200. Senão, pode ser retornado uma mensagem de erro para que possamos investigar.

Reprocessamento

  • O reprocessamento automático acontece nos casos onde o status do retorno seja:
Condição Status
igual a HTTP 408
igual a HTTP 429
maior ou igual a HTTP 500

Cada tentativa é realizada até que a API retorne um status de sucesso ou até que o número máximo de tentativas seja atingido.

O intervalo entre as tentativas de reprocessamento é relativo à tentativa anterior, ou seja, cada nova tentativa ocorre após um tempo adicional em relação à última tentativa, e não em relação ao momento de criação do webhook. O exemplo a seguir ilustra esse processo de re-tentativas, com o tempo adicional aplicado a cada nova tentativa:

  • Tentativa 1: após 1 minuto (acumulado: 1 minuto)
  • Tentativa 2: após 5 minutos (acumulado: 6 minutos)
  • Tentativa 3: após 10 minutos (acumulado: 16 minutos)

Veja abaixo a tabela completa com as tentativas e seus respectivos tempos:

Tentativa Tempo
1 1min
2 2min
3 3min
4 5min
5 10min
6 15min
7 30min
8 1h
9 1h30min
10 2h
11 2h30min
12 4h
13 5h
14 7h
  • Ao solicitar o reprocessamento pelo Dash FR, caso o retorno não seja bem-sucedido, serão realizadas até 3 tentativas, todas com um intervalo de 1 minuto. As tentativas seguem a mesma lógica cumulativa utilizada no fluxo padrão, acumulando o tempo total decorrido entre elas.
Tentativa Tempo
1 1min
2 1min
3 1min
Voltar ao topo