Etiqueta de Frete - Direct
Este Guia Técnico consiste em normatizar e estabelecer o padrão da etiqueta do serviço de frete Americanas Entrega Direct emitida no ambiente via API.

Fluxo de Operação

No caso em que os pedidos foram calculados utilizando o Serviço Próprio da Americanas, será disponibilizado uma Etiqueta de Envio que deverá ser impressa e colada a caixa do produto, para que esse pedido seja enviado de acordo. São duas modalidades, Pedidos AMERICANAS ENTREGA CORREIO e DIRECT onde cada um dos serviços tem suas peculiaridades, tanto no processo de envio quanto no momento em que a etiqueta será disponibilizada e neste tópico explicaremos como funciona o processo para AMERICANAS ENTREGA DIRECT.
DISPONIBILIDADE - A partir do momento que o pedido for FATURADO, a Americanas irá receber os dados de faturamento, processar essas informações e só então será disponibilizada uma etiqueta para impressão. PROCESSOAgrupar e Imprimir a Etiqueta anexando ao pacote e Solicitar Coleta pelo serviço da DIRECT que vai ao local e fará toda a validação (Etiquetas já tem registro de dimensões, peso, etc) e qualquer problema será recusada.

Etiqueta/PLP na conta de Teste

É importante pontuar que nas contas de TESTE, todo o fluxo dessas operações (Agrupar, Desagrupar, Imprimir e Solicitar Coleta) será feito em pedidos Americanas Entrega DIRECT com base nas etiquetas que foram PREVIAMENTE disponibilizadas. Ou seja, os pedidos que você criar na conta de teste não terão etiquetas independente do método de envio que você utilizar, pois não há comunicação entre a aba de Pedidos e PLP. Por isso recomendamos sempre durante a homologação sempre consultar quais as etiquetas estão disponíveis antes de realizar as operações e também é importante saber o fluxo de operação de cada um desses ambientes que disponibilizam a etiqueta em momentos distintos.
Todo o fluxo, seja na conta de teste ou na conta de produção, opera conforme as informações que disponibilizaremos a seguir.

Modelo de Etiqueta

Os tópicos presentes neste Guia Técnico possibilitam o correto desenvolvimento e garante a padronização de todas as etiquetas emitidas para os sellers que utilizam o serviço de frete Americanas Entrega via API. Com isso, o fluxo operacional de entrega e identificação visual por parte da operação da transportadora responsável pela entrega das encomendas é assertivo e segue o padrão pré-estabelecido pelos mesmos.

Americanas Entrega – Direct

A etiqueta do Americanas Entrega tendo como seu transportador a Direct, tem informações vitais e específicas para todo o processo de entrega e todos os campos que serão referenciados abaixo devem ser parte integrante da etiqueta desta modalidade:
  1. 1.
    Logo da Marca (Americanas Entrega)
  2. 2.
    QR Code
  3. 3.
    Símbolo de Encaminhamento
  4. 4.
    Informação de Volumes
  5. 5.
    Nota Fiscal
  6. 6.
    Número do Pedido
  7. 7.
    Número do Packing List
  8. 8.
    DtPr (informação interna Direct)
  9. 9.
    Código de Rastreamento
  10. 10.
    Código de Barras (AWB)
  11. 11.
    Dados de Recebedor (Recebedor, Assinatura, Documento)
  12. 12.
    Dados de Destinatário (Nome, Endereço, Bairro, Complemento, CEP, Cidade e UF)
  13. 13.
    Código de Barras do CEP
  14. 14.
    Campo Base/Rota (informação interna Direct)
  15. 15.
    Campo Menu de Frete (informação interna Americanas)
  16. 16.
    Dados do Remetente (Vendedor, Endereço, CEP, Cidade e UF)

Medidas e Posição dos Campos

As medidas de toda a etiqueta, assim como o devido posicionamento de todos os seus campos e elementos, devem segui exatamente as cotas abaixo:

Fontes e Logos

Todas as fontes, tamanhos e suas aplicações presentes em todos os campos que são parte integrante da etiqueta do Americanas Entrega seguem um padrão referenciado pelos transportadores do serviço e sua aplicação deve ser exatamente conforme descrito na tabela abaixo:

Fontes

Logos

