Integração de Produtos

Você sabe o que é produto para e-commerce?

Temos duas linhas de raciocínio:

Produto simples, é aquele composto de um Sku. Produto configurável, também conhecido como produto com variação, é aquele composto de um ou mais Skus.

O que é SKU?

É a unidade de estoque vendida. Sku significa (Stock keeping unit).

Produto Simples:

O produto simples é único, não possui variação de SKU.
Exemplo: Livro, CD e DVD.

Importante saber: mesmo o produto simples necessita de atributos/características que fortaleçam a identidade do produto.

Exemplo: Cd de Jazz.

Os atributos, podem ser utilizados para filtros em suas categorias.

Produto Configurável:

Um produto configurável (variável) por sua vez, possui uma ou mais variações (ex: cor e tamanho ou cor e voltagem) que o diferenciem em relação a um produto correspondente.

Exemplo:

Produto: Geladeira de 300 Litros;

Variação 1: Geladeira de 300 litros - 110 v

Variação 2: Geladeira de 300 litros - 220 v

Produto: Geladeira de 400 Litros;

Variação 1: Geladeira de 400 litros - 110 v

Variação 2: Geladeira de 400 litros - 220 v

No exemplo acima, cada uma das geladeiras possui um ID_SKU diferente e estão vinculados a um código de Produto (Produto Pai).

Estrutura de Produtos:

A seguir, vamos demonstrar como fica a estrutura de um produto, considerando o Json, formato utilizado na Skyhub para a manipulação de informações.





Melhores práticas para o cadastro de produtos:

Seguir uma convenção (padrão) no cadastro de produtos, é uma prática muito importante. Listamos então, algumas das melhores práticas para lhe ajudar a ter ainda mais sucesso no Marketplace.

• Utilize um padrão para a composição dos códigos SKU´s, porém nunca repita um código, seja para produto simples ou produto configurável (variável);

• Certifique-se que o código do produto não possua espaços em branco, normalmente oriundos de cópia direta da célula de arquivos em Excel;

• Os produtos precisam ser enviados com o peso em quilograma (KG) e as dimensões em centímetro (cm). Por exemplo: A dimensão deve ser enviado no formato inteiro. 10 cm, 20 cm, etc. Caso envie 0.10, 0.20, a skyhub entenderá este formato como metro.



Um pouco de “prática”:

Para realizar qualquer tipo de requisição, você sempre deverá preencher o Header, com as informações geradas por nós da Skyhub, considerando o modelo abaixo:

X-User-Email: email@dominio.com.br
x-Api-Key: XXXXXXXXX
x-accountmanager-key: XXXXXXXXXX
Accept: application/json;charset=UTF-8
Content-Type: application/json

POST

Para cadastrarmos um produto via API, você deverá utilizar o método POST direcionando sua requisição para o nosso endpoint (https://api.skyhub.com.br).

Abaixo, temos um exemplo que contempla uma variação de código COD_SKU_VARIACAO

{
"product": {
"sku": "CODIGO_SKU",
"name": "DESCRICAO PRODUTO",
"description": "CRIAR PRODUTO COM UMA VARIAÇÃO",
"status": "enabled",
"price": 30.00,
"promotional_price": 29.90,
"cost": 0.0,
"weight": 0.100,
"height": 20,
"width": 30,
"length": 20,
"brand": "Marca",
"nbm": "98769898",
"categories": [{
"code": "01",
"name": "SKYHUB HOMOLOGAÇÃO"
}],
"images": [
"http://d26lpennugtm8s.cloudfront.net/stores/154/284/products/camiseta-lisa-verde-bandeira-algodo-p-ao-gg-pronta-entrega-355901-mlb20431777049_092015-o-07fadec89e5ed54705c1b9ab5411dec8-1024-1024.jpg"
],
"specifications": [{
"key": "Especicações do Produto PAI",
"value": "Especificações do Produto PAI"
}],
"variations": [{
"sku": "COD_SKU_VARIACAO",
"qty": 10,
"ean": "9876543210987",
"images": [
"http://d26lpennugtm8s.cloudfront.net/stores/154/284/products/camiseta-lisa-verde-bandeira-algodo-p-ao-gg-pronta-entrega-355901-mlb20431777049_092015-o-07fadec89e5ed54705c1b9ab5411dec8-1024-1024.jpg"
],
"specifications": [{
"key": "Cor",
"value": "Verde"
}, {
"key": "Tamanho",
"value": "M"
}]
}],
"variation_attributes": [
"Cor",
"Tamanho"
]
}
}

Abaixo, temos um exemplo que contempla um produto simples

{
"product": {
"sku": "200",
"name": "PRODUTO SIMPLES",
"description": "PRODUTO SIMPLES",
"status": "enable",
"qty": 0,
"price": 100,
"promotional_price": 89.99,
"cost": 49.00,
"weight": 3,
"height": 1,
"width": 1,
"length": 1,
"brand": "SKYHUB",
"ean": "",
"nbm": "",
"categories": [{
"code": "01",
"name": "skyhub homologação"
}],
"images": [
""
],
"specifications": [{
"key": "Tamanho",
"value": "M"
}]
}
}

GET

Para realizar uma consulta na API, por exemplo, verificarmos o resultado do POST feito com o exemplo acima, devemos utilizar o método GET, preenchendo o Header como mostrado anteriormente e mantendo sua requisição como abaixo:

https://api.skyhub.com.br/products/CODIGO_SKU

Basicamente, a requisição consiste do endpoint/products/Codigo_SKU (código que se deseja consultar).

Resultado:

{"sku": "CODIGO_SKU", "name": "DESCRICAO PRODUTO", "description": "CRIAR

Em nosso exemplo, listamos um resultado “resumido” pois o retorno completo traria diversas páginas, contemplando todos os atributos que compõem o produto, mas, basicamente a resposta de nosso GET trouxe o cadastro do produto propriamente dito.

PUT

A maneira utilizada para a atualização de informações, é por meio do método PUT, mantendo nosso Header e conservando o atributo no qual deseja fazer a atualização.
Para realizar a atualização, devemos manter o endpoint https://api.skyhub.com.br/products/CODIGO_SKU

Neste exemplo, estamos alterando somente o nome do produto, então todos os demais atributos foram retirados da requisição, para facilitar o entendimento.

{
"product": {
"name": "NOME DO PRODUTO ALTERADO!"
}
}

Obs: Você poderá também, conservar todos os atributos de sua requisição e alterar os valores dos quais deseja efetuar uma atualização.