Produto Variável

O produto variável é aquele onde há um agrupamento de dois ou mais SKUs tendo um atributo diferenciador para distingui-los. Nesta seção temos a estrutura para a criação desse tipo de produto

Produto variável é aquele em que um ou mais SKUs são agrupados; estes SKUs serão diferenciados através de atributos específicos, como tamanho ou cor, por exemplo.

Mesmo para produtos variáveis é necessário haver atributos e informações que fortaleçam a identidade do item, como um título claro e características bem definidas em sua ficha técnica. Acompanhe o exemplo abaixo:

Quando tratamos uma camiseta é necessário fornecer uma breve descrição de suas características dentro do título, a fim de chamar a atenção de um potencial cliente (por exemplo, Título: Camiseta Branca Lisa). Além disso, também faz-se necessário incluir atributos de ficha técnica, como material, fabricante, marca, dentre outros para enriquecer o cadastro do item quando anunciado.

Esses atributos de ficha técnica favorecem a localização do produto na realização de filtros nos sites de e-commerce e o título destaca a escolha do cliente final ao realizar as buscas.

Mas não é só isso, existem vários outros requisitos necessários para a integração com o marketplace, como o correto preenchimento do peso, dimensões, status e indexação de imagens.

A seção Integração: Produto desta documentação é capaz de fornecer maiores detalhes sobre os pré-requisitos necessários para a integração de produtos com o marketplace

A seguir confira a estrutura esperada para a criação de um produto variável via API.

Estrutura do JSON

A estrutura básica para a criação de um produto variável contém campos que devem ser preenchidos com os formatos de dados determinados pela API.

A seguir são apresentados os campos que constituem a estrutura de um produto variável e o formato a ser utilizado para inclusão dos dados. A não utilização dos formatos corretos para preenchimento dos dados pode acarretar em reprova proveniente do marketplace, impossibilitando a publicação da oferta.