O serviço Americanas Entrega é identificado por 3 variações de logos conforme ilustração abaixo. Esta identificação visual tem como objetivo principal o selo de garantia da qualidade e reputação do serviço de entrega oferecido ao cliente final, assim como são facilmente identificados dentro da operação dos transportadores com as quais o serviço de entrega é prestado, sendo assim de suma importância a presença destes elementos na etiqueta do serviço:
1
{
2
"plp": [{
3
"id": 61931,
4
"expiration_date": "2019-09-12",
5
"printed": false,
6
"type": null,
7
"orders": [{
8
"code": "158274862",
9
"customer": "Rubia",
10
"value": 20
11
}, {
12
"code": "158274859",
13
"customer": "Rubia",
14
"value": 20
15
}]
16
}]
17
}
Copied!
Este logo é aplicado quando o site utilizado para a compra do cliente for a Submarino.com
Este logo é aplicado quando o site utilizado para compra do cliente for a Shoptime.com
Atenção: Para cada entrega este logo varia conforme regras acima, e não é desejável aplicar apenas um deles como padrão fixo.

Símbolos de Encaminhamento

Os símbolos de encaminhamento são ícones que representam o conjunto de serviços de envio de encomendas dos Correios. Tais símbolos tem o objetivo de identificar visualmente a linha da encomenda e são usados para os serviços conforme abaixo:
Este símbolo é aplicado em todas as etiquetas Direct
Atenção: É expressamente proibido a inserção de qualquer logo nesta etiqueta que não seja o das marcas oficiais da Americanas reproduzidas através da marca do seu produto Americanas Entrega, contidas neste Guia.

Como obter a minha etiqueta de frete na API SkyHub?

Lista de Pedidos Aptos ao Agrupamento

1
GET /shipments/b2w/to_group
Copied!
Atualmente são disponibilizados 20 pedidos por página via API, mas nós disponibilizamos o recurso de paginação para este Endpoint.
Segue abaixo um exemplo de como realizar a paginação de pedidos aptos para agrupamento:
1
GET https://api.skyhub.com.br/shipments/b2w/to_group?offset=1
Copied!
O limite de pedidos para incluir no agrupamento atualmente é de 25.

Example Request:

1
curl --request GET \
2
--url https://api.skyhub.com.br/shipments/b2w/to_group \
3
--header 'accept: application/pdf' \
4
--header 'x-accountmanager-key: SUAXACCOUNT' \
5
--header 'x-api-key: SuaApiKey' \
6
--header 'x-user-email: [email protected]'
Copied!
Request Headers:
Name
Type
Required
Description
Example
accept
String
Required
O formato que você deseja receber o retorno da requisição
application/pdf
x-user-email
String
Required
E-mail da loja
x-api-key
String
Required
Token da loja
SuaApiKey
x-accountmanager-key
String
Required
Código identificador da sua Integração
SUAXACCOUNT
Você também pode utilizar o Header accept como application/json para receber a etiqueta em formato Json.

Responses:

200 Success - Postagem (PLP) Get - retorno 200 lista de pedidos aptos ao agrupamento

Listar/Consultar PLP's

1
GET /shipments/b2w/
Copied!
Função que permite verificar na API todas as PLP's agrupadas. No retorno será possível verificar o ID da PLP e os pedidos inseridos em cada agrupamento.

Example Request:

1
curl --request GET \
2
--url https://api.skyhub.com.br/shipments/b2w/ \
3
--header 'accept: application/json' \
4
--header 'content-type: application/json' \
5
--header 'x-accountmanager-key: SUAXACCOUNT' \
6
--header 'x-api-key: SuaAPIKey' \
7
--header 'x-user-email: [email protected]'
Copied!
Request Headers:
Name
Type
Required
Description
Example
accept
String
Required
O formato que você deseja receber o retorno da requisição
application/json
Content-type
String
Required
application/json
x-user-email
String
Required
E-mail da loja
x-api-key
String
Required
Token da loja
SuaApiKey
x-accountmanager-key
String
Required
Código identificador da sua Integração
SUAXACCOUNT

Responses:

200 Success: Postagem (PLP) Get - listar PLP's

Agrupar Pedidos em uma PLP

1
POST /shipments/b2w/
Copied!
Ao efetuar o POST para agrupar a PLP retornará a ID da PLP. Com a ID da PLP será necessário imprimir imprimir a PLP.
Example Request:
1
curl --request POST \
2
--url https://api.skyhub.com.br/shipments/b2w/ \
3
--header 'accept: application/json' \
4
--header 'content-type: application/json' \
5
--header 'x-accountmanager-key: SUAXACCOUNT' \
6
--header 'x-api-key: SuaApiKey' \
7
--header 'x-user-email: [email protected]' \
8
--data '{"order_remote_codes":["265358194401","265358194401","265358194401"]}'
Copied!
Request Headers:
Name
Type
Required
Description
Example
accept
String
Required
O formato que você deseja receber o retorno da requisição
application/json
Content-type
String
Required
application/json
x-user-email
String
Required
E-mail da loja
x-api-key
String
Required
Token da loja
SuaApiKey
x-accountmanager-key
String
Required
Código identificador da sua Integração
SUAXACCOUNT
Request Body:
1
{
2
"order_remote_codes": [
3
"265358194401",
4
"265358194401",
5
"265358194401"
6
]
7
}
Copied!
Responses:
200 Success: "message": "Plp 14 agrupada com sucesso."

