Ir para o conteúdo principal

LojaVenda (STATUS: DOCUMENTADO)

Documentação Técnica
Nome do cliente OSKLEN
Nome do projeto Integração LINX (Venda PDV)
Biblioteca wosk_loja_venda
Data 26/03/2026

Histórico de Versões
Data Versão Modificado por Descrição da Mudança
26/03/2026 1.0 Maykon/Gustavo Criação da documentação técnica do processo Loja Venda (LINX).

Descrição

Este serviço de venda do PDV recebe estruturas aninhadas (venda, pagamentos, produtos, vendedores, cancelamentos, fechamento de caixa, etc.) e persiste no banco LINX em tabelas como LOJA_VENDA, LOJA_VENDA_PGTO, LOJA_CAIXA_LANCAMENTOS, ILLIMITAR_PDV_CONTROLE_VENDA e demais entidades tratadas pelos métodos internos.
Não há chamada HTTP ao ILLI no arquivo analisado; o fluxo é de gravação e regras de negócio no LINX.

Endpoint (API)

O método principal valida o payload raiz e processa blocos opcionais: VENDAS (com validação de produtos quando informados, comissão de vendedor, lançamento de caixa, controle de ticket, pagamentos e parcelas, venda, vendedores e produtos da venda), VENDEDORES, CANCELAMENTOS, CANCELAMENTO_PRAZO e FECHAMENTO_CAIXA, cada um com try/catch próprio e retorno de Mensagem/Mensagem Detalhada no sub-objeto.

  • Chamada: Requisição HTTP
  • Recurso: /bibliotecas/2cd82f28-3bbf-4f82-bbd8-383f7a912b4f/wosk_loja_venda
  • Método HTTP: POST
Estruturação de Dados
Estrutura de alto nível
Campo Tipo Obrigatório Descrição
key string não Chave de API quando exigida pela plataforma.
VENDAS array condicional Primeiro elemento contém venda completa com pagamentos e produtos.
VENDEDORES array condicional Atualização de vendedores vinculados à operação.
CANCELAMENTOS array condicional Cancelamento com CO obrigatório.
CANCELAMENTO_PRAZO array condicional Cancelamento fora do prazo com validação de produtos quando aplicável.
FECHAMENTO_CAIXA array condicional Fechamento com lançamento de caixa.

Exemplo de payload enviado para o endpoint (JSON) — esqueleto:

{
  "key": "<API_KEY_SE_APLICAVEL>",
  "VENDAS": [
    {
      "CODIGO_FILIAL": "000001",
      "TERMINAL": "001",
      "DATA": "<DATA_HORA>",
      "VENDEDOR": "<VENDEDOR>",
      "PAGAMENTOS": [],
      "PRODUTOS": []
    }
  ]
}
Tratamento de Dados

Inclui normalização de terminal, datas de venda e digitação, obtenção de comissão em LOJA_VENDEDORES, geração de sequências de caixa e ticket, persistência de pagamentos e parcelas, itens de venda e demais entidades conforme cada método setLoja* no código-fonte.

Tratamento de retorno

Cada bloco processado retorna Mensagem OK ou ERROR com detalhe; o array raiz é atualizado com o último resultado processado e devolvido após registro de auditoria.

Fluxo do Processo

Diagrama do processo


Critérios de Aceitação
Processo Subprocesso Descrição Situação esperada
Endpoint (API) Venda completa Com VENDAS[0] válido, deve gravar caixa, venda, pagamentos e produtos de forma consistente. Mensagem OK ou erro explícito.