{
    "product": { // Object
        "sku": "CodigoSKU_agrupador", // String 
        "name": "Título", // String
        "description": "Descrição", // String
        "status": "enabled", // String
        "price": 0.0, // Double
        "promotional_price": 0.0, // Double
        "cost": 0, // Double
        "weight": 0, // Double
        "height": 0, // Double
        "width": 0, // Double
        "length": 0, // Double
        "brand": "Marca", // String        
        "nbm": "NCM (Nomenclatura Comum do Mercosul)", // String
        "images": [ // Array
            "URL da imagem" // String
        ],
        "specifications": [ // Array
            { // Object
                "key": "Atributo", // String
                "value": "Valor do atributo" // String
            }
        ],
        "variations": [ // Array
             { // Object }          
        ],
        "variation_attributes":[ // Array
          "atributo1",
          "atributo2",
          "atributo3"
          ]
    }
}

POST - Cadastrando um produto variável

Para realizar o cadastro de um produto variável via API deverá ser utilizado o método POST para o seguinte endpoint:

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

Request headers:

Key

Value

X-User-Email

email_de_usuario

X-Api-Key

token_de_integracao de sua conta SkyHub

X-Accountmanager-key

token_account único de cada Plataforma/ERP

Accept

application/json

Content-Type

application/json

A diferença para o JSON do produto simples é que no cadastro da variação é informado o array variations com as informações dos SKUs agrupados, seus atributos diferenciadores e outras especificações.

Todo produto variável deve contar com o array variation_attributes, onde deverão ser informados os atributos responsáveis pela diferenciação das variações.

Por exemplo, ao cadastrar uma camiseta e preencher para os SKUs filhos - aqueles vinculados a um SKU agrupador/pai - o atributo "Tamanho" para diferenciar uma variação da outra, é esperado que o mesmo atributo ("Tamanho") seja informado no array variation_attributes.

Request body:

{
    "product": {
        "sku": "CodigoSKU_agrupador",
        "name": "Título",
        "description": "Descrição detalhada do produto criado",
        "status": "enabled", // Status (ativo/enabled ou inativo/disabled)
        "price": 0.0, // Preço
        "promotional_price": 0.0, // Preço promocional
        "cost": 0, // Custo do produto para o seller
        "weight": 0, // Peso
        "height": 0, // Altura
        "width": 0, // Largura
        "length": 0, // Comprimento
        "brand": "Marca",
        "nbm": "NBM/NCM",
        "images": [
            ""
        ],
        "specifications": [ // Objeto responsável pela inclusão de atributos
            {
                "key": "Atributo",
                "value": "Valor do atributo"
            }
        ],
        "variations": [
            {
                "sku": "CodigoSKU_variacao",
                "qty": 0, // Estoque
                "ean": "EAN (European Article Number ou Numeração Europeia de Artigos, o código de barras do item)",
                "images": [
                    "https:// URL da imagem" // Imagem da variação
                ],
                "specifications": [ // Objeto responsável pela inclusão de atributos
                    {
                        "key": "Atributo",
                        "value": "Valor do atributo"
                    },
                    {
                        "key": "Atributo",
                        "value": "Valor do atributo"
                    },
                    {
                        "key": "price", 
                        "value": "0.0" // Preço da variação
                    },
                    {
                        "key": "promotional_price",
                        "value": "0.0" // Preço promocional da variação
                    }
                ]
            }
        ],
        "variation_attributes": [ // Objeto responsável pela inclusão do atributo diferenciador
            "Atributo_diferenciador_1",
            "Atributo_diferenciador_2"
        ]
    }
}

Há um limite de 100 variações que podem ser inclusas na estrutura de um produto, sendo necessário respeitar tal limitação para não haverem reprovas ao encaminhar o SKU variável para a API.

Example request:

Veja abaixo o JSON de criação de um produto com variações, sendo o SKU P2022 o ID do produto "pai" e os SKUs F2023 e F2024 os IDs das variações:

curl --location --request POST 'https: //api.skyhub.com.br/products' \
--header 'X-User-Email: email_de_usuario' \
--header 'X-Api-Key: token_de_integracao de sua conta SkyHub' \
--header 'X-Accountmanager-Key: token_account único de cada Plataforma/ERP' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
    "product": {
        "sku": "P2022",
        "name": "Camisa polo branca",
        "description": "[A descrição deve trazer detalhes do produto, com a finalidade de atrair o consumidor final] Camiseta polo masculina, disponível na cor branca e em 2 tamanhos diferentes.",
        "status": "enabled",
        "price": 00.00,
        "promotional_price": 00.00,
        "cost": 0.0,
        "weight": 0.100,
        "height": 20,
        "width": 30,
        "length": 20,
        "brand": "Skyhub",
        "nbm": "98769898",
        "images": [
            ""https: //a-static.mlcdn.com.br/800x560/camiseta-masculina-gola-polo-branca-piquet-com-elastano-basica-lisa-ixoria/gdmstore/11100354223/39945a2c0162febe1ae663fb7019d5ca.jpeg"
        ],
        "specifications": [
            {
                "key": "Especicações do Produto PAI",
                "value": "Especificações do Produto PAI"
            }
        ],
        "variations": [
            {
                "sku": "F2023",
                "qty": 10,
                "ean": "9876543210987",
                "images": [
                    ""https: //a-static.mlcdn.com.br/800x560/camiseta-masculina-gola-polo-branca-piquet-com-elastano-basica-lisa-ixoria/gdmstore/11100354223/39945a2c0162febe1ae663fb7019d5ca.jpeg"
                ],
                "specifications": [
                    {
                        "key": "Cor",
                        "value": "Branca"
                    },
                    {
                        "key": "Tamanho",
                        "value": "P"
                    },
                    {
                        "key": "price",
                        "value": "50.00"
                    },
                    {
                        "key": "promotional_price",
                        "value": "40.00"
                    }
                ]
            },
            {
                "sku": "F2024",
                "qty": 10,
                "ean": "9876543210985",
                "images": [
                    ""https: //a-static.mlcdn.com.br/800x560/camiseta-masculina-gola-polo-branca-piquet-com-elastano-basica-lisa-ixoria/gdmstore/11100354223/39945a2c0162febe1ae663fb7019d5ca.jpeg"
                ],
                "specifications": [
                    {
                        "key": "Cor",
                        "value": "Branca"
                    },
                    {
                        "key": "Tamanho",
                        "value": "M"
                    },
                    {
                        "key": "price",
                        "value": "50.00"
                    },
                    {
                        "key": "promotional_price",
                        "value": "40.00"
                    }
                ]
            }
        ],
        "variation_attributes": [
            "Cor",
            "Tamanho"
        ]
    }
}'

Last updated