Pular para o conteúdo principal

Lança ajustes de saldo

POST 

/sku/inventory

Lança um array de ajustes de saldo. O handler processa item por item, criando uma movimentação de estoque (StockKeepingUnitMovement) para cada item válido e um registro de ajuste (StockKeepingUnitInventory) apontando para ela. Para cada movimentação, dispara uma notificação SkuBalanceAdjust na fila SQS webhook.fifo.

Cálculo da diferença:

  • Quando IDMovementType = 0 ou 1, força a direção e usa QuantityInventory como Quantity da movimentação.
  • Quando IDMovementType = 3, compara QuantityInventory contra o saldo disponível atual do SKU (QtyAvailable) e cria movimentação pela diferença.
  • Quando IDMovementType é omitido, compara QuantityInventory contra o saldo do lote (SUM(movements.Quantity)) e cria movimentação pela diferença.

Custo aplicado: CostSet (custo manual) quando UseCostFromCostSet = 1; caso contrário, CostAverage apurado pelo balanço; quando o custo médio é zero, CostLastPurchase do SKU.

Auto-criação de lote: quando o SKU não tem lote no armazém, o handler cria automaticamente um lote no primeiro endereço (Default = 1) — quando não há endereço, cria um endereço Principal antes.

Erros parciais: itens inválidos não interrompem o processamento — são acumulados em tempError e devolvidos no array de resposta.

Request

Responses

Resposta. Quando todos os itens foram processados com sucesso, devolve um array vazio. Quando há erros parciais, devolve a lista de falhas.