I
Isis Control

O Isis separa catálogo e estoque de propósito:

  • Catálogo é o conjunto de produtos da empresa (tenant). SKU único.
  • Estoque é o saldo e o preço do produto em cada loja. Loja A pode ter 50 unidades a R$10; loja B, 0 unidades a R$12.

Catálogo → Novo produto:

  • Nome (obrigatório).
  • SKU (opcional mas recomendado — único por empresa).
  • Descrição (até 2000 caracteres).
  • Dados fiscais (pra emitir nota):
    • NCM (8 dígitos) — consulte no site do SPED.
    • CEST (7 dígitos, só pros produtos de ST).
    • Origem (0 = nacional, 1-8 = importados — default 0).
    • CFOP de venda (4 dígitos, 5102 = revenda tributada intra-estadual).
  • Comissão do vendedor (%) — override opcional; vazio = usa o padrão do vendedor.

Produto criado fica no catálogo mas ainda não está em nenhuma loja.

Adicionar ao estoque de uma loja

Selecione a loja no topo. Estoque → Adicionar ao estoque:

  • Selecione o produto do catálogo.
  • Preço varejo.
  • Saldo inicial.
  • Alerta de estoque mínimo (opcional, default 5).

Editar preço e estoque

Estoque → clicar no produto → Editar. Cada mudança de preço gera um registro no histórico de preços (audível em Relatórios → Histórico de preços).

Pra adicionar unidades sem editar o preço (ex.: chegou uma caixa), use Movimentações → Entrada — gera StockMovement rastreável com fornecedor associado.

Faixas de preço de atacado

Se a loja tem atacado habilitado (toggle em Configurações → Lojas), o estoque de cada produto aceita faixas:

  • 10+ → R$ 8,00
  • 50+ → R$ 6,00
  • 100+ → R$ 5,00

O PDV aplica automaticamente a maior faixa que couber na quantidade. Veja também Tabelas de preço e atacado B2B.

Soft delete

Produtos no catálogo não são apagados — são marcados como is_active: false. Assim:

  • Vendas antigas continuam referenciando o produto corretamente.
  • Relatórios históricos não quebram.
  • Pra reativar, edite e marque de novo como ativo.

Importação em massa

Catálogo → Importar CSV. Baixa um template, preenche com seus produtos e faz upload. O sistema:

  1. Valida cada linha (Zod no backend).
  2. Mostra preview com linhas OK e linhas com erro (campo + motivo).
  3. Se tem erro, devolve 422 com tudo detalhado — você corrige o CSV e re-envia.
  4. Sem erros, importa em uma transação.

Mesmo esquema vale pra Clientes e Fornecedores.