Como consultar o ID da PLP através do Pedido:

Hoje é possível fazer a consulta ou descobrir qual o ID da PLP através do numero do pedido, para que haja a impressão da etiqueta.
Para descobrir o ID, deve ser utilizado a seguinte requisição.
1
GET /shipments/b2w?delivery_id={numerodopedido}
Copied!
Responses:
200 Success
Segue a baixo o body do response:
1
{
2
"plp": [{
3
"id": 61931,
4
"expiration_date": "2019-09-12",
5
"printed": false,
6
"type": null,
7
"orders": [{
8
"code": "158274862",
9
"customer": "Rubia",
10
"value": 20
11
}, {
12
"code": "158274859",
13
"customer": "Rubia",
14
"value": 20
15
}]
16
}]
17
}
Copied!

Desagrupar PLP

Desagrupar todo PLP:

Neste método mostramos como desagrupar a PLP por completo, ou seja, todos os pedidos do agrupamento. Por exemplo:
Pensando que 3 pedidos foram agrupados, retornará um ID. Ao efetuar o DELETE do ID, todos os pedidos ficarão disponíveis para que sejam agrupados novamente da forma que achar melhor, seja ela unitário ou em grupo.
1
DELETE /shipments/b2w/
Copied!
Example Request:
1
curl --request DELETE \
2
--url https://api.skyhub.com.br/shipments/b2w/ \
3
--header 'accept: application/json' \
4
--header 'content-type: application/json' \
5
--header 'x-accountmanager-key: SUAXACCOUNT' \
6
--header 'x-api-key: SuaApiKey' \
7
--header 'x-user-email: [email protected]'
Copied!
Request Headers:
Name
Type
Required
Description
Example
accept
String
Required
O formato que você deseja receber o retorno da requisição
application/json
Content-type
String
Required
application/json
x-user-email
String
Required
E-mail da loja
x-api-key
String
Required
Token da loja
SuaApiKey
x-accountmanager-key
String
Required
Código identificador da sua Integração
XACCOUNT
Request Body:
1
{
2
"plp_id": "14"
3
}
Copied!
200 - Success: "message": "Plp 14 desagrupada com sucesso."

Desagrupar um pedido da PLP:

Diferente da ação apresentado acima, nesta função é possível desagrupar apenas 1 pedido da PLP.
Por exemplo:
Foi agrupado 3 pedidos e por algum motivo você precisa desagrupar 1 pedido, ou seja, tirar um pedido do agrupamento. Neste caso, será necessário utilizar o método a baixo:
1
DELETE /shipments/b2w/{delivery_id}
Copied!
Example Request:
1
curl --request DELETE \
2
--url 'https://api.skyhub.com.br/shipments/b2w/{delivery_id}' \
3
--header 'accept: application/json' \
4
--header 'content-type: application/json' \
5
--header 'x-accountmanager-key: SUAXACCOUNT' \
6
--header 'x-api-key: SuaApiKey' \
7
--header 'x-user-email: [email protected]'
Copied!
Em {delivery_id} deve ser informado o numero do pedido a ser excluído do agrupamento.
Request Headers:
Name
Type
Required
Description
Example
accept
String
Required
O formato que você deseja receber o retorno da requisição
application/json
Content-type
String
Required
application/json
x-user-email
String
Required
E-mail da loja
x-api-key
String
Required
Token da loja
SuaApiKey
x-accountmanager-key
String
Required
Código identificador da sua Integração
XACCOUNT

Imprimir PLP - PDF

1
GET /shipments/b2w/view?plp_id={CODE}
Copied!
Para imprimir a PLP (visualizar ela diretamente para impressão seja por PDF ou JSON) é necessário primeiro efetuar o agrupamento da PLP para receber o ID e passar no Endpoint.
Caso queria retornar os dados da etiqueta em formato JSON, deve-se passar o header Accept: application/json.
Example Request:
1
curl --request GET \
2
--url 'https://api.skyhub.com.br/shipments/b2w/view?plp_id={CODE}' \
3
--header 'accept: application/pdf' \
4
--header 'content-type: application/json' \
5
--header 'x-accountmanager-key: SUAXACCOUNT' \
6
--header 'x-api-key: SuaApiKey' \
7
--header 'x-user-email: [email protected]'
Copied!
Request Headers:
Name
Type
Required
Description
Example
accept
String
Required
O formato que você deseja receber o retorno da requisição
application/json
Content-type
String
Required
application/json
x-user-email
String
Required
E-mail da loja
x-api-key
String
Required
Token da loja
SuaApiKey
x-accountmanager-key
String
Required
Código identificador da sua Integração
XACCOUNT
Responses:
200 - Success: "Response": PDF ou Json da PLP
Para imprimir a etiqueta na impressora térmica, será necessário baixar o arquivo Json da etiqueta utilizando o parâmetro: Accept: application/json. Através dele você receberá o Json da etiqueta de deverá montar o layout para a impressão

