Ficha de produto
Antes de entendermos como funciona o sistema de envio através da API, é preciso ter em mente como funciona a inteligência de nosso backend e suas validações.
Para todo novo produto (independentemente de ser Simples ou Variante), nós possuímos uma etapa de validação que antecede a efetivo cadastro dele, ou seja, existe um importador que verifica cada campo enviado para garantir que todos os dados estão de acordo as nossas regras de negócio. Durante esse processo, o SKU pode ser recusado e isso fará com que o item não seja indexado.
Todo esse processo, nós chamamos de validação de "ficha" e ela pode passar por até 4 status possíveis, que são: AGUARDANDO PROCESSAMENTO : 100% das novas fichas enviadas, passam obrigatoriamente por este status e ele representa que, o SKU está aguardando a fila de validação automática e, em até 48 horas (ao máximo), terá uma validação.
AGUARDANDO PROCESSAMENTO:urante a validação, o importador encontrou uma inconsistência em um dos campos e o lojista precisa efetuar a correção, caso contrário não será indexado.
VÁLIDO: ficha foi validada e está correta, mas como foi passado EAN, nós encontramos um produto de outro lojista que utiliza o mesmo código, já cadastrado na Via. Neste status, o lojista deve optar por associar o item ao sugerido (MATCH) ou escolher a opção de NOVO PRODUTO para que façamos a indexação em uma PDP exclusiva do item. A ficha fica no máximo 48hrs neste status e caso o optin não tenha sido realizado, o status é alterado para FICHA INTEGRADA e o SKU será indexado automaticamente como NOVO.
FICHA INTEGRADA: Status finalizador e significa que não necessário mais nenhuma ação do lojista, pois o SKU será indexado em seu catálogo. O prazo para refletir no front é de até 72hrs a partir que este status é obtido.
-
Match (associação) = Gera buybox e faz com que, mesmo o produto sendo novo, tenha a mesma relevância do detentor do anúncio. A prioridade de sugestão sempre será de produtos do nosso 1P.
-
Novo produto = Uma PDP (Página do produto) exclusiva do item é gerada, mas sem relevância alguma.
URLs
Nós disponibilizamos um ambiente de homologação para a realizarem todos os testes. Os endpoints a seguir tem como base as seguintes URLs:
Base URL homologação (HLG)https://api-mktplace-hlg.viavarejo.com.br/
https://api-mktplace.viavarejo.com.br/
Collection Postman
A collection do Postman já com os endpoints está disponível no link abaixo.
Lembre-se de Inserir o “client_id” e “access_token” gerados na criação da App aqui no portal para que seja possível realizar as chamadas com sucesso.
Caso não saiba como criar uma App, clique aqui e veja como fazer
Cadastro de produto simples
Cadastro de produto simples consiste em, envio de um produto que não possui variantes.
Método POST
Composição do Header:
- access_token: Chave de acesso da loja
- client_id: Chave de acesso da integradora
- Accept: application/json
- Content-Type: application/json
Endpoint (HLG):
https://api-mktplace-hlg.viavarejo.com.br/api/v4/sandbox/api-front-importer-v4/jersey/import/itens
Endpoint (PRD):
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens/
Body da chamada
{
"itens": [
{
"idItem": "IDITEM-123",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [
{
"idUda": "14617",
"nome": "Vibração",
"valor": "Sim"
},
{
"idUda": "3158",
"nome": "Dobrável",
"valor": "Sim"
}
],
"skus": [
{
"idSkuLojista": "SKU-123",
"gtin": "1234567891011",
"imagens": [
"http://imagem1.jpg",
"http://imagem2.jpg",
"http://imagem3.jpg",
"http://imagem4.jpg"
],
"preco": {
"oferta": "99,99",
"padrao": "99,99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": []
}
],
"garantia": ""
}
]
}
Atenção
No cadastro de produto simples, os campos "idItem e idSkuLojista" devem ser SEMPRE diferentes para cada SKU. Caso envie 2 ou mais SKUs contendo o mesmo código em um dos campos, o 1º validado será cadastrado com sucesso e o 2º será recusado por já existir ficha com aquele determinado código.
Lista de retornos possíveis
Ação | Status code | Mensagem |
---|---|---|
Body correto | 201 | - |
Body contendo ficha já existente | 400 | Erro: Sku já possui o status como Ficha Integrada |
Body sem idItem | 400 | Parâmetro obrigatório - idItem |
Body sem skuLojista | 400 | Parâmetro obrigatório - idSkuLojista |
Response
Avaliamos o sucesso pelo HTTP Status Code que deverá ser : 201 - Created
Importante!
Para utilizar como bloco utilize uma abertura e um fechamento para a Tag colocando o conteúdo a ser destacado no interior da Tag.
Obter sucesso no envio da ficha, NÃO significa que o produto foi cadastrado com sucesso, significa apenas que a ficha foi ENVIADA com sucesso. A partir deste momento, o nosso importador fará validações em todos os campos enviados, havendo possibilidade de recusa. O recomendado é consultarem o status da ficha através do GET /import/itens/{idItem}/sku/{idSkuLojista}/status.
Lembrando que, há 4 status possíveis de se obter nestas validações, para entendê-los, basta clicar aqui e conferir no topo deste fórum.
Cadastro de múltiplos produtos simples
Cadastro de produto simples consiste em, envio de produto que não possui variantes. Assim como da maneira unitária (1 SKU por POST), também é possível enviar 2 ou mais produtos simples, dentro de um mesmo POST.
Método: POST
Composição do Header:
- access_token: Chave de acesso da loja
- client_id: Chave de acesso da integradora
- Accept: application/json
- Content-Type: application/json
Endpoint (HLG):
https://api-mktplace-hlg.viavarejo.com.br/api/v4/sandbox/api-front-importer-v4/jersey/import/itens
Endpoint (PRD):
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens/
Body da chamada
{
"itens": [
{
"idItem": "1111",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [],
"skus": [
{
"idSkuLojista": "S-K-U_1",
"gtin": "1111111111111",
"imagens": [
"http://imagem1_S-K-U_1.jpg",
"http://imagem2_S-K-U_1.jpg",
"http://imagem3_S-K-U_1.jpg",
"http://imagem4_S-K-U_1.jpg"
],
"preco": {
"oferta": "19,99",
"padrao": "19,99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.1
},
"atributos": []
}
],
"garantia": ""
},
{
"idItem": "2222",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [],
"skus": [
{
"idSkuLojista": "S-K-U_2",
"gtin": "2222222222222",
"imagens": [
"http://imagem1_S-K-U_2.jpg",
"http://imagem2_S-K-U_2.jpg",
"http://imagem3_S-K-U_2.jpg",
"http://imagem4_S-K-U_2.jpg"
],
"preco": {
"oferta": "29,99",
"padrao": "29,99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.2,
"largura": 0.2,
"profundidade": 0.2,
"peso": 0.2
},
"atributos": []
}
],
"garantia": ""
},
{
"idItem": "3333",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [],
"skus": [
{
"idSkuLojista": "S-K-U_3",
"gtin": "3333333333333",
"imagens": [
"http://imagem1_S-K-U_3.jpg",
"http://imagem2_S-K-U_3.jpg",
"http://imagem3_S-K-U_3.jpg",
"http://imagem4_S-K-U_3.jpg"
],
"preco": {
"oferta": "39,99",
"padrao": "39,99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.3,
"largura": 0.3,
"profundidade": 0.3,
"peso": 0.3
},
"atributos": []
}
],
"garantia": ""
},
{
"idItem": "4444",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [],
"skus": [
{
"idSkuLojista": "S-K-U_4",
"gtin": "4444444444444",
"imagens": [
"http://imagem1_S-K-U_4.jpg",
"http://imagem2_S-K-U_4.jpg",
"http://imagem3_S-K-U_4.jpg",
"http://imagem4_S-K-U_4.jpg"
],
"preco": {
"oferta": "49.99",
"padrao": "49.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.4,
"largura": 0.4,
"profundidade": 0.4,
"peso": 0.4
},
"atributos": []
}
],
"garantia": ""
},
{
"idItem": "5555",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [],
"skus": [
{
"idSkuLojista": "S-K-U_5",
"gtin": "5555555555555",
"imagens": [
"http://imagem1_S-K-U_5.jpg",
"http://imagem2_S-K-U_5.jpg",
"http://imagem3_S-K-U_5.jpg",
"http://imagem4_S-K-U_5.jpg"
],
"preco": {
"oferta": "59.99",
"padrao": "59.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": []
}
],
"garantia": ""
},
{
"idItem": "6666",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [],
"skus": [
{
"idSkuLojista": "S-K-U_6",
"gtin": "6666666666666",
"imagens": [
"http://imagem1_S-K-U_6.jpg",
"http://imagem2_S-K-U_6.jpg",
"http://imagem3_S-K-U_6.jpg",
"http://imagem4_S-K-U_6.jpg"
],
"preco": {
"oferta": "69.99",
"padrao": "69.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.6,
"largura": 0.6,
"profundidade": 0.6,
"peso": 0.6
},
"atributos": []
}
],
"garantia": ""
},
{
"idItem": "7777",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [],
"skus": [
{
"idSkuLojista": "S-K-U_7",
"gtin": "7777777777777",
"imagens": [
"http://imagem1_S-K-U_7.jpg",
"http://imagem2_S-K-U_7.jpg",
"http://imagem3_S-K-U_7.jpg",
"http://imagem4_S-K-U_7.jpg"
],
"preco": {
"oferta": "79,99",
"padrao": "79,99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.7,
"largura": 0.7,
"profundidade": 0.7,
"peso": 0.7
},
"atributos": []
}
],
"garantia": ""
},
{
"idItem": "8888",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [],
"skus": [
{
"idSkuLojista": "S-K-U_8",
"gtin": "8888888888888",
"imagens": [
"http://imagem1_S-K-U_8.jpg",
"http://imagem2_S-K-U_8.jpg",
"http://imagem3_S-K-U_8.jpg",
"http://imagem4_S-K-U_8.jpg"
],
"preco": {
"oferta": "89.99",
"padrao": "89.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.8,
"largura": 0.8,
"profundidade": 0.8,
"peso": 0.8
},
"atributos": []
}
],
"garantia": ""
},
{
"idItem": "9999",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [],
"skus": [
{
"idSkuLojista": "S-K-U_9",
"gtin": "9999999999999",
"imagens": [
"http://imagem1_S-K-U_9.jpg",
"http://imagem2_S-K-U_9.jpg",
"http://imagem3_S-K-U_9.jpg",
"http://imagem4_S-K-U_9.jpg"
],
"preco": {
"oferta": "99,.9",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.9,
"largura": 0.9,
"profundidade": 0.9,
"peso": 0.9
},
"atributos": []
}
],
"garantia": ""
},
{
"idItem": "1010",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [],
"skus": [
{
"idSkuLojista": "S-K-U_10",
"gtin": "0000000000000",
"imagens": [
"http://imagem1_S-K-U_10.jpg",
"http://imagem2_S-K-U_10.jpg",
"http://imagem3_S-K-U_10.jpg",
"http://imagem4_S-K-U_10.jpg"
],
"preco": {
"oferta": "199.99",
"padrao": "199.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.10,
"largura": 0.10,
"profundidade": 0.10,
"peso": 0.30
},
"atributos": []
}
],
"garantia": ""
}
]
}
Atenção!
No cadastro de produto simples, os campos "idItem e idSkuLojista" devem ser SEMPRE diferentes para cada SKU. Caso envie 2 ou mais SKUs contendo o mesmo código em um dos campos, o 1º que for validado será cadastrado com sucesso e o 2º será recusado por já existir ficha com aquele determinado código
Ação | Status code | Mensagem |
---|---|---|
Body correto | 201 | - |
Body contendo ficha já existente | 400 | Erro: Sku já possui o status como Ficha Integrada |
Body sem idItem | 400 | Parâmetro obrigatório - idItem |
Body sem skuLojista | 400 | Parâmetro obrigatório - idSkuLojista |
Response
Avaliamos o sucesso pelo HTTP Status Code que deverá ser : 201 - Created
Importante!
Obter sucesso no envio da ficha, NÃO significa que o produto foi cadastrado com sucesso, significa apenas que a ficha foi ENVIADA com sucesso. A partir deste momento, o nosso importador fará validações em todos os campos enviados, havendo possibilidade de recusa. O recomendado é consultarem o status da ficha através do GET /import/itens/{idItem}/sku/{idSkuLojista}/status.
Lembrando que há 4 status possíveis de se obter nestas validações, para entendê-los, basta clicar aqui e conferir no topo deste fórum.
Cadastro de produtos com variantes (Obrigatórias)
Cadastro de produto variante consiste em, envio de produtos iguais, mas com características diferentes.
Por exemplo: Uma furadeira, ela possui todas as características iguais, porém a voltagem (110v/ 220v/ Bilvolt) é diferente. Neste caso, a variante é a Voltagem.
Para grande parte de nossa árvore mercadológica, existem obrigatoridades de atributo variante, então é de extrema importância que o nosso parceiro consiga realizar o envio do produto de maneira adequada.
Atenção!
O limite é de no máximo 100 variantes por SKU.
Método: POST
Composição do Header:
- access_token: Chave de acesso da loja
- client_id: Chave de acesso da integradora
- Accept: application/json
- Content-Type: application/json
Endpoint (HLG):
https://api-mktplace-hlg.viavarejo.com.br/api/v4/sandbox/api-front-importer-v4/jersey/import/itens
Endpoint (PRD):
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens/
Body da chamada
{
"itens": [
{
"idItem": "IDITEM-123",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 766,
"atributos": [
{
"idUda": "9688",
"nome": "Gênero",
"valor": "Masculino"
},
{
"idUda": "10542",
"nome": "Ocasião",
"valor": "Festa"
}
],
"skus": [
{
"idSkuLojista": "S-K-U_1",
"gtin": "1111111111111",
"imagens": [
"http://imagem1_S-K-U_1.jpg",
"http://imagem2_S-K-U_1.jpg",
"http://imagem3_S-K-U_1.jpg",
"http://imagem4_S-K-U_1.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "P"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Branco"
}
]
},
{
"idSkuLojista": "S-K-U_2",
"gtin": "2222222222222",
"imagens": [
"http://imagem1_S-K-U_2.jpg",
"http://imagem2_S-K-U_2.jpg",
"http://imagem3_S-K-U_2.jpg",
"http://imagem4_S-K-U_2.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "M"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Branco"
}
]
},
{
"idSkuLojista": "S-K-U_3",
"gtin": "3333333333333",
"imagens": [
"http://imagem1_S-K-U_3.jpg",
"http://imagem2_S-K-U_3.jpg",
"http://imagem3_S-K-U_3.jpg",
"http://imagem4_S-K-U_3.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "G"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Branco"
}
]
},
{
"idSkuLojista": "S-K-U_4",
"gtin": "444444444444",
"imagens": [
"http://imagem1_S-K-U_4.jpg",
"http://imagem2_S-K-U_4.jpg",
"http://imagem3_S-K-U_4.jpg",
"http://imagem4_S-K-U_4.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "P"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Vermelho"
}
]
},
{
"idSkuLojista": "S-K-U_5",
"gtin": "5555555555555",
"imagens": [
"http://imagem1_S-K-U_5.jpg",
"http://imagem2_S-K-U_5.jpg",
"http://imagem3_S-K-U_5.jpg",
"http://imagem4_S-K-U_5.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "M"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Vermelho"
}
]
},
{
"idSkuLojista": "S-K-U_6",
"gtin": "666666666666",
"imagens": [
"http://imagem1_S-K-U_6.jpg",
"http://imagem2_S-K-U_6.jpg",
"http://imagem3_S-K-U_6.jpg",
"http://imagem4_S-K-U_6.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "G"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Vermelho"
}
]
},
{
"idSkuLojista": "S-K-U_7",
"gtin": "7777777777777",
"imagens": [
"http://imagem1_S-K-U_7.jpg",
"http://imagem2_S-K-U_7.jpg",
"http://imagem3_S-K-U_7.jpg",
"http://imagem4_S-K-U_7.jpg"
],
"preco": {
"oferta": "99,99",
"padrao": "99,99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "P"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Marrom"
}
]
},
{
"idSkuLojista": "S-K-U_8",
"gtin": "8888888888888",
"imagens": [
"http://imagem1_S-K-U_8.jpg",
"http://imagem2_S-K-U_8.jpg",
"http://imagem3_S-K-U_8.jpg",
"http://imagem4_S-K-U_8.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "M"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Marrom"
}
]
},
{
"idSkuLojista": "S-K-U_9",
"gtin": "9999999999999",
"imagens": [
"http://imagem1_S-K-U_9.jpg",
"http://imagem2_S-K-U_9.jpg",
"http://imagem3_S-K-U_9.jpg",
"http://imagem4_S-K-U_9.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "G"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Marrom"
}
]
}
],
"garantia": ""
}
]
}
Atenção!
No cadastro de produtos variantes, o campo "idItem" deve ser único para todos os SKUs do mesmo item. Caso envie idItem diferente para cada variante, nosso importador irá considerar que são itens distintos e portando serão indexados separadamente no front/ PDP (Página de produto), ou seja, uma página exclusiva para cada item com seus respectivos atributos.
Nenhum produto inserido no body, poderá estar cadastrado, do contrário, retornaremos 400 e nenhum produto, mesmo os novos, será validado. Será necessário enviar um novo POST contendo apenas produtos não cadastrados.
Lista de retornos possíveis
Ação | Status code | Mensagem |
---|---|---|
Body correto | 201 | - |
Body contendo ficha já existente | 400 | Erro: Sku já possui o status como Ficha Integrada |
Body sem idItem | 400 | Parâmetro obrigatório - idItem |
Body sem skuLojista | 400 | Parâmetro obrigatório - idSkuLojista |
Response
Avaliamos o sucesso pelo HTTP Status Code que deverá ser : 201 - Created
Importante!
Obter sucesso no envio da ficha, NÃO significa que os produtos foram cadastrados com sucesso, significa apenas que as fichas foram ENVIADAS com sucesso. A partir deste momento, o nosso importador fará validações em todos os campos enviados, havendo possibilidade de recusa. O recomendado é consultarem os status das fichas através do GET /import/itens/{idItem}/sku/{idSkuLojista}/status.
Lembrando que, há 4 status possíveis de se obter nestas validações, para entendê-los, basta clicar aqui e conferir no topo deste fórum.
Cadastro de produtos com variantes (Selecione)
O atributo Selecione pode ser utilizado em situações que, para a categoria desejada, o Via Marketplace não exige variante obrigatória.
Por exemplo: Para furadeiras elétricas, não exigimos nenhuma variante como obrigatória, então o seller pode utilizar o Selecione e informar a voltagem do produto, caso possua a informação do seu lado.
Lembrando que, este, é o único atributo variante que não é obrigatório e também o único que possui idUda fixo (206509), porém, existem algumas regras para ser utilizado com sucesso. Clique aqui e confira no detalhe.
O limite é de no máximo 100 variantes por SKUMétodo: POST
Composição do Header:
- access_token: Chave de acesso da loja
- client_id: Chave de acesso da integradora
- Accept: application/json
- Content-Type: application/json
Endpoint (HLG):
https://api-mktplace-hlg.viavarejo.com.br/api/v4/sandbox/api-front-importer-v4/jersey/import/itens
Endpoint (PRD):
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens/
Body da chamada
{
"itens": [
{
"idItem": "IDITEM-123",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"marca": "Qualquer marca",
"idCategoria": 3163,
"atributos": [
{
"idUda": "14617",
"nome": "Vibração",
"valor": "Sim"
},
{
"idUda": "3158",
"nome": "Dobrável",
"valor": "Sim"
}
],
"skus": [
{
"idSkuLojista": "S-K-U_1",
"gtin": "1111111111111",
"imagens": [
"http://imagem1_S-K-U_1.jpg",
"http://imagem2_S-K-U_1.jpg",
"http://imagem3_S-K-U_1.jpg",
"http://imagem4_S-K-U_1.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "206509",
"nome": "Selecione",
"valor": "Branco - P"
}
]
},
{
"idSkuLojista": "S-K-U_2",
"gtin": "2222222222222",
"imagens": [
"http://imagem1_S-K-U_2.jpg",
"http://imagem2_S-K-U_2.jpg",
"http://imagem3_S-K-U_2.jpg",
"http://imagem4_S-K-U_2.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "206509",
"nome": "Selecione",
"valor": "Branco - M"
}
]
},
{
"idSkuLojista": "S-K-U_3",
"gtin": "3333333333333",
"imagens": [
"http://imagem1_S-K-U_3.jpg",
"http://imagem2_S-K-U_3.jpg",
"http://imagem3_S-K-U_3.jpg",
"http://imagem4_S-K-U_3.jpg"
],
"preco": {
"oferta": "99,99",
"padrao": "99,99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "206509",
"nome": "Selecione",
"valor": "Branco - G"
}
]
},
{
"idSkuLojista": "S-K-U_4",
"gtin": "4444444444444",
"imagens": [
"http://imagem1_S-K-U_4.jpg",
"http://imagem2_S-K-U_4.jpg",
"http://imagem3_S-K-U_4.jpg",
"http://imagem4_S-K-U_4.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "206509",
"nome": "Selecione",
"valor": "Vermelho - P"
}
]
},
{
"idSkuLojista": "S-K-U_5",
"gtin": "5555555555555",
"imagens": [
"http://imagem1_S-K-U_5.jpg",
"http://imagem2_S-K-U_5.jpg",
"http://imagem3_S-K-U_5.jpg",
"http://imagem4_S-K-U_5.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "206509",
"nome": "Selecione",
"valor": "Vermelho - M"
}
]
},
{
"idSkuLojista": "S-K-U_6",
"gtin": "6666666666666",
"imagens": [
"http://imagem1_S-K-U_6.jpg",
"http://imagem2_S-K-U_6.jpg",
"http://imagem3_S-K-U_6.jpg",
"http://imagem4_S-K-U_6.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "206509",
"nome": "Selecione",
"valor": "Vermelho - G"
}
]
},
{
"idSkuLojista": "S-K-U_7",
"gtin": "7777777777777",
"imagens": [
"http://imagem1_S-K-U_7.jpg",
"http://imagem2_S-K-U_7.jpg",
"http://imagem3_S-K-U_7.jpg",
"http://imagem4_S-K-U_7.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "206509",
"nome": "Selecione",
"valor": "Marrom - P"
}
]
},
{
"idSkuLojista": "S-K-U_8",
"gtin": "8888888888888",
"imagens": [
"http://imagem1_S-K-U_8.jpg",
"http://imagem2_S-K-U_8.jpg",
"http://imagem3_S-K-U_8.jpg",
"http://imagem4_S-K-U_8.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "206509",
"nome": "Selecione",
"valor": "Marrom - M"
}
]
},
{
"idSkuLojista": "S-K-U_9",
"gtin": "9999999999999",
"imagens": [
"http://imagem1_S-K-U_9.jpg",
"http://imagem2_S-K-U_9.jpg",
"http://imagem3_S-K-U_9.jpg",
"http://imagem4_S-K-U_9.jpg"
],
"preco": {
"oferta": "99.99",
"padrao": "99.99"
},
"estoque": {
"quantidade": 1,
"tempoDePreparacao": 1
},
"dimensao": {
"altura": 0.1,
"largura": 0.1,
"profundidade": 0.1,
"peso": 0.3
},
"atributos": [
{
"idUda": "206509",
"nome": "Selecione",
"valor": "Marrom - G"
}
]
}
],
"garantia": ""
}
]
}
Atenção
No cadastro de produtos variantes, o campo "idItem" deve ser único para todos os SKUs do mesmo item. Caso envie idItem diferente para cada variante, nosso importador irá considerar que são itens distintos e portando serão indexados separadamente no front/ PDP (Página de produto), ou seja, uma página exclusiva para cada item com seus respectivos atributos.
Nenhum produto inserido no body, poderá estar cadastrado, do contrário, retornaremos 400 e nenhum produto, mesmo os novos, será validado. Será necessário enviar um novo POST contendo apenas produtos não cadastrados.
Lista de retornos possíveis
Ação | Status code | Mensagem |
---|---|---|
Body correto | 201 | - |
Body contendo ficha já existente | 400 | Erro: Sku já possui o status como Ficha Integrada |
Body sem idItem | 400 | Parâmetro obrigatório - idItem |
Body sem skuLojista | 400 | Parâmetro obrigatório - idSkuLojista |
Response
Avaliamos o sucesso pelo HTTP Status Code que deverá ser : 201 - Created
Importante!
Obter sucesso no envio da ficha, NÃO significa que os produtos foram cadastrados com sucesso, significa apenas que as fichas foram ENVIADAS com sucesso. A partir deste momento, o nosso importador fará validações em todos os campos enviados, havendo possibilidade de recusa. O recomendado é consultarem os status das fichas através do GET /import/itens/{idItem}/sku/{idSkuLojista}/status.
Lembrando que, há 4 status possíveis de se obter nestas validações, para entendê-los, basta clicar aqui e conferir no topo deste fórum.
Regras de negócio
Para cadastrar produtos simples, é preciso se atentar apenas nos campos obrigatórios apontados no swagger.
idItem - Podemos dizer que, este campo é o código "Pai" do SKU. Ele é obrigatório para 100% dos itens, porém, existem regras diferentes entre produtos simples e variantes. Para produtos simples, deve-se passar um código diferente para cada SKU, do contrário nosso importador irá recusar a ficha (obterá status "Inválido"), caso já exista algum outro SKU com o mesmo código.
Título - É o campo que vai determinar o título do produto que será exibido no front/ PDP (Página do produto).
- O padrão de título sugerido é: Produto + Marca + modelo do produto + algumas especificações que ajudem a identificar o produto_. Ex: Smart TV 50" UHD 4K Philips 50PUG7406, Android TV, HDR10+, Dolby Vision, Dolby Atmos, Design Borderless e Bluetooth;
- Mínino de 2 e máximo de 150 caracteres;
- Algumas palavras podem ser rejeitadas no momento da validação por não ser permitida em nosso Marketplace;
Descrição - É o campo que vai descrever o produto no front/ PDP (Página do produto).
- Formatação aceita: HTML padrão UTF-8;
- Código para quebra de linha: <br>;
- Código para parágrafo: <p>;
- Não permitimos passar: imagens e links;
- Mínino de 1 e Máximo de 18.000 caracteres;
- Algumas palavras podem ser rejeitadas no momento da validação por não ser permitida em nosso Marketplace;
Marca - É o campo que irá determinar a marca divulgada para o produto no front/ PDP (Página do produto). Algumas marcas podem ser rejeitadas no momento da validação por não haver permissão para o seller comercializá-la em nosso marketplace ou não estar cadastrada;
- Marcas não cadastradas: O seller deve abrir um chamado cadastrando a marca, veja o passo a passo aqui. Quando não está cadastrada ou não seja passada, deixamos o produto ser validado, mas convertemos a nomenclatura enviada para "Marca não informada";
- Marcas proibidas: Algumas marcas exigem regulamentação formal assinada, permitindo que os sellers comercializem seus produtos. Caso não seja aberto um chamado prévio com a documentação necessária, os produtos podem ser rejeitados no momento da validação, por não haver permissão para o seller comercializá-la em nosso marketplace;
- Não permitimos passar: imagens e links;
- Máximo de 50 caracteres;
idCategoria - É o campo, onde deve ser informado o código que representa o último nível da categoria em que o produto será cadastrado e ficará disponível no front/ PDP (Página do produto). Caso seja passado: um código inexistente, código que não seja do último nível da categoria, sem valor (em branco) ou não seja enviado, cadastraremos em uma categoria genérica chamada "Produtos Diversos" (id: 3163). Clique aqui e veja como realizar a leitura e interpretação correta das categorias em nossa árvore mercadológica.
- Deve ser informado apenas números;
- Caso não seja passado o ID do último nível ou não exista, o produto será validado, mas converteremos para a categoria Produtos Diversos (ID: 3163);
atributos[array] > idUda - Deve-se passar o idUda do atributo complementar de acordo a disponibilidade de cada categoria. Lembrando que, o ID varia de acordo a categoria. Clique aqui e veja como identificar os atributos e seus respectivos valores.
- Somente números;
- Mapear e identificar os atributos de acordo a árvore disponível no Via através do Swagger;
atributos[array] > nome - Informar o nome do atributo, exatamente como descrito na consulta da categoria. Este campo é opcional, não interfere na inclusão do atributo.
atributos[array] > valor - Deve-se passar o valor do atributo complementar de acordo a disponibilidade de cada categoria. Lembrando que, cada atributo possui um formato de campo que, definem os valores dos atributos. Clique aqui e veja como realizar a leitura dos tipos e valores por atributo.
- Validar o tipo do valor (TXN, TXL, MVM e MVU);
- Respeitar os valores e nomenclaturas pré-definidos e disponibilizados na árvore de categorias através do Swagger;
TXN (Texto normal): O valor é livre, mas deve ser utilizadas frases curtas.
TXL (Texto longo): O valor é livre, mas pode ser utilizado frases longas (sem limite de caracteres).
MVM (Multivalorado Múltiplo): Pode ser utilizado diversos valores da lista pré-definida, ou seja, é aceito passarem 2 ou mais valores do mesmo atributo para cada SKU. (Ex: Gênero - Ação e aventura, Esportes, Estratégia, etc).
(Multivalorado Único):Deve ser selecionado apenas 1 dos valores listados, ou seja, é possível passar apenas um valor deste atributo para cada SKU. (Ex: Mídia - CD, DVD, Blu-Ray).
Existem 2 campos com esse mesmo nome e a ordem + utilização deles deve ser sempre respeitada. O que difere um do outro é que, o 1º campo refere-se a atributos complementares (Caracteristicas, Especificações técnicas e Informações adicionais) , ou seja, são informações para enquicer a ficha e divulgar ao consumidor final, os detalhes do produto. Ex:
Ficha enviada com atributos complementares:
Atributo refletindo na página do produto:
O 2º campo é específico para variantes e localiza-se dentro do array "skus" que veremos mais adiante.
skus[array] > idSkuLojista - É o campo onde deve ser passado o código de SKU do lojista. Esse código será o utilizado para realizar as consultas e atualizações de oferta após ser cadastrado com sucesso.
- Permitido letras e números;
- Permitido (-) hífen e/ou ()underline;
- Máximo de 30 caracteres;
Exemplo de código SKU permitido: SKU123Lojista-01
skus[array] > gtin - Este campo é opcional e é o único validado por nosso importador para realizarmos sugestão de match. Recomendamos o envio em 100% dos SKUs para indexação no Google e também para haver a sugestão de match.
- Obrigatório respeitar o registro da GS1Brasil.
- O EAN deve conter: 8, 9, 12, 13 ou 14 caracteres.
skus[array] > imagens - Neste campo, deve-se informar todas as URLs das imagens que serão expostas ao consumidor final no front. Lembrando que, as imagens serão disponibilizadas no front, na mesma ordem enviada, logo, a 1º imagem será exibida como principal. Clique aqui e veja as boas práticas para cadastro de imagem.
- Envio mínimo de 1 imagem e no máximo 4 por SKU;
- A resolução da imagem precisa ser no mínimo em 250 x 250 pixels e idealmente igual ou acima de 1000 x 1000 pixels;
- Os formatos de arquivo aceitos são: JPG, JPEG ou PNG (Não serão aceitos outros formatos, mudando apenas a extensão, exemplo: salvar uma imagem webp como .jpg);
- O tamanho máximo do arquivo pode ser de no máximo 10mb;
- A URL de imagem não pode conter espaços, caracteres especiais, acentuações e símbolos como "=" ou "?" ou parâmetros após a extensão do arquivo;
- A URL da imagem precisa estar em um servidor aberto e direcionar ao arquivo de imagem e não a uma página intermediária que hospeda propagandas e similares. É obrigatório, portanto, apontar somente para a imagem;
- As URLs não podem sofrer redirecionamentos;
- As URLs devem ser codificadas corretamente;
- As URLs aceitas precisam ser em http, https (algumas versões são aceitas) ou ftp aberto;
- O servidor do lojista pode sofrer instabilidade no momento da consulta e isso pode tornar uma imagem inválida temporariamente (Neste caso, o produto deverá ser reenviado para haver uma nova validação);
- Mesmo que sua imagem não seja inválidada no momento do cadastro, posteriormente, o time de conteúdo do Via Marketplace poderá desativar o seu produto, caso este não siga as regras da companhia.
skus[array] > preco[object] > oferta - Este campo refere-se ao preço POR do produto, ou seja, o valor aqui inserido, será o valor de venda disponibilizado no front/ PDP (Página do produto) após ter sido validado e indexado com sucesso.
- Valor mínimo: 0,01;
- Valor máximo: 99999,00 (5 dígitos);
- Separador decimal: VÍRGULA;
skus[array] > preco[object] > padrao - Este campo refere-se ao preço DE do produto. Este campo é obrigatório para envio, mas não é refletido no front/ PDP (Página do produto).
- Valor mínimo: 0,01;
- Valor máximo: 99999,00 (5 dígitos);
- Separador decimal: VÍRGULA;
skus[array] > estoque[object] > quantidade - Este campo refere-se a quantidade de estoque que será disponibilizada para venda no front/ PDP (Página do produto), após validação e indexação do produto.
- Aceitamos valor 0;
- Sem valor (em branco), automaticamente converteremos para 0;
skus[array] > estoque[object] > tempoDePreparacao - Refere-se ao crossdocking do produto. O valor indicado neste campo, será utilizado na composição do frete, quando é calculado através da tabela de contingência cadastrada aqui no Via Marketplace.
- Valor mínimo: 0;
- Valor máximo: 200;
skus[array] > dimensao[object] > altura - Este campo refere-se a altura do produto (considerando a embalagem).
- Unidade de medida: METROS;
- Valor mínimo: 0.01;
- Valor máximo: 7.00 ou 7;
- Separador decimal: PONTO;
skus[array] > dimensao[object] > largura - Este campo refere-se a largura do produto (considerando a embalagem).
- Unidade de medida: METROS;
- Valor mínimo: 0.01;
- Valor máximo: 7.00 ou 7;
- Separador decimal: PONTO;
skus[array] > dimensao[object] > profundidade - Este campo refere-se a profundidade do produto (considerando a embalagem).
- Unidade de medida: METROS;
- Valor mínimo: 0.01;
- Valor máximo: 7.00 ou 7;
- Separador decimal: PONTO;
skus[array] > dimensao[object] > peso - Este campo refere-se ao pedo do produto (considerando a embalagem).
- Unidade de medida: QUILOGRAMA (KG);
- Valor mínimo: 0.01;
- Valor máximo: 750.00 ou 750;
- Separador decimal: PONTO;
skus[array] > atributos[array] > idUda - Deve-se passar o idUda do atributo variante de acordo a obrigatoriedade de cada categoria. Lembrando que, o ID varia de acordo a categoria. Clique aqui e veja como identificar os atributos e seus respectivos valores.
- Somente números;
- Mapear e identificar os atributos de acordo a árvore disponível no Via através do Swagger;
skus[array] > atributos[array] > nome - Informar o nome do atributo, exatamente como descrito na consulta da categoria. Este campo é opcional, não interfere na inclusão do atributo.
skus[array] > atributos[array] > valor - Deve-se passar o valor do atributo variante de acordo a disponibilidade de cada categoria. Lembrando que, cada atributo possui um formato de campo que, definem os valores dos atributos. Clique aqui e veja como realizar a leitura dos tipos e valores por atributo.
- Validar o tipo do valor (TXN, TXL, MVM e MVU);
- Respeitar os valores e nomenclaturas pré-definidos e disponibilizados na árvore de categorias através do Swagger;
TXN (Texto normal): O valor é livre, mas deve ser utilizadas frases curtas.
TXL (Texto longo): O valor é livre, mas pode ser utilizado frases longas (sem limite de caracteres).
MVM (Multivalorado Múltiplo): Pode ser utilizado diversos valores da lista pré-definida, ou seja, é aceito passarem 2 ou mais valores do mesmo atributo para cada SKU. (Ex: Gênero - Ação e aventura, Esportes, Estratégia, etc).
(Multivalorado Único): Deve ser selecionado apenas 1 dos valores listados, ou seja, é possível passar apenas um valor deste atributo para cada SKU. (Ex: Mídia - CD, DVD, Blu-Ray).
Existem 2 campos com esse mesmo nome e a ordem + utilização deles deve ser sempre respeitada. O que difere um do outro é que, o 1º campo refere-se a atributos complementares (Caracteristicas, Especificações técnicas e Informações adicionais) , ou seja, são informações para enquicer a ficha e divulgar ao consumidor final, os detalhes do produto. Ex:
Ficha enviada com atributos complementares:
Atributo refletindo na página do produto:
Além das variantes obrigatórias, para casos em que não temos obrigatoriedade, mas o seller possui variantes, existe a possibilidade de cadastrá-las através de um atributo chamado "Selecione" (único que possui idUda fixo 206509 e também que é variante, mas não é obrigatório). Este atributo fica disponível em 100% das categorias, mas possui 2 regras para ser utilizado com sucesso:
- Somente pode ser utilizado quando não existir NENHUM outro atributo variante obrigatório para o idCategoria setado no body;
- Pode ser utilizado apenas 1 vez por SKU;
Importante!
Como pode ser passado apenas uma vez por SKU, caso o seller possua dois atributos, sugerimos o envio neste formato de exemplo: Amarelo - GG O tipo que determina o valor neste atributo é TXN (Texto normal), ou seja, o texto é livre e qualquer valor poderá ser informado (não validamos, portanto, passam erros de ortografia também);
Ficha enviada com o atributo variante Selecione:
Atributo refletindo na página do produto:
Garantia - Este campo refere-se à garantia do fabricante e é obrigatório para algumas categorias, então é importante validá-lo previamente ao envio da ficha, através do GET /required/category-with-warrenty.
- Somente caracteres alfanuméricos;
- Para categorias com obrigatoriedade, o valor mínimo 1, para as demais é 0;
- Valor máximo 60;
- Os números irão indicar sempre MESES;
Consulta de status de ficha:
Após o envio de um produto através do POST acima descrito, você deve consultar o status da ficha enviada através deste serviço. 100% dos produtos enviados passam pelos status, pois representam o momento atual da ficha.
MétodoGET
Composição do Header:
- access_token: Chave de acesso da loja
- client_id: Chave de acesso da integradora
- Accept: application/json
- Content-Type: application/json
Endpoint (HLG):
https://api-mktplace-hlg.viavarejo.com.br/api/v4/sandbox/api-front-importer-v4/jersey/import/itens/{idItem}/sku/{idSkuLojista}/status
Endpoint (PRD):
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens/{idItem}/sku/{idSkuLojista}/
Ação | Status code | Mensagem |
---|---|---|
Ficha encontrada | 200 | - |
Ficha inexistente | 404 | Not found |
100% das novas fichas enviadas, passam obrigatoriamente por este status e ele representa que, o SKU está aguardando a fila de validação automática e, em até 48 horas (ao máximo), terá uma validação. Clique aqui e confira todos os detalhes sobre status!
{
"idItem": "IDITEM-123",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição.",
"marca": "Não Informado",
"idCategoria": "766",
"atributos": [
{
"idUda": "9688",
"nome": "Gênero",
"valor": "Masculino"
},
{
"idUda": "10542",
"nome": "Ocasião",
"valor": "Festa"
}
],
"skus": [
{
"idSkuLojista": "S-K-U_1",
"gtin": "",
"imagens": [
"http://imagem1_S-K-U_1.jpg",
"http://imagem2_S-K-U_1.jpg",
"http://imagem3_S-K-U_1.jpg",
"http://imagem4_S-K-U_1.jpg"
],
"preco": {
"oferta": "99,99",
"padrao": "99,99"
},
"estoque": {
"quantidade": "1",
"tempoDePreparacao": "1"
},
"dimensao": {
"altura": "0.1",
"largura": "0.1",
"profundidade": "0.1",
"peso": "0.3"
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "P"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Branco"
}
],
"violacoes": [],
"skuStatus": "AGUARDANDO_PROCESSAMENTO",
"percentualAssociacao": {
"listaSkuMatchInteligenteResultado": []
},
"idSkuSite": "",
"origemImportacao": "IMPORTACAO_API_V4"
}
],
"idLojista": "3",
"garantia": ""
}
É importante mencionar que, existe uma fila de validação "geral" em nosso marketplace, onde todos os produtos de todos os parceiros entram por ordem de data e hora. Caso façam reenvio da ficha antes dela obter status FICHA_INTEGRADA, ela voltará para o final da fila e isso acarretará em um maior delay na validação
INVÁLIDODurante a validação, o importador encontrou uma inconsistência em um ou mais campos e o lojista precisa efetuar a correção, caso contrário não será indexado. Clique aqui e confira todos os detalhes sobre status!
No exemplo abaixo, não foi enviado as URLs das imagens através do POST /import/itens e por este motivo, recusamos a ficha.
{
"idItem": "IDITEM-123",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição.",
"marca": "Não Informado",
"idCategoria": "766",
"atributos": [
{
"idUda": "9688",
"nome": "Gênero",
"valor": "Masculino"
},
{
"idUda": "10542",
"nome": "Ocasião",
"valor": "Festa"
}
],
"skus": [
{
"idSkuLojista": "S-K-U_1",
"gtin": "1111111111111",
"imagens": [],
"preco": {
"oferta": "99,99",
"padrao": "99,99"
},
"estoque": {
"quantidade": "1",
"tempoDePreparacao": "1"
},
"dimensao": {
"altura": "0.1",
"largura": "0.1",
"profundidade": "0.1",
"peso": "0.3"
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "P"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Branco"
}
],
"violacoes": [
{
"codigo": "Imagens",
"mensagem": "É obrigatório informar pelo menos uma imagem"
}
],
"skuStatus": "INVALIDO",
"percentualAssociacao": {
"listaSkuMatchInteligenteResultado": []
},
"idSkuSite": "",
"opcao": {},
"origemImportacao": "IMPORTACAO_API_V4"
}
],
"idLojista": "3",
"garantia": ""
}
Lista dos motivos de recusa
Campo rejeitado | Motivo da recusa | Mensagem de recusa | Ação a tomar |
---|---|---|---|
Atributo | Atributo obrigatório não informado | A uda {nome_atributo} de id {idUda_atributo} é obrigatória e não foi informada | Consultar os atributos da categoria informada através do GET /categories e então, reenviar a ficha preenchendo o idUda (alfanumérico) e o valor do respectivo atributo obrigatório |
Atributo | idUda não informado | No atributo de sku, não pode ter idUda vazio | Consultar os atributos da categoria informada através do GET /categories e então, reenviar a ficha preenchendo o idUda (alfanumérico) do respectivo atributo |
Atributo | Valor fora do padrão | O idUda dentro do sku tem que ser numérico | Consultar os atributos da categoria informada através do GET /categories e então, reenviar a ficha preenchendo o idUda (alfanumérico) do respectivo atributo |
Atributo | Valor repetido para um mesmo SKU | Os valores de Atributos [{valor_atributo}] estão repetidos dentro do item | Reenviar a ficha sem repetir o atributo por SKU |
Categoria | Valor fora do padrão | O campo Categoria deve ser preenchido com valor numérico inteiro positivo | Consultar a árvore de categorias através do GET /categories para obter o código correto e reenviar a ficha |
Descrição | Campo não informado | O campo Descrição é obrigatório | Reenviar a ficha com o campo descrição preenchido |
Descrição | Palavra proibida - Ilegal/Órgão Regulador | Campo Descrição possui palavra(s) proibida(s), por motivo(s) de: Ilegal/Órgão Regulador Identificamos que o produto que você quer cadastrar pode ser ilegal ou tem uma restrição pra ser comercializado Confira aqui os itens que não permitimos aqui no via Marketplace Ficou alguma dúvida? Abra um chamado de sortimento restrito, anexe um print ou foto dos erros citados | O seller precisa abrir chamado no Via |
Descrição | Palavra proibida - Política Interna-Ética e Conduta | Campo Descrição possui palavra(s) proibida(s), por motivo(s) de: Política Interna-Ética e Conduta O produto que você quer cadastrar tem palavras que podem ser consideradas ofensivas, preconceituosas e/ou violam direitos de terceiros Pra incluir o anúncio, por favor, revise os termos usados Ficou alguma dúvida? Abra um chamado de sortimento restrito, anexe um print ou foto dos erros citados | O seller precisa abrir chamado no Via |
Descrição | Palavra proibida - Política Interna-Regra Interna | Campo Descrição possui palavra(s) proibida(s), por motivo(s) de: Política Interna-Regra Interna Optamos por não oferecer alguns produtos aos(às) consumidores(as) por meio do marketplace Confira os itens que a sua loja não pode vender Ficou alguma dúvida? Abra um chamado de sortimento restrito, anexe um print ou foto dos erros citados | O seller precisa abrir chamado no Via |
Descrição | Palavra proibida - Propriedade Intelectual | Campo Descrição possui palavra(s) proibida(s), por motivo(s) de: Propriedade Intelectual O produto que você quer cadastrar depende de uma autorização do(a) dono(a) dos direitos de propriedade intelectual Entre em contato com a marca pra solicitar a permissão de venda ou a liberação de anúncio dos seus produtos aqui no Via Marketplace Ficou alguma dúvida? Abra um chamado de sortimento restrito, anexe um print ou foto dos erros citados | O seller precisa abrir chamado no Via |
Título | Campo não informado | O campo Título é obrigatório | Reenviar a ficha com o campo título preenchido |
Título | Mais de 150 caracteres | O valor informado para o campo Título é maior que o máximo de 150 | Reenviar a ficha respeitando o valor máximo de 150 caracteres |
Título | Palavra proibida - Ilegal/Órgão Regulador | Campo Título possui palavra(s) proibida(s), por motivo(s) de: Ilegal/Órgão Regulador Identificamos que o produto que você quer cadastrar pode ser ilegal ou tem uma restrição pra ser comercializado Confira aqui os itens que não permitimos aqui no via Marketplace Ficou alguma dúvida? Abra um chamado de sortimento restrito, anexe um print ou foto dos erros citados | O seller precisa abrir chamado no Via |
Título | Palavra proibida - Política Interna-Regra Interna | Campo Título possui palavra(s) proibida(s), por motivo(s) de: Política Interna-Regra Interna Optamos por não oferecer alguns produtos aos(às) consumidores(as) por meio do marketplace Confira os itens que a sua loja não pode vender Ficou alguma dúvida? Abra um chamado de sortimento restrito, anexe um print ou foto dos erros citados | O seller precisa abrir chamado no Via |
Título | Palavra proibida - Propriedade Intelectual | Campo Título possui palavra(s) proibida(s), por motivo(s) de: Propriedade Intelectual O produto que você quer cadastrar depende de uma autorização do(a) dono(a) dos direitos de propriedade intelectual Entre em contato com a marca pra solicitar a permissão de venda ou a liberação de anúncio dos seus produtos aqui no Via Marketplace Ficou alguma dúvida? Abra um chamado de sortimento restrito, anexe um print ou foto dos erros citados | O seller precisa abrir chamado no Via |
Marca | Marca não permitida - Propriedade Intelectual | Campo Marca possui palavra(s) proibida(s), por motivo(s) de: Propriedade Intelectual O produto que você quer cadastrar depende de uma autorização do(a) dono(a) dos direitos de propriedade intelectual Entre em contato com a marca pra solicitar a permissão de venda ou a liberação de anúncio dos seus produtos aqui no Via Marketplace Ficou alguma dúvida? Abra um chamado de sortimento restrito, anexe um print ou foto dos erros citados | O seller precisa abrir chamado no Via |
Marca | Marca proibida - Ilegal/Órgão Regulador | Campo Marca possui palavra(s) proibida(s), por motivo(s) de: Ilegal/Órgão Regulador Identificamos que o produto que você quer cadastrar pode ser ilegal ou tem uma restrição pra ser comercializado Confira aqui os itens que não permitimos aqui no via Marketplace Ficou alguma dúvida? Abra um chamado de sortimento restrito, anexe um print ou foto dos erros citados | O seller precisa abrir chamado no Via |
Dimensões (altura) | Valor fora do padrão | A altura é um campo obrigatório | Reenviar a ficha com o campo altura preenchido |
Dimensões (altura) | Valor fora do padrão | A altura deve ser um valor entre (0.01 e 7.00) | Reenviar a ficha respeitando o valor mínimo (0.01) e máximo (7.00) da dimensão |
Dimensões (largura) | Valor fora do padrão | A largura é um campo obrigatório | Reenviar a ficha com o campo largura preenchido |
Dimensões (largura) | Valor ou campo não informado | A largura deve ser um valor entre (0.01) e (7.00) | Reenviar a ficha respeitando o valor mínimo (0.01) e máximo (7.00) da dimensão |
Dimensões (profundidade) | Valor ou campo não informado | A profundidade é um campo obrigatório | Reenviar a ficha com o campo profundidade preenchido |
Dimensões (profundidade) | Valor fora do padrão | A profundidade deve ser um valor entre (0.01) e (7.00) | Reenviar a ficha respeitando o valor mínimo (0.01) e máximo (7.00) da dimensão |
Garantia | Valor com letras | A garantia precisa ser um campo numérico válido | Reenviar a ficha respeitando o valor alfanumérico mínimo (1) e máximo (60) da Garantia |
Garantia | Valor fora do padrão | A garantia está fora do intervalo de 1 até 60 meses | Reenviar a ficha respeitando o valor alfanumérico mínimo (1) e máximo (60) da Garantia |
Garantia | Valor ou campo não informado | A garantia é obrigatória para a categoria [Nível 1 > Nível 2 > Nível 3] | Consultar as categorias que possuem o campo garantia como obrigatório através do GET /category-with-warrenty e reenviar a ficha com o campo Garantia preenchido |
GTIN/EAN | EAN já utilizado em outro SKU que está no status "Válido" | o Ean {EAN_informado} nao pode ser usado ,pois se encontra em outro sku com status válido! | Reenviar a ficha sem EAN ou com EAN diferente |
GTIN/EAN | Já possui outro SKU cadastrado com o EAN | Sua loja já vende o produto {nome_produto} com ean {EAN_informado} | Reenviar a ficha sem EAN ou com EAN diferente |
Imagem | Dimensões fora do padrão | As dimensões da imagem {#1, #2, #3, #4} (largura x altura): (111 x 111) não estão respeitando as dimensões mínimas (250 x 250) | Corrigir as dimensões da(s) imagem(s) respeitando o valor mínimo de 250 x 250 e reenviar a ficha |
Imagem | Erro no processamento | Problema no processamento da imagem {#1, #2, #3, #4} Tente novamente mais tarde | Verificar se as imagens estão acessíveis e faça o reenvio da ficha. Caso persista, abra um chamado no Via |
Imagem | Imagem inacessível | A imagem {#1, #2, #3, #4} apresentou problemas no download por ser inválida | Verificar se as imagens estão acessíveis e faça o reenvio da ficha (confira as regras de imagem do Via clicando aqui). Caso persista, abra um chamado no Via |
Imagem | Imagem inacessível | Problemas no envio da imagem {#1, #2, #3, #4} Verifique a disponibilidade da mesma e tente novamente mais tarde | Verificar se as imagens estão acessíveis e faça o reenvio da ficha (confira as regras de imagem do Via clicando aqui) |
Imagem | Sem URL | É obrigatório informar pelo menos uma imagem | Reenviar a ficha com ao menos 1 URL de imagem (confira as regras de imagem do Via clicando aqui) |
Peso | Campo não informado | Peso é um campo obrigatório | Reenviar a ficha com o campo peso preenchido |
Peso | Valor fora do padrão | O peso deve ser maior que (0.01) | Reenviar a ficha respeitando o valor mínimo (0.01) e máximo (750.00) de peso |
Peso | Valor fora do padrão | O peso deve ser menor que (750.00) | Reenviar a ficha respeitando o valor mínimo (0.01) e máximo (750.00) de peso |
Preço | Preço DE = 0 | O campo preço padrão não pode ter valor igual a 0 | Reenviar a ficha respeitando o valor mínimo (0,01) |
Preço | Preço DE não informado | O campo preço padrão é obrigatório | Reenviar a ficha com o campo padrao preenchido |
Preço | Preço DE superior ao limite | O valor informado para o campo preço padrão é maior que o máximo de 99999.0 | Reenviar a ficha respeitando o valor mínimo (0,01) e máximo (99999,0) |
Preço | Preço POR = 0 | O campo preço oferta não pode ter valor igual a 0 | Reenviar a ficha respeitando o valor mínimo (0,01) |
Preço | Valor fora do padrão | O valor {valor_informado} informado para o campo preço oferta é inválido | Reenviar a ficha respeitando o valor mínimo (0,01) e máximo (99999,0) |
Preço | Valor fora do padrão | O valor {valor_informado} informado para o campo preço padrão é inválido | Reenviar a ficha respeitando o valor mínimo (0,01) e máximo (99999,0) |
SKU Lojista | Código SKU já cadastrado | O SKU {idSkuLojista} já está cadastrado no seu catálogo | Não reenviar ou reenviar alterando o código do campo idSkuLojista |
SKU Lojista | Código SKU já cadastrado | SKU já associado para o lojista | Não reenviar e consultar através do GET /product |
SKU Lojista | Código SKU já utilizado em outro SKU com status "Válido" | o idSkuLojista {idSkuLojista} nao pode ser usado ,pois se encontra em outro sku com status válido! | Não reenviar ou reenviar alterando o código do campo idSkuLojista |
SKU Lojista | Mais de 30 caracteres | O SKU Lojista deve ter, no máximo, 30 caracteres | Reenviar a ficha respeitando o valor máximo de 30 caracteres |
SKU Lojista | Valor fora do padrão | O SKU Lojista {idSkuLojista} informado está num formato não permitido Verifique a existência de caracteres especiais | Reenviar a ficha preenchendo o campo idSkuLojista apenas com letras, números, (-)hífen e/ou (_)underline também |
Tempo de preparo | Campo não informado | O campo TempoDePreparo é obrigatório | Reenviar a ficha com o campo TempoDePreparacao preenchido |
Tempo de preparo | Valor fora do padrão | O valor {valor_informado} informado para o campo TempoDePreparo é inválido | Reenviar a ficha respeitando o valor alfanumérico mínimo (0) e máximo (200) |
Existem diversos motivos de recusa, então é muito importante apresentarem as mensagens que retornamos no array "violacoes" para que os sellers consigam corrigir.
Para corrigir, basta reenviar o POST /import/itens com os devidos ajustes e então a ficha passará por uma nova validação. Neste reenvio, o status da ficha voltará a ser : AGUARDANDO_PROCESSAMENTO e iniciará um novo ciclo de validações.
VÁLIDOEste status singifica que, a ficha foi validada e está correta, mas como foi passado EAN no POST /import/itens, nós encontramos um produto de outro lojista que utiliza o mesmo código, já cadastrado na Via. Neste status, o lojista deve optar por associar o item ao sugerido (MATCH) ou escolher a opção de NOVO PRODUTO para que façamos a indexação em uma PDP exclusiva do item. Assim que realizado o optin, o status da ficha será alterado para FICHA INTEGRADA
A ficha fica no máximo 48hrs neste status e caso o optin não tenha sido realizado, o status é alterado paraFICHA INTEGRADA e o SKU será indexado automaticamente como NOVO. Clique aqui e confira todos os detalhes sobre status!
-
Match (associação) = Gera buybox e faz com que, mesmo o produto sendo novo, tenha a mesma relevância do detentor do anúncio. A prioridade de sugestão sempre será de produtos do nosso 1P.
-
Novo produto = Uma PDP (Página do produto) exclusiva do item é gerada, mas sem relevância alguma.
{
"idItem": "IDITEM-123",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição.",
"marca": "Não Informado",
"idCategoria": "766",
"atributos": [
{
"idUda": "9688",
"nome": "Gênero",
"valor": "Masculino"
},
{
"idUda": "10542",
"nome": "Ocasião",
"valor": "Festa"
}
],
"skus": [
{
"idSkuLojista": "S-K-U_1",
"gtin": "1111111111111",
"imagens": [
"http://imagem1_S-K-U_1.jpg",
"http://imagem2_S-K-U_1.jpg",
"http://imagem3_S-K-U_1.jpg",
"http://imagem4_S-K-U_1.jpg"
],
"preco": {
"oferta": "99,99",
"padrao": "99,99"
},
"estoque": {
"quantidade": "1",
"tempoDePreparacao": "1"
},
"dimensao": {
"altura": "0.1",
"largura": "0.1",
"profundidade": "0.1",
"peso": "0.3"
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "P"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Branco"
}
],
"violacoes": [],
"skuStatus": "VALIDO",
"percentualAssociacao": {
"listaSkuMatchInteligenteResultado": [
{
"idSkuPossivel": "SKU_Sugerido",
"percentual": 51,
"detalheSku": [
{
"link": "produto.extra.com.br/1111111111",
"titulo": "Título do produto sugerido",
"descricao": "Descrição do produto sugerido",
"ean": "1111111111111",
"marca": "Não Informado",
"imagens": [
{
"nome": "SRC",
"id": "384354915",
"url": "http://imagem1_SKU_SUGERIDO.jpg"
}
],
"udas": [
{
"udaNome": "Tamanho",
"udaValor": "P"
},
{
"udaNome": "Cor",
"udaValor": "Branco"
}
],
"precos": [
{
"de": "245.9",
"por": "219.9"
}
]
}
]
}
]
},
"idSkuSite": "",
"origemImportacao": "IMPORTACAO_API_V4"
}
],
"idLojista": "3",
"garantia": ""
}
Neste status, é necessário disponibilizar ao seller, uma tela que mostre os principais dados do produto sugerido no array listaSkuMatchInteligenteResultado e que ele consiga realizar o optin de Novo produto ou Match. Mais abaixo, veremos como realizar o PUT /optar, serviço que deverão utilizar para nos informar a opção desejada do seller
FICHA_INTEGRADAStatus finalizador e significa que não necessário mais nenhuma ação do lojista, pois o SKU será cadastrado e indexado em seu catálogo com sucesso. O prazo para refletir no front é de até 72hrs a partir que este status é obtido. Clique aqui e confira todos os detalhes sobre status!
{
"idItem": "IDITEM-123",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição.",
"marca": "Não Informado",
"idCategoria": "766",
"atributos": [
{
"idUda": "9688",
"nome": "Gênero",
"valor": "Masculino"
},
{
"idUda": "10542",
"nome": "Ocasião",
"valor": "Festa"
}
],
"skus": [
{
"idSkuLojista": "S-K-U_1",
"gtin": "",
"imagens": [
"http://imagem1_S-K-U_1.jpg",
"http://imagem2_S-K-U_1.jpg",
"http://imagem3_S-K-U_1.jpg",
"http://imagem4_S-K-U_1.jpg"
],
"preco": {
"oferta": "99,99",
"padrao": "99,99"
},
"estoque": {
"quantidade": "1",
"tempoDePreparacao": "1"
},
"dimensao": {
"altura": "0.1",
"largura": "0.1",
"profundidade": "0.1",
"peso": "0.3"
},
"atributos": [
{
"idUda": "9686",
"nome": "Tamanho",
"valor": "P"
},
{
"idUda": "9687",
"nome": "Cor",
"valor": "Branco"
}
],
"violacoes": [],
"skuStatus": "FICHA_INTEGRADA",
"percentualAssociacao": {
"listaSkuMatchInteligenteResultado": [
{
"percentual": 0
}
]
},
"idSkuSite": "",
"opcao": {
"resultado": "NEW_SKU",
"chaveDeEstado": "bd2f592d7760e0c75c2a91f4539f8381"
},
"origemImportacao": "IMPORTACAO_API_V4"
}
],
"idLojista": "3",
"garantia": ""
}
Repare que retornamos informações importantes sobre o cadastro efetivado com sucesso, sendo os mais relevantes:
opcao > resultado - Aqui, apresentamos o optin (tipo) de cadastro realizado no input. Sempre será uma das opções:
- NEW_SKU = Produto cadastrado como novo
- MATCH_SKU = Produto cadastrado com match
origemImportacao - Informa o canal (origem) em que o produto foi cadastrado. Existem 3 retornos possíveis:
- _IMPORTADOR_UNITÁRIO = Cadastrado de maneira unitária e manualmente através do PAS (portal seller).
- _IMPORTADOR_MASSIVO = Cadastrado massivamente (por planilha) através do PAS (portal seller).
- _IMPORTACAO_API_V4 = Cadastrado através da API POST /import/itens.
Consulta de status de ficha por idItem:
Além da consulta específica por SKU, também é possível obter, de forma mais restrita, status de ficha de todos os SKUs variantes vinculados a um mesmo idItem em uma única listagem.
Essa consulta é mais objetiva e retorna apenas os status e violações, caso esteja no status INVÁLIDO
Método: GET
Composição do Header:
- access_token: Chave de acesso da loja
- client_id: Chave de acesso da integradora
- Accept: application/json
- Content-Type: application/json
Parâmetro:
Para realizar a consulta paginada, primeiro precisamos entender o parêmetro padrão abaixo:*
-
_pagina = 1 (número da página desejada)
-
_itensPorPagina = 50 (quantidade de SKUs que serão exibidos na página)
-
idItem= 123 (Código agrupador de variantes (idItem))
-
Query completa: ?_pagina=1&_itensPorPagina=50&idItem=
Endpoint (HLG):
https://api-mktplace-hlg.viavarejo.com.br/api/v4/sandbox/api-front-importer-v4/jersey/import/itens/statusSku?pagina=1&itensPagina=50&idItem=avarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens/
Endpoint (PRD):
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens/statusSku?pagina=1&itensPagina=50&idItem=
Lista de retornos possíveis
Ação | Status code | Mensagem |
---|---|---|
Ficha encontrada | 200 | - |
Ficha inexistente | 204 | - |
Response
{
"itens": [
{
"idItem": "123",
"idSkuLojista": "SKU_1",
"skuStatus": "FICHA_INTEGRADA",
"violacoes": []
},
{
"idItem": "123",
"idSkuLojista": "SKU_2",
"skuStatus": "INVALIDO",
"violacoes": [
{
"codigo": "Atributos/sku",
"mensagem": "Problemas no envio da imagem #1. Verifique a disponibilidade da mesma e tente novamente mais tarde"
}
},
{
"idItem": "123",
"idSkuLojista": "SKU_3",
"skuStatus": "VALIDO",
"violacoes": []
}
],
"hasNext": false,
"page": 1,
"totalPages": 1,
"totalElememts": 3,
"totalElementsOnPage": 3
}
Optar por match ou novo produto
Este serviço deve ser utilizado única e exclusivamente em fichas que estejam com status VALIDO Para obter essa informação, realize uma consulta através do GET /{idItem}/sku/{idSkuLojista}/status.
A função dele é permitir que o seller escolha qual é a melhor estratégia para o produto em questão, ou seja, se prefere vincular o seu item ao sugerido (match) e assim ganhar a relevância do anúncio sugerido, aumentando sua competitividade logo de cara através do buybox ou uma página exclusiva (Novo produto) para seu item (sem relevância alguma).
Método: PUT
Composição do Header:
- access_token: Chave de acesso da loja
- client_id: Chave de acesso da integradora
- Accept: application/json
- Content-Type: application/json
Endpoint (HLG):
https://api-mktplace-hlg.viavarejo.com.br/api/v4/sandbox/api-front-importer-v4/jersey/import/itens/{idItem}/sku/{idSkuLojista}/optar
Endpoint (PRD):
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens/{idItem}/sku/{idSkuLojista}/optar
Body da chamada (Match)
Após enviar uma ficha contendo EAN através do POST /import/itens, você deve realizar a consulta no GET /{idItem}/sku/{idSkuLojista}/status e ao obter o status VALIDO, disponibilizaremos no response, o item sugerido para match.
Exemplo de response com sugestão:
{
"idItem": "1234",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"idCategoria": "3163",
"atributos": [],
"skus": [
{
"idSkuLojista": "SKU-123_Lojista",
"gtin": "1234567891011",
"imagens": [
"http://imagem1.jpg",
"http://imagem2.jpg",
"http://imagem3.jpg",
"http://imagem4.jpg"
],
"preco": {
"oferta": "99,99",
"padrao": "99,99"
},
"estoque": {
"quantidade": "1",
"tempoDePreparacao": "1"
},
"dimensao": {
"altura": "0.1",
"largura": "0.1",
"profundidade": "0.1",
"peso": "0.3"
},
"atributos": [],
"violacoes": [],
"skuStatus": "VALIDO",
"percentualAssociacao": {
"listaSkuMatchInteligenteResultado": [
{
"idSkuPossivel": "SKU-Sugerido_Via",
"percentual": 51,
"detalheSku": [
{
"link": "produto.extra.com.br/1234567890",
"titulo": "Título do produto sugerido",
"descricao": "Descrição do produto sugerido",
"ean": "1234567891011",
"marca": "XPTO",
"imagens": [
{
"nome": "SRC",
"id": "739223219",
"url": "http://imagem_produto_sugerido.jpg"
}
],
"udas": [
{
"udaNome": "Tipo de veículo",
"udaValor": "Passeio"
},
{
"udaNome": "Índice de carga",
"udaValor": "91 - 615 kg"
},
{
"udaNome": "Aro",
"udaValor": "15"
},
{
"udaNome": "Dimensão",
"udaValor": "195/65"
},
{
"udaNome": "Índice de velocidade",
"udaValor": "H - 210 km/h"
},
{
"udaNome": "Marca",
"udaValor": "XPTO"
}
],
"precos": [
{
"de": "99.99",
"por": "99.99"
}
]
}
]
}
]
},
"idSkuSite": "",
"opcao": {},
"origemImportacao": "IMPORTACAO_API_V4"
}
],
"idLojista": "3",
"garantia": ""
}
Considerando o nosso retorno, será necessário utilizar o código que estiver populando o campo "idSkuPossivel" do : GET, que é o SKU sugerido para match, para popular o campo "idSkuEscolhido" existente no body do PUT e então, realizar o optin Match (associação). O item será "vinculado" ao sugerido e na PDP (página do produto) do front, automaticamente será gerado buybox e fazer com que, mesmo o produto sendo novo, tenha a mesma relevância do detentor do anúncio.
Para Match (associação), o body deve ser preenchido dessa forma:
{
"resultado": "MATCH_SKU",
"idSkuEscolhido": "SKU-Sugerido_Via"
}
Quando o match é realizado, todos os dados da ficha enviada são substituídos pelas informações do detentor do anúncio. Os únicos dados mantidos, são:_
- Código SKU Lojista
- Preço DE
- Preço POR
- Quantidade de estoque
- Tempo de preparação
Body da chamada (Novo produto)
Após enviar uma ficha contendo EAN através do POST /import/itens, você deve realizar a consulta no GET /{idItem}/sku/{idSkuLojista}/status e ao obter o status : VALIDO, disponibilizaremos no response, o item sugerido para match.
Exemplo de response com sugestão:
{
"idItem": "1234",
"titulo": "Qualquer título",
"descricao": "Qualquer descrição",
"idCategoria": "3163",
"atributos": [],
"skus": [
{
"idSkuLojista": "SKU-123_Lojista",
"gtin": "1234567891011",
"imagens": [
"http://imagem1.jpg",
"http://imagem2.jpg",
"http://imagem3.jpg",
"http://imagem4.jpg"
],
"preco": {
"oferta": "99,99",
"padrao": "99,99"
},
"estoque": {
"quantidade": "1",
"tempoDePreparacao": "1"
},
"dimensao": {
"altura": "0.1",
"largura": "0.1",
"profundidade": "0.1",
"peso": "0.3"
},
"atributos": [],
"violacoes": [],
"skuStatus": "VALIDO",
"percentualAssociacao": {
"listaSkuMatchInteligenteResultado": [
{
"idSkuPossivel": "SKU-Sugerido_Via",
"percentual": 51,
"detalheSku": [
{
"link": "produto.extra.com.br/1234567890",
"titulo": "Título do produto sugerido",
"descricao": "Descrição do produto sugerido",
"ean": "1234567891011",
"marca": "XPTO",
"imagens": [
{
"nome": "SRC",
"id": "739223219",
"url": "http://imagem_produto_sugerido.jpg"
}
],
"udas": [
{
"udaNome": "Tipo de veículo",
"udaValor": "Passeio"
},
{
"udaNome": "Índice de carga",
"udaValor": "91 - 615 kg"
},
{
"udaNome": "Aro",
"udaValor": "15"
},
{
"udaNome": "Dimensão",
"udaValor": "195/65"
},
{
"udaNome": "Índice de velocidade",
"udaValor": "H - 210 km/h"
},
{
"udaNome": "Marca",
"udaValor": "XPTO"
}
],
"precos": [
{
"de": "99.99",
"por": "99.99"
}
]
}
]
}
]
},
"idSkuSite": "",
"opcao": {},
"origemImportacao": "IMPORTACAO_API_V4"
}
],
"idLojista": "3",
"garantia": ""
}
Caso o item sugerido não seja compatível com o enviado ou não seja de interesse do seller fazer o Match (associação), para realizar o optin como Novo produto é necessário utilizar o body abaixo, para então, o status da ficha ser alterado para : FICHA INTEGRADA e o produto indexado em uma PDP (página do produto) exclusiva e sem qualquer relevância.
{
"resultado": "NEW_SKU",
"idSkuEscolhido": ""
}
A ficha permanece, no máximo 48hrs no status VALIDO e caso o optin não tenha sido realizado, o status é alterado para FICHA INTEGRADA e o SKU será indexado automaticamente como Novo produto. Clique aqui e confira todos os detalhes sobre status!
Response
Para ambas as opções (match ou novo produto). o sucesso da chamada é avaliado pelo HTTP Status Code retornado, que deverá ser 200
]
Deletar ficha já enviada
Esse serviço realiza a exclusão de qualquer ficha que esteja em um dos status: AGUARDANDO_PROCESSAMENTO: VÁLIDO e INVÁLIDO
Lembrando que, fichas com status : FICHA_INTEGRADA NÃO podem ser excluídas por este serviço.
Para excluir SKUs já cadastrados, ou seja, que estejam com status FICHA_INTEGRADA, utilize o serviço DELETE /offer
Clique aqui e saiba mais.
Método: DELETE
Composição do Header:
- access_token: Chave de acesso da loja
- client_id: Chave de acesso da integradora
- Accept: application/json
- Content-Type: application/json
Endpoint (HLG):
https://api-mktplace-hlg.viavarejo.com.br/api/v4/sandbox/api-front-importer-v4/jersey/import/itens/{idItem}/sku/{idSkuLojista}
Endpoint (PRD):
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/import/itens/{idItem}/sku/{idSkuLojista}
Body da chamada
Esta chamada não possui body, basta inserir os paths (idItem e idSkuLojista) válidos para que a ficha seja deletada com sucesso.
Response
O sucesso da chamada é avaliado pelo HTTP Status Code retornado, que deverá ser : 200
Consulta de marcas cadastradas (whitelist):
Com este serviço, é possível conferir se a marca desejada pelo seller existe na relação, previamente ao envio do item.
É importante, pois no campo "marca" existente no body do serviço de cadastro de produto (POST /import/itens existe uma validação que identifica se a marca enviada é "proibida (blocklist)" e se existe na whitelist. Caso não esteja na blocklist e também não exista na whitelist, vamos deixar o item ser cadastrado com sucesso, porém, converteremos a nomenclatura automaticamente para "Não informada".
Isso ocorre, pois em nosso backend, ainda não temos uma machine learn que faça o input de marcas novas na whitelist, então no processo atual, para que o seller consiga refletir no front a nomeclatura de sua marca, é necessário que ele abra um chamado no Via solicitando inclusão manual, antes do envio de seus produtos.
Método: GET
Composição do Header:
- access_token: Chave de acesso da loja
- client_id: Chave de acesso da integradora
- Accept: application/json
- Content-Type: application/json
Parâmetro:
Para realizar a consulta paginada, primeiro precisamos entender o parêmetro padrão abaixo:
-
_pagina = 1 (número da página desejada)
-
_itensPorPagina = 50 (quantidade de SKUs que serão exibidos na página)
-
_marca= A (inicial ou nome completo da marca desejada)
-
Query completa: ?_pagina=1&_itensPorPagina=50&marca=
Endpoint (HLG):
https://api-mktplace-hlg.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/brand?_pagina=1&_itensPorPagina=50&marca=
Endpoint (PRD):
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/brand?_pagina=1&_itensPorPagina=50&marca=
Response
{
"valido": true,
"conteudo": {
"totalRegistros": 24988,
"totalPaginas": 2499,
"listaMarcas": [
{
"id": "2138145309",
"marca": " Ana Gonçalves"
},
{
"id": "726671013",
"marca": " A.Baby`s"
},
{
"id": "660923440",
"marca": " ACP"
},
{
"id": "666179432",
"marca": " ACRILEX"
},
{
"id": "653555941",
"marca": " ACRINIL"
},
{
"id": "630740278",
"marca": " ACTION RACING"
},
{
"id": "658225387",
"marca": " ADECK"
},
{
"id": "658224518",
"marca": " ADELBRAS"
},
{
"id": "758858211",
"marca": " AEROCATCH"
},
{
"id": "601714229",
"marca": " AKG"
}
],
"erro": ""
},
"codigo": "200",
"mensagem": "OK",
"timestamp": "2022-12-07T17:53:22.454+0000"
}
Consulta de categorias com garantia obrigatória
Com este serviço, é possível obter a lista completa de todas as categorias e seus respectivos IDs que, exigem o preenchimento do campo "garantia" ao serem utilizadas no body do POST /import/itens.
Realizar essa consulta previamente ao envio do produto minimiza as chances de recusa de ficha.
Método: GET
Composição do Header:
- access_token: Chave de acesso da loja
- client_id: Chave de acesso da integradora
- Accept: application/json
- Content-Type: application/json
Endpoint (HLG):
https://api-mktplace-hlg.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/required/category-with-warrenty
Endpoint (PRD):
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/required/category-with-warrenty
Response
[
{
"id": "17",
"nome": "Ar e Ventilação>Ar-Condicionado"
},
{
"id": "18",
"nome": "Ar e Ventilação>Ar-Condicionado>Split"
},
{
"id": "1010",
"nome": "Ar e Ventilação>Ar-Condicionado>Portátil"
},
{
"id": "2832",
"nome": "Ar e Ventilação>Ar-Condicionado>Cassete"
},
{
"id": "2833",
"nome": "Ar e Ventilação>Ar-Condicionado>Janela"
},
{
"id": "2834",
"nome": "Ar e Ventilação>Ar-Condicionado>Multi-Split"
},
{
"id": "2835",
"nome": "Ar e Ventilação>Ar-Condicionado>Piso-Teto"
},
{
"id": "27",
"nome": "Ar e Ventilação>Aquecedores"
},
{
"id": "169",
"nome": "Ar e Ventilação>Aquecedores>Elétrico"
},
{
"id": "170",
"nome": "Ar e Ventilação>Aquecedores>A Óleo"
},
{
"id": "2831",
"nome": "Ar e Ventilação>Aquecedores>Cerâmica"
},
{
"id": "3171",
"nome": "Ar e Ventilação>Aquecedores>Lareiras"
},
{
"id": "319",
"nome": "Ar e Ventilação>Climatizadores"
},
{
"id": "822",
"nome": "Ar e Ventilação>Ventiladores e Circuladores"
},
{
"id": "87",
"nome": "Ar e Ventilação>Ventiladores e Circuladores>Ventilador de Teto"
},
{
"id": "88",
"nome": "Ar e Ventilação>Ventiladores e Circuladores>Circulador de Ar"
},
{
"id": "2842",
"nome": "Ar e Ventilação>Ventiladores e Circuladores>Ventilador de Coluna"
},
{
"id": "2843",
"nome": "Ar e Ventilação>Ventiladores e Circuladores>Ventilador de Mesa"
},
{
"id": "2844",
"nome": "Ar e Ventilação>Ventiladores e Circuladores>Ventilador de Parede"
},
{
"id": "2845",
"nome": "Ar e Ventilação>Ventiladores e Circuladores>Ventilador de Torre"
},
{
"id": "2838",
"nome": "Ar e Ventilação>Cortina de Ar"
},
{
"id": "7",
"nome": "Áudio>MP3 e MP4 Players"
},
{
"id": "136",
"nome": "Áudio>Dock Station"
},
{
"id": "137",
"nome": "Áudio>Rádio Portátil"
},
{
"id": "138",
"nome": "Áudio>Rádio Relógio"
},
{
"id": "261",
"nome": "Áudio>Caixa de Som Portátil"
},
{
"id": "428",
"nome": "Áudio>Caixas Acústicas"
},
{
"id": "429",
"nome": "Áudio>Toca-Discos e Vitrola"
},
{
"id": "2767",
"nome": "Áudio>Micro e Mini System"
},
{
"id": "141",
"nome": "Acessórios e Inovações>Fones de Ouvido"
},
{
"id": "65",
"nome": "Acessórios e Inovações>Projetores e Acessórios>Projetores"
},
{
"id": "3308",
"nome": "Acessórios e Inovações>Projetores e Acessórios>Apresentador Multimídia"
},
{
"id": "3207",
"nome": "Acessórios e Inovações>Smartwatch>Smartwatches"
},
{
"id": "2849",
"nome": "Móveis>Colchões>Base Cama Box King"
},
{
"id": "2032",
"nome": "Tablets>Tablet"
},
{
"id": "2034",
"nome": "Tablets>Tablet>Tablet Android"
},
{
"id": "2035",
"nome": "Tablets>Tablet>iPad"
},
{
"id": "2036",
"nome": "Tablets>Tablet>Tablet Windows"
},
{
"id": "2221",
"nome": "Tablets>Tablet>Tablet BlackBerry"
},
{
"id": "3201",
"nome": "Tablets>Tablet>Tablet Infantil"
},
{
"id": "40",
"nome": "Alimentos>Matinais>Leite Condensado"
},
{
"id": "2483",
"nome": "Instrumentos Musicais>Teclas>Teclado"
},
{
"id": "1096",
"nome": "Ferramentas>Ferramentas Elétricas>Furadeiras"
},
{
"id": "1097",
"nome": "Ferramentas>Ferramentas Elétricas>Parafusadeiras"
},
{
"id": "1130",
"nome": "Ferramentas>Jardim>Aparadores de Grama"
},
{
"id": "1137",
"nome": "Ferramentas>Jardim>Motosserras e Eletrosserras"
},
{
"id": "131",
"nome": "Automotivo>Som Automotivo>DVD Automotivo"
},
{
"id": "2139",
"nome": "Games>Acessórios Gamer>Cadeira Gamer"
},
{
"id": "2135",
"nome": "Games>Playstation 5>Consoles Playstation 5"
},
{
"id": "2136",
"nome": "Games>Playstation 5>Jogos Playstation 5"
},
{
"id": "2140",
"nome": "Games>Xbox Series>Consoles Xbox Series"
},
{
"id": "2141",
"nome": "Games>Xbox Series>Jogos Xbox Series"
},
{
"id": "340",
"nome": "Esporte e Lazer>Bicicletas>Bicicletas Triciclos"
},
{
"id": "451",
"nome": "Esporte e Lazer>Bicicletas>Aro 26"
},
{
"id": "452",
"nome": "Esporte e Lazer>Bicicletas>Aro 700"
},
{
"id": "462",
"nome": "Esporte e Lazer>Bicicletas>Bicicletas Motorizadas"
},
{
"id": "848",
"nome": "Esporte e Lazer>Bicicletas>Bicicletas Elétricas"
},
{
"id": "1549",
"nome": "Esporte e Lazer>Bicicletas>Aro 24"
},
{
"id": "1719",
"nome": "Esporte e Lazer>Bicicletas>Bicicletas Dobráveis"
},
{
"id": "1735",
"nome": "Esporte e Lazer>Bicicletas>Aro 27"
},
{
"id": "2784",
"nome": "Esporte e Lazer>Bicicletas>Aro 29"
},
{
"id": "375",
"nome": "Esporte e Lazer>Fitness>Bicicletas Ergométricas"
},
{
"id": "376",
"nome": "Esporte e Lazer>Fitness>Esteiras Ergométricas"
},
{
"id": "2",
"nome": "TV e Vídeo>Televisores"
},
{
"id": "116",
"nome": "TV e Vídeo>Televisores>TV de Plasma"
},
{
"id": "120",
"nome": "TV e Vídeo>Televisores>TV Portátil"
},
{
"id": "370",
"nome": "TV e Vídeo>Televisores>TV LED"
},
{
"id": "951",
"nome": "TV e Vídeo>Televisores>TV 8K"
},
{
"id": "1548",
"nome": "TV e Vídeo>Televisores>TV Monitor"
},
{
"id": "1588",
"nome": "TV e Vídeo>Televisores>Smart TV"
},
{
"id": "2536",
"nome": "TV e Vídeo>Televisores>TV 4K"
},
{
"id": "121",
"nome": "TV e Vídeo>DVD e Blu-Ray Players>Blu-Ray"
},
{
"id": "122",
"nome": "TV e Vídeo>DVD e Blu-Ray Players>DVD Player"
},
{
"id": "124",
"nome": "TV e Vídeo>DVD e Blu-Ray Players>DVD Player Portátil com LCD"
},
{
"id": "4",
"nome": "TV e Vídeo>Home Theater"
},
{
"id": "126",
"nome": "TV e Vídeo>Home Theater>Home Theater"
},
{
"id": "127",
"nome": "TV e Vídeo>Home Theater>Receiver"
},
{
"id": "323",
"nome": "TV e Vídeo>Home Theater>Wireless"
},
{
"id": "2926",
"nome": "TV e Vídeo>Home Theater>Soundbar"
},
{
"id": "14",
"nome": "Eletrodomésticos>Refrigeradores"
},
{
"id": "142",
"nome": "Eletrodomésticos>Refrigeradores>1 Porta"
},
{
"id": "143",
"nome": "Eletrodomésticos>Refrigeradores>2 Portas"
},
{
"id": "145",
"nome": "Eletrodomésticos>Refrigeradores>Side By Side e French Door"
},
{
"id": "15",
"nome": "Eletrodomésticos>Freezer"
},
{
"id": "149",
"nome": "Eletrodomésticos>Freezer>Freezer Horizontal"
},
{
"id": "3391",
"nome": "Eletrodomésticos>Freezer>Freezer Vertical"
},
{
"id": "16",
"nome": "Eletrodomésticos>Adega de Vinhos"
},
{
"id": "160",
"nome": "Eletrodomésticos>Fogões>Piso 4 Bocas"
},
{
"id": "161",
"nome": "Eletrodomésticos>Fogões>Piso 5 Bocas"
},
{
"id": "162",
"nome": "Eletrodomésticos>Fogões>Piso 6 Bocas"
},
{
"id": "163",
"nome": "Eletrodomésticos>Fogões>Embutir 4 Bocas"
},
{
"id": "164",
"nome": "Eletrodomésticos>Fogões>Embutir 5 Bocas"
},
{
"id": "165",
"nome": "Eletrodomésticos>Fogões>Embutir 6 Bocas"
},
{
"id": "417",
"nome": "Eletrodomésticos>Fogões>Piso 2 Bocas"
},
{
"id": "2991",
"nome": "Eletrodomésticos>Fogões>Piso 3 Bocas"
},
{
"id": "20",
"nome": "Eletrodomésticos>Forno de Embutir"
},
{
"id": "21",
"nome": "Eletrodomésticos>Micro-ondas"
},
{
"id": "22",
"nome": "Eletrodomésticos>Depuradores de Ar"
},
{
"id": "23",
"nome": "Eletrodomésticos>Coifas"
},
{
"id": "24",
"nome": "Eletrodomésticos>Lavadoras"
},
{
"id": "167",
"nome": "Eletrodomésticos>Lavadoras>Até 6 kg"
},
{
"id": "168",
"nome": "Eletrodomésticos>Lavadoras>Acima de 10 kg"
},
{
"id": "793",
"nome": "Eletrodomésticos>Lavadoras>Entre 7kg e 9kg"
},
{
"id": "25",
"nome": "Eletrodomésticos>Lava-Louças"
},
{
"id": "26",
"nome": "Eletrodomésticos>Secadoras de Roupas"
},
{
"id": "2880",
"nome": "Eletrodomésticos>Secadoras de Roupas>Secadora de Parede"
},
{
"id": "2881",
"nome": "Eletrodomésticos>Secadoras de Roupas>Secadora de Piso"
},
{
"id": "147",
"nome": "Eletrodomésticos>Frigobar"
},
{
"id": "2156",
"nome": "Eletrodomésticos>Cooktops>Rangetop"
},
{
"id": "3190",
"nome": "Eletrodomésticos>Cooktops>4 Bocas"
},
{
"id": "3191",
"nome": "Eletrodomésticos>Cooktops>5 Bocas"
},
{
"id": "3200",
"nome": "Eletrodomésticos>Cooktops>3 Bocas"
},
{
"id": "813",
"nome": "Eletrodomésticos>Lava e Seca"
},
{
"id": "1599",
"nome": "Eletrodomésticos>Tanquinho"
},
{
"id": "2878",
"nome": "Eletrodomésticos>Centrífuga de Roupas"
},
{
"id": "30",
"nome": "Câmeras, Filmadoras e Drones>Câmeras Digitais"
},
{
"id": "904",
"nome": "Câmeras, Filmadoras e Drones>Câmeras Digitais>Câmeras profissionais"
},
{
"id": "907",
"nome": "Câmeras, Filmadoras e Drones>Câmeras Digitais>Câmeras Compactas"
},
{
"id": "1021",
"nome": "Câmeras, Filmadoras e Drones>Câmeras Digitais>Câmeras semiprofissionais"
},
{
"id": "128",
"nome": "Câmeras, Filmadoras e Drones>Filmadoras>Filmadoras Profissionais"
},
{
"id": "633",
"nome": "Câmeras, Filmadoras e Drones>Filmadoras>Filmadora Mini DV e DVD"
},
{
"id": "903",
"nome": "Bebês>Passeio>Carrinhos de 3 Rodas"
},
{
"id": "1047",
"nome": "Bebês>Passeio>Bebês Conforto"
},
{
"id": "1048",
"nome": "Bebês>Passeio>Cadeiras para Automóveis"
},
{
"id": "1049",
"nome": "Bebês>Passeio>Carrinhos para Passeio"
},
{
"id": "1459",
"nome": "Bebês>Passeio>Carrinhos Multifunção"
},
{
"id": "1463",
"nome": "Bebês>Passeio>Carrinhos para Gêmeos"
},
{
"id": "3065",
"nome": "Bebês>Passeio>Carrinhos Travel System"
},
{
"id": "39",
"nome": "Telefones e Celulares>Celulares"
},
{
"id": "3266",
"nome": "Telefones e Celulares>Smartphones>Android"
},
{
"id": "3267",
"nome": "Telefones e Celulares>Smartphones>iPhone"
},
{
"id": "47",
"nome": "Telefones e Celulares>Telefonia Fixa>Telefones sem fio"
},
{
"id": "55",
"nome": "Telefones e Celulares>Telefonia Fixa>Identificadores de Chamada"
},
{
"id": "804",
"nome": "Telefones e Celulares>Telefonia Fixa>Ramais"
},
{
"id": "2931",
"nome": "Telefones e Celulares>Telefonia Fixa>Celular Fixo"
},
{
"id": "62",
"nome": "Informática>Impressora Multifuncional"
},
{
"id": "214",
"nome": "Informática>Impressora Multifuncional>Tanque de Tinta"
},
{
"id": "315",
"nome": "Informática>Impressora Multifuncional>Jato de Tinta"
},
{
"id": "316",
"nome": "Informática>Impressora Multifuncional>Laser"
},
{
"id": "317",
"nome": "Informática>Impressora Multifuncional>Laser Colorida"
},
{
"id": "75",
"nome": "Eletroportáteis>Batedeiras"
},
{
"id": "2887",
"nome": "Eletroportáteis>Batedeiras>Batedeira"
},
{
"id": "2888",
"nome": "Eletroportáteis>Batedeiras>Planetária"
},
{
"id": "2889",
"nome": "Eletroportáteis>Batedeiras>Acessórios Batedeiras"
},
{
"id": "77",
"nome": "Eletroportáteis>Cafeteiras"
},
{
"id": "271",
"nome": "Eletroportáteis>Cafeteiras>Cafeteiras Expresso"
},
{
"id": "272",
"nome": "Eletroportáteis>Cafeteiras>Cafeteiras Elétricas"
},
{
"id": "997",
"nome": "Eletroportáteis>Cafeteiras>Nespresso"
},
{
"id": "2836",
"nome": "Eletroportáteis>Cafeteiras>Cafeteiras TRES"
},
{
"id": "2891",
"nome": "Eletroportáteis>Cafeteiras>Cafeteiras Dolce Gusto"
},
{
"id": "2968",
"nome": "Eletroportáteis>Cafeteiras>Moedor de Grãos"
},
{
"id": "78",
"nome": "Eletroportáteis>Torradeiras"
},
{
"id": "79",
"nome": "Eletroportáteis>Grill e Sanduicheiras"
},
{
"id": "273",
"nome": "Eletroportáteis>Grill e Sanduicheiras>Sanduicheiras"
},
{
"id": "274",
"nome": "Eletroportáteis>Grill e Sanduicheiras>Grill"
},
{
"id": "2973",
"nome": "Eletroportáteis>Grill e Sanduicheiras>Sanduicheira Grill"
},
{
"id": "81",
"nome": "Eletroportáteis>Forno Elétrico"
},
{
"id": "82",
"nome": "Eletroportáteis>Ferro de Passar"
},
{
"id": "275",
"nome": "Eletroportáteis>Ferro de Passar>Ferro a Seco"
},
{
"id": "276",
"nome": "Eletroportáteis>Ferro de Passar>Ferro a Vapor"
},
{
"id": "83",
"nome": "Eletroportáteis>Centrífuga de Alimentos"
},
{
"id": "84",
"nome": "Eletroportáteis>Panelas Elétricas"
},
{
"id": "85",
"nome": "Eletroportáteis>Mixer"
},
{
"id": "86",
"nome": "Eletroportáteis>Processador de Alimentos"
},
{
"id": "92",
"nome": "Eletroportáteis>Máquinas de Costura"
},
{
"id": "719",
"nome": "Eletroportáteis>Máquinas de Costura>Costura"
},
{
"id": "720",
"nome": "Eletroportáteis>Máquinas de Costura>Máquina de Bordar"
},
{
"id": "310",
"nome": "Eletroportáteis>Espremedores de Frutas"
},
{
"id": "311",
"nome": "Eletroportáteis>Máquina de Bebidas"
},
{
"id": "384",
"nome": "Eletroportáteis>Fritadeiras"
},
{
"id": "89",
"nome": "Eletroportáteis>Bebedouros e Purificadores>Purificador"
},
{
"id": "805",
"nome": "Eletroportáteis>Bebedouros e Purificadores>Refil"
},
{
"id": "2890",
"nome": "Eletroportáteis>Bebedouros e Purificadores>Bebedouro de Coluna"
},
{
"id": "2893",
"nome": "Eletroportáteis>Bebedouros e Purificadores>Filtro"
},
{
"id": "76",
"nome": "Eletroportáteis>Aspiradores e Acessórios>Aspirador de Pó"
},
{
"id": "2886",
"nome": "Eletroportáteis>Aspiradores e Acessórios>Aspirador Água e Pó"
},
{
"id": "2892",
"nome": "Eletroportáteis>Aspiradores e Acessórios>Vassoura Elétrica"
},
{
"id": "74",
"nome": "Eletroportáteis>Liquidificadores e Acessórios>Liquidificadores"
},
{
"id": "826",
"nome": "Eletroportáteis>Mini Geladeira"
},
{
"id": "996",
"nome": "Eletroportáteis>Chaleiras Elétricas"
},
{
"id": "1012",
"nome": "Eletroportáteis>Vaporizadores e Higienizadores"
},
{
"id": "453",
"nome": "Eletroportáteis>Vaporizadores e Higienizadores>Vaporizador"
},
{
"id": "1016",
"nome": "Eletroportáteis>Vaporizadores e Higienizadores>Higienizador"
},
{
"id": "2958",
"nome": "Eletroportáteis>Omeleteira"
},
{
"id": "2959",
"nome": "Eletroportáteis>Máquinas de Waffle e Crepeiras"
},
{
"id": "1072",
"nome": "Bebês>Babás Eletrônicas"
},
{
"id": "2960",
"nome": "Eletroportáteis>Máquinas de Waffle e Crepeiras>Máquinas de Waffle"
},
{
"id": "2961",
"nome": "Eletroportáteis>Máquinas de Waffle e Crepeiras>Máquinas de Crepe"
},
{
"id": "2962",
"nome": "Eletroportáteis>Máquinas de Waffle e Crepeiras>Panquequeira"
},
{
"id": "2963",
"nome": "Eletroportáteis>Chocolateira e Fondue"
},
{
"id": "2964",
"nome": "Eletroportáteis>Chocolateira e Fondue>Chocolateira"
},
{
"id": "2965",
"nome": "Eletroportáteis>Chocolateira e Fondue>Fondue"
},
{
"id": "3356",
"nome": "Eletroportáteis>Cozinha Criativa"
},
{
"id": "90",
"nome": "Eletroportáteis>Cozinha Criativa>Panificadora"
},
{
"id": "356",
"nome": "Eletroportáteis>Cozinha Criativa>Máquina de Gelo"
},
{
"id": "2953",
"nome": "Eletroportáteis>Cozinha Criativa>Máquinas de Cupcake e Bolos"
},
{
"id": "2954",
"nome": "Eletroportáteis>Cozinha Criativa>Sorveteiras e Iogurteiras"
},
{
"id": "2955",
"nome": "Eletroportáteis>Cozinha Criativa>Pipoqueiras"
},
{
"id": "2983",
"nome": "Eletroportáteis>Cozinha Criativa>Máquina de Algodão Doce"
},
{
"id": "2984",
"nome": "Eletroportáteis>Cozinha Criativa>Máquina de Raspadinha"
},
{
"id": "2985",
"nome": "Eletroportáteis>Cozinha Criativa>Máquina de Biscoito"
},
{
"id": "298",
"nome": "Móveis>Quartos>Guarda-roupas e Roupeiros"
},
{
"id": "669",
"nome": "Móveis>Quartos>Cabeceiras"
},
{
"id": "670",
"nome": "Móveis>Quartos>Mesa de Cabeceira"
},
{
"id": "671",
"nome": "Móveis>Quartos>Sapateiras"
},
{
"id": "672",
"nome": "Móveis>Quartos>Cômodas"
},
{
"id": "690",
"nome": "Móveis>Quartos>Camas"
},
{
"id": "721",
"nome": "Móveis>Quartos>Penteadeira e Toucador"
},
{
"id": "1582",
"nome": "Móveis>Quartos>Calçadeiras"
},
{
"id": "1591",
"nome": "Móveis>Quartos>Beliche e Treliche"
},
{
"id": "2917",
"nome": "Móveis>Quartos>Guarda-roupas Modulados"
},
{
"id": "285",
"nome": "Móveis>Escritório>Cadeiras de Escritório"
},
{
"id": "297",
"nome": "Móveis>Escritório>Gaveteiros"
},
{
"id": "658",
"nome": "Móveis>Escritório>Escrivaninhas"
},
{
"id": "676",
"nome": "Móveis>Escritório>Mesa de Escritório"
},
{
"id": "677",
"nome": "Móveis>Escritório>Estantes e Armários"
},
{
"id": "2138",
"nome": "Móveis>Escritório>Mesa Gamer"
},
{
"id": "320",
"nome": "Móveis>Sala de Estar>Sofás"
},
{
"id": "681",
"nome": "Móveis>Sala de Estar>Estantes"
},
{
"id": "682",
"nome": "Móveis>Sala de Estar>Racks e Painéis"
},
{
"id": "683",
"nome": "Móveis>Sala de Estar>Poltronas"
},
{
"id": "685",
"nome": "Móveis>Sala de Estar>Mesas de Centro"
},
{
"id": "686",
"nome": "Móveis>Sala de Estar>Mesas Laterais"
},
{
"id": "687",
"nome": "Móveis>Sala de Estar>Sofás-camas"
},
{
"id": "688",
"nome": "Móveis>Sala de Estar>Aparadores"
},
{
"id": "287",
"nome": "Móveis>Quarto Infantil e Bebê>Cadeira e Mesa Infantil"
},
{
"id": "292",
"nome": "Móveis>Quarto Infantil e Bebê>Berços"
},
{
"id": "293",
"nome": "Móveis>Quarto Infantil e Bebê>Cama Infantil"
},
{
"id": "294",
"nome": "Móveis>Quarto Infantil e Bebê>Cômoda Infantil"
},
{
"id": "673",
"nome": "Móveis>Quarto Infantil e Bebê>Poltrona de Amamentação"
},
{
"id": "674",
"nome": "Móveis>Quarto Infantil e Bebê>Guarda-roupa e Roupeiro Infantil"
},
{
"id": "3305",
"nome": "Móveis>Quarto Infantil e Bebê>Mesa de Cabeceira Infantil"
},
{
"id": "3316",
"nome": "Móveis>Quarto Infantil e Bebê>Estante Infantil"
},
{
"id": "3317",
"nome": "Móveis>Quarto Infantil e Bebê>Nicho e Prateleira Infantil"
},
{
"id": "3320",
"nome": "Móveis>Quarto Infantil e Bebê>Penteadeira Infantil"
},
{
"id": "289",
"nome": "Móveis>Área de Serviço>Armários Multiuso"
},
{
"id": "791",
"nome": "Móveis>Área de Serviço>Tábua de Passar com Móvel"
},
{
"id": "695",
"nome": "Móveis>Sala de Jantar>Buffets"
},
{
"id": "696",
"nome": "Móveis>Sala de Jantar>Mesa de Jantar"
},
{
"id": "697",
"nome": "Móveis>Sala de Jantar>Cadeira de Jantar"
},
{
"id": "708",
"nome": "Móveis>Sala de Jantar>Cristaleiras"
},
{
"id": "692",
"nome": "Móveis>Bar"
},
{
"id": "709",
"nome": "Móveis>Bar>Bancos e Banquetas"
},
{
"id": "725",
"nome": "Móveis>Bar>Barzinho"
},
{
"id": "726",
"nome": "Móveis>Bar>Mesa para Bar"
},
{
"id": "665",
"nome": "Móveis>Cozinhas>Balcões e Fruteiras"
},
{
"id": "698",
"nome": "Móveis>Cozinhas>Cozinha Compacta"
},
{
"id": "700",
"nome": "Móveis>Cozinhas>Mesas"
},
{
"id": "701",
"nome": "Móveis>Cozinhas>Cadeiras"
},
{
"id": "1095",
"nome": "Móveis>Colchões"
},
{
"id": "277",
"nome": "Móveis>Colchões>Colchão Infantil"
},
{
"id": "278",
"nome": "Móveis>Colchões>Colchão de Casal"
},
{
"id": "279",
"nome": "Móveis>Colchões>Colchão Queen"
},
{
"id": "280",
"nome": "Móveis>Colchões>Colchão King"
},
{
"id": "281",
"nome": "Móveis>Colchões>Cama Box Solteiro"
},
{
"id": "282",
"nome": "Móveis>Colchões>Cama Box Casal"
},
{
"id": "283",
"nome": "Móveis>Colchões>Cama Box Queen"
},
{
"id": "284",
"nome": "Móveis>Colchões>Cama Box King"
},
{
"id": "312",
"nome": "Móveis>Colchões>Colchão de Solteiro"
},
{
"id": "852",
"nome": "Móveis>Colchões>Base Cama Box Super King"
},
{
"id": "2130",
"nome": "Móveis>Colchões>Cama Box Super King"
},
{
"id": "2131",
"nome": "Móveis>Colchões>Colchão Super King"
},
{
"id": "2846",
"nome": "Móveis>Colchões>Base Cama Box Solteiro"
},
{
"id": "2847",
"nome": "Móveis>Colchões>Base Cama Box Casal"
},
{
"id": "2848",
"nome": "Móveis>Colchões>Base Cama Box Queen"
},
{
"id": "148",
"nome": "Agro, Indústria e Comércio>Refrigeração>Câmara Fria"
},
{
"id": "2054",
"nome": "Agro, Indústria e Comércio>Refrigeração>Cervejeiras"
}
]
Consulta de validade de EAN
Através deste serviço, é possível consultar um EAN específico para que o seller confirme se é válido ou não antes de realizar o envio do produto.
Lembrando que, caso seja passado um EAN inválido, a ficha será recusada.
Método: GET
Composição do Header:
- access_token: Chave de acesso da loja
- client_id: Chave de acesso da integradora
- Accept: application/json
- Content-Type: application/json
Endpoint (HLG):
https://api-mktplace-hlg.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/validation/ean/{ean}
Endpoint (PRD):
https://api-mktplace.viavarejo.com.br/api/v4/api-front-importer-v4/jersey/validation/ean/{ean}
Response
{
"ean": "12345678910111",
"valido": true,
"mensagem": "EAN Válido"
}