| retorno | object | - | obrigatório | Elemento raiz do retorno |
| retorno.status_processamento | int | - | obrigatório | Conforme tabela “Status de Processamento” |
| retorno.status | string | - | obrigatório | Status do retorno: “OK” ou “Erro” |
| retorno.codigo_erro | int | - | condicional | Conforme tabela “Códigos de erro” (apenas se status=Erro) |
| retorno.erros[] | list | - | condicional | Lista dos erros encontrados |
| retorno.erros[].erro | string | - | condicional | Mensagem descrevendo o erro |
| retorno.produto | object | - | condicional | Elemento contendo dados do produto (presente se status=“OK”) |
| retorno.produto.id | int | - | condicional | Número de identificação do produto na Olist |
| retorno.produto.data_criacao | string | 19 | condicional | Data de criação (formato: dd/mm/aaaa hh:mm:ss) |
| retorno.produto.nome | string | 120 | condicional | Nome do produto |
| retorno.produto.codigo | string | 30 | condicional | Código do produto |
| retorno.produto.unidade | string | 3 | condicional | Unidade do produto |
| retorno.produto.preco | decimal | - | condicional | Preço de venda do produto |
| retorno.produto.preco_promocional | decimal | - | condicional | Preço promocional do produto |
| retorno.produto.ncm | string | 10 | condicional | NCM do produto |
| retorno.produto.origem | string | 1 | condicional | Código conforme Tabela Origem |
| retorno.produto.gtin | string | 14 | condicional | GTIN/EAN do produto |
| retorno.produto.gtin_embalagem | string | 14 | condicional | GTIN/EAN da embalagem |
| retorno.produto.localizacao | string | 50 | condicional | Localização física no estoque |
| retorno.produto.peso_liquido | decimal | - | condicional | Peso líquido em Kg |
| retorno.produto.peso_bruto | decimal | - | condicional | Peso bruto em Kg |
| retorno.produto.estoque_minimo | decimal | - | condicional | Quantidade mínima do estoque |
| retorno.produto.estoque_maximo | decimal | - | condicional | Quantidade máxima do estoque |
| retorno.produto.id_fornecedor | int | - | condicional | ID do fornecedor na Olist |
| retorno.produto.codigo_fornecedor | string | 15 | condicional | Código do fornecedor na Olist |
| retorno.produto.codigo_pelo_fornecedor | string | 20 | condicional | Código do produto pelo fornecedor |
| retorno.produto.unidade_por_caixa | string | 3 | condicional | Itens por embalagem |
| retorno.produto.preco_custo | decimal | - | condicional | Preço de custo do produto |
| retorno.produto.preco_custo_medio | decimal | - | condicional | Preço médio de custo |
| retorno.produto.situacao | string | 1 | condicional | ”A” (Ativo) ou “I” (Inativo) |
| retorno.produto.tipo | string | 1 | condicional | ”P” (Produto) ou “S” (Serviço) |
| retorno.produto.classe_ipi | string | 5 | condicional | Classe IPI para bebidas/cigarros |
| retorno.produto.valor_ipi_fixo | decimal | - | condicional | Valor IPI fixo |
| retorno.produto.cod_lista_servicos | string | 5 | condicional | Código conforme Tabela Lista de Serviços |
| retorno.produto.descricao_complementar | text | - | condicional | Descrição complementar |
| retorno.produto.obs | text | - | condicional | Observações gerais |
| retorno.produto.garantia | string | 20 | condicional | Garantia do produto |
| retorno.produto.cest | text | 9 | condicional | Código CEST do produto |
| retorno.produto.tipoVariacao | string | 1 | obrigatório | ”N” (Normal), “P” (Pai), “V” (Variação) |
| retorno.produto.variacoes[] | list | - | condicional | Lista de variações (quando tipoVariacao=“P”) |
| retorno.produto.variacoes[].variacao.id | int | - | condicional | ID da variação na Olist |
| retorno.produto.variacoes[].variacao.codigo | string | - | condicional | Código da variação |
| retorno.produto.variacoes[].variacao.preco | decimal | - | condicional | Preço da variação |
| retorno.produto.variacoes[].variacao.grade[] | array | - | condicional | Grade da variação (chave-valor) |
| retorno.produto.idProdutoPai | int | - | condicional | ID do produto pai (quando tipoVariacao=“V”) |
| retorno.produto.sob_encomenda | string | 1 | obrigatório | ”S” (Sim) ou “N” (Não) |
| retorno.produto.dias_preparacao | int | 3 | condicional | Dias corridos para preparação |
| retorno.produto.grade[] | array | - | condicional | Grade do produto |
| retorno.produto.marca | string | - | condicional | Marca do produto |
| retorno.produto.tipoEmbalagem | int | - | condicional | 1 (Envelope), 2 (Pacote/Caixa), 3 (Rolo/Cilindro) |
| retorno.produto.alturaEmbalagem | decimal | - | condicional | Altura da embalagem em cm |
| retorno.produto.larguraEmbalagem | decimal | - | condicional | Largura da embalagem em cm |
| retorno.produto.comprimentoEmbalagem | decimal | - | condicional | Comprimento da embalagem em cm |
| retorno.produto.diametroEmbalagem | decimal | - | condicional | Diâmetro da embalagem em cm |
| retorno.produto.categoria | string | - | condicional | Árvore de categorias (separador ”>>“) |
| retorno.produto.anexos[] | list | - | condicional | Lista de imagens e anexos |
| retorno.produto.anexos[].anexo | string | - | condicional | URL do anexo/imagem |
| retorno.produto.imagens_externas[] | list | - | condicional | URLs de imagens externas |
| retorno.produto.imagens_externas[].imagem_externa.url | string | - | condicional | URL da imagem externa |
| retorno.produto.classe_produto | string | 1 | obrigatório | ”S” (Simples), “K” (Kit), “V” (Com variações), “F” (Fabricado), “M” (Matéria-prima) |
| retorno.produto.kit[] | list | - | condicional | Itens do kit (quando classe_produto=“K”) |
| retorno.produto.kit[].item.id_produto | int | - | obrigatório | ID do produto no kit |
| retorno.produto.kit[].item.quantidade | decimal | - | obrigatório | Quantidade no kit |
| retorno.produto.seo_title | string | 120 | condicional | Título para SEO/Google |
| retorno.produto.seo_keywords | string | 255 | condicional | Keywords para SEO (separadas por vírgula) |
| retorno.produto.link_video | string | 100 | condicional | Link do vídeo |
| retorno.produto.seo_description | string | 255 | condicional | Descrição para SEO |
| retorno.produto.slug | text | - | condicional | Identificação legível no link |
| retorno.produto.mapeamentos[] | array | - | condicional | Mapeamentos com e-commerce (requer Developer-Id) |
| retorno.produto.mapeamentos[].mapeamento.idEcommerce | int | - | obrigatório | ID do e-commerce |
| retorno.produto.mapeamentos[].mapeamento.skuMapeamento | string | - | obrigatório | ID do mapeamento no e-commerce |
| retorno.produto.mapeamentos[].mapeamento.idMapeamento | int | - | obrigatório | ID do mapeamento na Olist |
| retorno.produto.mapeamentos[].mapeamento.preco | decimal | - | condicional | Preço no e-commerce |
| retorno.produto.mapeamentos[].mapeamento.preco_promocional | decimal | - | condicional | Preço promocional no e-commerce |