Variações e opções
Opções de compra, variações, preços por quantidade e produtos obrigatórios de um produto do seller, e quando usar cada um.
Um mesmo produto pode ser vendido em várias versões (cor, tamanho, voltagem) e com preço que cai conforme a quantidade. Esta seção reúne as quatro ferramentas para isso: opções de compra, variações, escalas de preço e produtos obrigatórios. Todas operam sobre um produto do seu seller, em /api/v1/vendor/products/{id}/....
Como funciona
| Ferramenta | Quando usar | Estoque e SKU |
|---|---|---|
| Opção de compra | Escolha dentro do produto: camiseta P/M/G com o mesmo estoque, gravação personalizada, embrulho. | Do produto. O valor só soma um sufixo ao SKU. |
| Variação | Versões realmente diferentes: cada cor/tamanho tem estoque e SKU próprios. | De cada variação (produto filho). |
| Escala de preço | Preço menor a partir de certa quantidade ou para um grupo de clientes. | Não muda. |
| Produto obrigatório | Ao comprar este produto, o cliente também leva (ou é sugerido a levar) outro. | Cada produto tem o seu. |
O fluxo das variações tem três passos, sempre nesta ordem:
- Defina os eixos
Chame Definir eixos com as características que diferenciam as versões (por exemplo Cor e Tamanho). Isso cria o grupo de variação do produto pai.
- Crie as variações
Uma a uma em Variações, ou todas as combinações de uma vez com
generate. - Ajuste cada filha
As filhas nascem copiando o pai. Corrija SKU, estoque e preço de cada uma; depois use
syncquando mudar descrição ou categoria do pai.
Conceitos importantes
Produto pai e filhas
O pai é o produto que o cliente vê agrupando as versões. Cada variação é um produto de verdade (com parent_product_id), que também aparece na listagem de produtos com is_variation: true. Uma variação não pode ter filhas.
Preços por quantidade
Uma escala diz "a partir de N unidades o preço unitário é X". O preço cobrado nunca passa do preço base do produto, e se mais de uma escala se aplica, vale a de menor preço efetivo (regra padrão da loja).
Endpoints
Erros comuns
- Criar variação antes dos eixos. Volta
500com "parent product has no variation group". Defina os eixos primeiro. - Esperar que
DELETE .../variations/{id}apague a filha. Ele só desvincula: a filha vira um produto comum. Para apagar de vez, use Excluir produto nela. - Gerar variações e esquecer o estoque. As filhas geradas nascem com estoque
0e SKU vazio. - Trocar
PUT .../price-tiersporPOST. OPUTsubstitui todas as escalas; oPOSTcria ou atualiza uma só. - Mandar um
optionIdde outra opção. A plataforma não confere se a opção é do produto do caminho. Use só ids lidos do mesmo produto. - Reutilizar o mesmo par
lower_limit/grupo. OPOSTde escala faz upsert: sobrescreve a escala existente em vez de dar erro. - Esquecer que
percentage_discountmanda. Em uma escala compercentage_discountmaior que zero, opriceé ignorado no cálculo do carrinho.