❔ Dúvidas Frequentes

Sou um ERP e quero integrar à plataforma, qual o primeiro passo?

Para ERPs que desejam integrar com a plataforma Tray Corp, o primeiro passo é analisar o menu Referências de API, na categoria API Pública que disponibilizamos, você poderá visualizar todos os endpoints disponíveis, assim como a documentação dos mesmos.

Acesso ao ambiente de testes

Nós disponibilizamos uma loja teste, onde é possível efetuar os mais diversos cenários e inclusive liberar um token para que tenha acesso aos dados da loja na API. O acesso à loja deve ser solicitado por meio do e-mail [email protected]. Nesse e-mail, informe que está realizando a integração deixando seu nome, e-mail do usuário a ter acesso ao ambiente, esse ficará responsável pela criação do Token, e o nome da empresa.

Feito isso, você ira receber a URL da loja, o login e instrução para a criação de uma senha de acesso.

Para ter acesso aos dados de uma determinada loja na API, é necessário ter um token cadastrado nessa mesma loja. Se for utilizar os dados do ambiente de loja teste, consulte a documentação Criação e Autenticação do Token para saber como obter o token e as permissões para as consultas e manipulações de dados. Caso precise manipular os dados da loja de um cliente, é necessário solicitar a esse cliente a liberação de um token dentro da loja do mesmo.


Existe limite de requisições na API?

Informamos que a API possui um limite de 120 requisições por minuto.

Esse limite é por grupo de endpoint, ou seja, é possível realizar 120 requisições nos endpoints de Pedido, por exemplo, e outras 120 nos endpoints de Produtos no mesmo minuto, porém quando ultrapassados esses limites de requisições, resultará em uma mensagem de erro.

Indicamos algumas boas práticas de utilização para que a quantidade de requisições permitida atenda as necessidades da sua loja. Para mais detalhes, confira o artigo completo de Limite de Requisições.


Onde consigo o token para a API pública?

Para utilizar os endpoints no menu Referências de API você precisará de um token que libere o acesso à loja, cada loja tem o seu token e é por meio desse que as informações da mesma serão liberadas.

Saiba como obter o token da API, acessando o artigo Criação e Autenticação do Token.


Como inserir um pedido via API?

Para inserir um pedido externo na plataforma Wake Commerce, disponibilizamos o endpoint POST/PEDIDOS em Referências de API.

No artigo Inserindo um pedido externo na plataforma , descrevemos de forma detalhada como realizar este processo.


Posso agrupar produtos já cadastrados na plataforma?

Produtos existentes na plataforma já possuem seus vínculos criados. Sendo assim, não é possível agrupar produtos uma vez que eles já foram cadastrados, uma possibilidade seria vincular um produto já existente com novos produtos que ainda serão criados.

Cadastrando novos produtos agrupados
É possível agrupar produtos por variantes ou por parent id, veja como realizar esses agrupamentos acessando os conteúdos abaixo:

Produto agrupado por Variante
Produto agrupado por Parent Id


Como consultar a situação de um pedido?

Para consultar o status de um pedido específico, basta acessar o endpoint GET /pedidos/{pedidoId}/status.

Ao acessar, informe o ID do pedido, no campo pedidoId.

Consultando as situações de pedidos disponíveis na plataforma

Para consultar quais são as situações de pedidos disponíveis, utilize o endpoint GET /situacoesPedido.


Como fazer o envio de um rastreio no pedido?

Para fazer o envio de um rastreamento, o primeiro passo é obter as informações do pedido usando o endpoint "GET /pedidos/{pedidoId}".

Com as informações do pedido em mãos, acesse o endpoint "POST /pedidos/{pedidoId}/rastreamento".

Confira o passo a passo na documentação: Inserindo rastreamento e status em um pedido.


Qual a diferença entre GET /pedidos e o GET /pedidos/{pedidoId}

Em Pedido, dentro da categoria API Pública, no menu Referências de API temos diversos métodos que compõe o endpoint Pedido, dentre esses métodos temos o GET/pedidos e o GET/pedidos/{pedidoId}, o objetivo aqui é explicar a diferença entre os dois.

O GET /pedidos retorna uma lista de pedidos na ordem decrescente dentro do limite de datas determinado.

Neste método podem ser utilizados diversos parâmetros para trazer os pedidos que buscamos.

Já o GET /pedidos/{pedidoId}, retorna um pedido específico por meio da informação do id do pedido descrita no parâmetro.

Ao fazer busca o método trará todas as informações do pedido selecionado.

Para mais informações sobre o endpoint Pedido, confira a documentação Pedido.