Como emitir múltiplas etiquetas?

Existem situações que o seller precisa dividir a entrega em múltiplos volumes, para que a transportadora possa recolher e transportar os itens. Nestes caso será necessário informar no momento do faturamento a quantidade de etiquetas necessárias.
Ao atualizar um pedido para faturado (INVOICE) além da chave da NFe, é necessário informar no campo "volume_qty", o número de etiquetas que será necessário.
Uma vez que não é informado o numero, entendemos que será necessário apenas 1 etiqueta e não será possível alterar a operação ou solicitar mais etiquetas.

Coleta:

Será obrigatório após a emissão da etiqueta que haja a solicitação da coleta dos pedidos. Nesta solicitação é importante que seja informado quais pedidos estão aptos para serem coletados.
Atenção: Caso não haja a solicitação, a Direct não irá efetuar a coleta.
Segue a baixo o processo para que seja confirmado a coleta:

Aptos à Coleta

Após emitir a etiqueta, você poderá consultar quais pedidos estão aptos a solicitar a coleta no endpoint abaixo:
1
GET /shipments/b2w/collectables?requested=false&offset=1
Copied!
Example Request:
1
curl--request GET\
2
--url 'https://api.skyhub.com.br/shipments/b2w/collectables?requested=false&offset=1' \
3
--header 'accept: application/json'\
4
--header 'content-type: application/json'\
5
--header 'x-accountmanager-key: SUAXACCOUNT'\
6
--header 'x-api-key: SuaApiKey'\
7
--header 'x-user-email: [email protected]'\
Copied!
Request Headers:
Name
Type
Required
Description
Example
accept
String
Required
application/json
Content-type
String
Required
application/json
x-user-email
String
Required
E-mail da loja
x-api-key
String
Required
Token da loja
SuaApiKey
x-accountmanager-key
String
Required
Código identificador da sua Integração
XACCOUNT
Query Parameters:
Name
Type
Required
Description
Example
requested
String
Required
entregas que já tiveram sua coleta solicitada
true ou false
offset
integer
opcional
paginação, inicia em 1 e hoje por padrão retorna de 20 em 20 registros.
1

Response:

200 - Success:
{ "orders": [{ "code": "158258462", "customer": "Rubia", "value": 10 }, { "code": "158260587", "customer": "Rubia", "value": 10 }, { "code": "158260588", "customer": "Rubia", "value": 10 } ] }

Solicitar Coleta

Após verificar quais os pedidos aptos a serem coletados, o próximo passo é solicitar a coleta:
1
POST /shipments/b2w/confirm_collection
Copied!
Example Request:
1
curl--request POST\
2
--url https://api.skyhub.com.br/shipments/b2w/confirm_collection \
3
--header 'accept: application/json'\
4
--header 'content-type: application/json'\
5
--header 'x-accountmanager-key: SUAXACCOUNT'\
6
--header 'x-api-key: SuaApiKey'\
7
--header 'x-user-email: [email protected]'\
8
--data '{"order_codes":["158260592"]}'
Copied!
Embora não haja limitação de pedidos no array, a Americanas possui uma limitação de 500 pedidos.
Request Headers:
Name
Type
Required
Description
Example
accept
String
Required
application/json
Content-type
String
Required
application/json
x-user-email
String
Required
E-mail da loja
x-api-key
String
Required
Token da loja
SuaApiKey
x-accountmanager-key
String
Required
Código identificador da sua Integração
XACCOUNT

Response:

200 - Success:
{
"message": "Confirmacao para coleta realizada com sucesso."
}

Cancelar o processo de coleta:

Existe a duvida se é possível cancelar a coleta após ter solicitado, pois uma vez solicitado a coleta, não era mais possível efetuar nenhuma ação, apenas aguardar a coleta por parte da Direct.
Hoje é possivel cancelar a solicitação.

Como cancelar?

Para cancelar a coleta basta enviar a requisição de Desagrupar PLP. Uma vez que a PLP é desagrupada, os pedidos voltam para a relação de pedidos aptos ao agrupamento, ou seja, será necessário fazer todo o processo de agrupamento dos pedidos.