Queues - Fila de Integração

Para garantir a integridade e consistência da nossa API, desenvolvemos a Queues (Fila de integração de pedidos), onde você obtém as atualizações de seus pedidos.

Basta fazer uma requisição para o endpoint:

http://api.skyhub.com.br/queues/orders

Disponibilizamos os pedidos na queues nas seguintes situações/status:

Code: book_product
Label: Pagamento Pendente (SkyHub)
Type: NEW
Code: order_canceled
Label: Cancelado (SkyHub)
Type: CANCELED
Code: payment_received
Label: Aprovado (SkyHub)
Type: APPROVED

Disponibilizamos também situações/Status abaixo somente para parceiros que utilizam o método B2W Entrega e B2W Entregas Direct.

Code: order_shipped
Label: Pedido Enviado (SkyHub)
Type: SHIPPED
Code: Complete
Label: Completo (entregue) (SkyHub)
Type: DELIVERED
  • Code: é o campo que recebe o código do status do pedido na API.

  • Label: é o campo que recebe o nome do status do pedido na API.

Como consumir a queues?

Para consumir a queues, a integração deve realizar um GET no seguinte endpoint:

https://api.skyhub.com.br/queues/orders

A consulta da queues retornará apenas um pedido de cada vez, sendo necessário consumir e deletar até o momento em que não listar novos pedidos para serem integrados.

Melhores práticas de integração da queues:

Porque deletar o pedido da queues?

A integração precisa deletar o pedido que foi consumido em até 5 minutos, caso contrario o pedido será enfileirado na integração novamente, sendo necessário um novo consumo desse pedido, e não é isso que queremos! Por esse motivo é necessário à ação de deletar o pedido da queues, dessa forma a Skyhub entende que a integração conseguiu salvar o pedido em sua plataforma/ERP.

Como deletar o pedido da queues?

Para deletar a queues, a integração deve realizar um DELETE no seguinte endpoint:

https://api.skyhub.com.br/queues/orders/{code}

Exemplo de delete da queues:

Após as ações acima, é possível verificar se ocorreu o consumo dos pedidos no painel da Skyhub, visível para o seller e via API para integração, abaixo segue o exemplo de consulta no painel da Skyhub:

Exemplo de pedido não consumido da queues no painel Skyhub = NÃO ENVIADO

Exemplo de pedido consumido queues no painel Skyhub = ENVIADO

Exemplo de como consultar via API se o pedido foi consumido ou não da queues:

Realize um GET via API no pedido, no seguinte endpoint:

https://api.skyhub.com.br/orders/{code}

O Campo sync_status informa se o pedido foi consumido ou não.

É obrigatório consumir todos os pedidos da fila de integração (Queues) com status NEW, pra que os produtos sejam empenhados em seus estoques.

Porque é obrigatório?

Para não ter divergência de estoque Disponível X estoque Empenhado

Se não consumir os pedidos o que pode acontecer? Podemos vender produtos sem estoque, uma vez que o empenho não existe na plataforma receberemos o estoque como Estoque Disponível, consequentemente disponibilizaremos o estoque errado para o Marketplace.

Vale Lembrar:

  • As plataformas que não se adequarem a essa regra de negócios podem arcar com prejuízo do seller.

  • Para a Skyhub, deve ser enviado apenas o estoque disponível.