Cotação de Frete via API Pública

Para parceiros que precisam realizar uma cotação de frete e ter as mesmas opções do site, disponibilizamos em nossa API Pública um endpoint para simular uma cotação.

Saiba como obter o token e as permissões para as consultas e manipulações de dados que vamos informar abaixo, consultado a documentação: https://wakecommerce.readme.io/docs/autenticacao-e-criacao-do-token.

Simulando uma cotação

Utilize o endpoint POST/fretes/cotações.

Informe o CEP e o identificador do produto que pode ser o SKU ou ProdutoVarianteid:

http://api.fbits.net/fretes/cotacoes?cep=80250000&tipoidentificador=Sku

{

"valorTotal":679.98,

"produtos": [

{

"identificador":"25179001048",

"quantidade":2

{

]

}
[

{

 "id": "86f88353-576b-4615-bfd8-8cd0fe10de5e",

 "nome": "Correios PAC 2 ",

 "prazo": 9,

 “tabelaFreteId”: “100”,

 "tipo": "Intelipost",

 "valor": 29,88,

 "produtos": [

    {

     "produtoVarianteId": 371858,

     "valor": 14.94

     },

    {

     "produtoVarianteId": 371858,

     "valor": 14.94

    }

   ]

Confira na tabela abaixo os detalhes sobre cada campo do JSON.

Descritivo das nomenclaturas usadas na tabela:

  • Campo: identificador do nome do campo;

  • Tipo: indica o tipo de dado a ser inserido;

  • Nível: identificador do nível do campo na estrutura hierárquica, sendo nível = 0 os campos que não estão contidos dentro de arrays e o nível = 1 para os campos contidos em arrays;

  • Obrigatoriedade: indica se o envio do campo é obrigatório ou opcional para o sucesso do GET;

  • Descrição: corresponde a descrição de um determinado campo e pode ser complementado por uma observação.

Request

CampoTipoNívelObrigatoriedadeDescrição
ValorTotaldecimal0obrigatórioValor total dos produtos.
Produtosarray0obrigatórioLista dos produtos para cotação.
identificadorstring1obrigatórioId do produto variante ou SKU.
quantidadenumber1obrigatórioQuantidade do produto.

Response

CampoTipoNívelDescrição
idstring0Id interno da cotação de frete.
nomestring0Nome da cotação de frete.
prazonumber0Prazo do envio.
tabelafreteIdnumber0Id do conector de frete correspondente a cotação.
Esse Id deverá ser enviado no POST do Pedido.
tipostring0Tipo de conector de frete.
Valores possíveis:
- Correios;
- Intelipost;
- Tabela;
- Custom;
valordecimal0Valor da cotação de frete.
produtosarray0Lista contendo os produtos cotados.
produtoVarianteIdnumber1Id do produto variante.
valordecimal1Valor do produto variante.

🚧

Atenção:

Se utilizar primeiro a cotação de frete para depois inserir um pedido via API, será necessário reservar a informação “tabelafreteId” da cotação selecionada para utilizar no POST posteriormente.


Como atualizar os dados de rastreio de um pedido?

A atualização de rastreio de um pedido pode ser realizada por meio de endpoints disponibilizados no menu Referências de API.

Primeiramente colete, por meio do endpoint GET /pedidos/{pedidoId}/rastreamento, a informação de pedidoRastreamentoId.

Para isso, acesse o endpoint GET /pedidos/{pedidoId}/rastreamento e informe o "pedidoid".

Com a informação do pedidoRastreamentoId em mãos, acesse o endpoint PUT /pedidos/{pedidoId}/rastreamento/{pedidoRastreamentoId}/parcial e informe o pedidoid e o pedidoRastreamentoId.

As informações do "pedidoRatreamento" também são localizadas no passo anterior.

Para mais informações sobre rastreamento ou dados fiscais, consulte a documentaçãoInserindo rastreamento e status em um pedido.


Se eu deixar de enviar um parâmetro que já existe, ele será mantido?

Hoje na nossa API, caso o produto tenha um parâmetro preenchido e ao enviar um PUT esse campo não for informado com o valor no qual ele está preenchido, o campo irá atualizar como nulo e ficará vazio.

Exemplo: Cadastrei um produto pelo método POST /produto e informei o parâmetro "colecao" com o valor "verão", depois ao enviar o PUT /produto/{identificador} para manter o produto atualizado, esse mesmo parâmetro eu não passei em minha requisição, a API vai receber ele como Null e o valor "verão" será removido do campo.

Por tanto é importante que todo o campo preenchido no produto seja enviado no PUT para evitar que o campo fique vazio.