Skip to main content

PROC001 – Aplicar desconto/acréscimo


image-1762776253666.png

Projeto/Sistema:
GERENCIAMENTO DE PROJETOS
Versão do Template:
1.2
Processo:
PROC001 – Aplicar desconto/acréscimo
Versão do Documento:
1.0
Responsável(eis): 
Jalile Cornachioni

Data: 

10/11/2025

1. Introdução

Definir o comportamento padrão para aplicação de desconto ou acréscimo durante o fluxo de pagamento unificado, considerando regras de interface, regras de negócio e impactos técnicos.

2. Processo (adicionar fluxograma exemplo)

image-1762870559701.png

-- Fluxograma PROC001 - Aplicar desconto/acréscimo --

 

Processo

Envolvidos

Dados de Entrada

Dados de Saída

PROC001 - Aplicar desconto/acréscimo

Frente de caixa / API Pagamento Unificado

Valor total, tipo de ajuste, origem da ação

Valor ajustado, log de alteração

PROC010- Excluir pagamento já lançado Operador do caixa Identificação do pagamento selecionado Pagamento removido e saldo recalculado
PROC011 - Quitar Restante Operador do caixa Saldo pendente e forma de pagamento selecionada Campo preenchido automaticamente com o valor restante
PROC012 - Finalizar Pagamento Operador do caixa Todos os pagamentos registrados e saldo zerado Venda concluída e registros financeiros emitidos
PROC013 - Cancelar Operador do caixa Ação do usuário Modal fechado sem registrar alterações

Processos Relacionados

Especificação Funcional


PROC001 EXEMPLO:

Protótipo de Tela:

image-1762865283438.png

Descrição dos Campos:

Campo

Tipo

Tamanho

Obrig. ?

Máscara

Observações

Total da Compra

Numérico

10,2

Sim

R$

Herdado da tela de origem. Não inclui frete, impostos, descontos e acréscimos. Valor confiável enviado pela origem. Somente leitura.

Descontos

Numérico

10,2

Não

R$

Valor monetário. Campo editável. Não aceita sinal + ou -. Não pode exceder o Total da Compra. Pode zerar o total líquido.

Acréscimos

Numérico

10,2

Não

R$

Valor monetário. Campo editável. Não aceita sinal + ou -. Respeita limite máximo configurado, se existir.

Total Líquido da Venda

Numérico

10,2

Sim

R$

Calculado: Total da Compra - Desconto + Acréscimo. Somente leitura.

Regras de Interface:
  • O sistema deve exibir Total da Compra e Total Líquido como somente leitura.
  • O sistema deve apresentar Desconto e Acréscimo como campos monetários sempre habilitados para digitação.
  • O sistema não deve permitir caracteres inválidos, letras, símbolos, ou sinais negativo/positivo.
  • O sistema deve recalcular automaticamente o Total Líquido a cada alteração de Desconto ou Acréscimo.
  • O sistema deve aceitar valor zero em qualquer um dos campos.
  • O sistema deve impedir que Desconto seja maior que o Total da Compra.
  • O sistema deve impedir que Acréscimo ultrapasse o valor máximo configurado, quando existir.
  • O sistema deve seguir a regra global de arredondamento vigente no sistema (quando configurada).
  • O sistema não deve exibir frete, impostos ou outros totais no modal.
Regras de Negócio:
  • O sistema deve receber Total da Compra, Desconto e Acréscimo da tela de origem.
  • O sistema deve confiar integralmente nos valores enviados pela origem sem recálculo interno desses componentes.
  • O sistema deve considerar que o campo Desconto exibido no Pagamento Unificado representa somente o valor monetário de desconto enviado pela tela de origem, não deve carregar valores percentuais.
  • O sistema deve considerar que o campo Acréscimo exibido no Pagamento Unificado representa o valor monetário de acréscimos enviado pela origem, incluindo acréscimos derivados de frete, seguro, impostos ou outros itens adicionais.
  • O sistema deve assumir que qualquer valor de frete, seguro, impostos ou taxas já foi previamente aplicado e consolidado no Total da Compra ou permanecerá restrito à tela origem conforme regra dessa tela.
  • O sistema não deve recalcular nem agregar frete, impostos, seguros, taxas ou outros valores ao Desconto ou ao Acréscimo dentro do modal.
  • Caso o usuário precise alterar Frete ou Impostos, ele deve cancelar o Pagamento Unificado, ajustar esses valores na tela de origem e, só então, reabrir o modal.
  • O sistema não deve permitir que os campos de desconto e acréscimo sejam carregados com valores nulos ou zerados quando a tela anterior já possuir totais definidos.
  • O sistema deve permitir que o usuário altere Descontos e Acréscimos diretamente na tela de pagamento.
  • O sistema deve validar que Desconto não excede o Total da Compra.
  • O sistema deve validar Acréscimo conforme configuração de limite máximo.
  • O sistema deve impedir Total Líquido negativo.
  • O sistema deve recalcular exclusivamente o Total Líquido, usando apenas: Total Líquido = Total da Compra - Desconto + Acréscimo.
  • Se o pagamento for finalizado, os valores atualizados de Desconto e Acréscimo devem retornar à tela de origem.
  • Se o pagamento for cancelado, nenhum valor deve retornar; a tela de origem deve permanecer inalterada.
  • O sistema não deve permitir divergência entre o valor final exibido no pagamento unificado e o valor final exibido na tela anterior após retorno.
  • O sistema deve registrar log seguindo o padrão global já existente, incluindo: usuário, horário, valores antes/depois e origem da ação.
Regras para mensagens e validações
  • Desconto maior que o total → "O desconto não pode exceder o valor da venda." Bloquear salvamento.
  • Acréscimo acima do limite → "O acréscimo informado ultrapassa o limite permitido." Impedir continuação.
  • Valor não numérico → "Digite apenas valores numéricos." Limpar entrada e manter foco.
  • Total Líquido negativo → "O valor final não pode ser negativo." Reverter último valor digitado.
Questões Técnicas:
  • Composição de valores

    • total_compra: vem 100% da origem. Não inclui frete, impostos, seguros, descontos, acréscimos.

    • desconto e acrescimo: monetários. Sem sinal. Percentual não existe no modal.

    • total_liquido = total_compra - desconto + acrescimo.

  • Limites

    • desconto ≤ total_compra. Pode zerar. Não pode exceder.

    • acrescimo ≤ acrescimo_maximo quando existir.

    • total_liquido ≥ 0.

©SOFTEN SISTEMAS 2025