PROC003 – Registro de Pagamento em Cartão de Crédito
| Projeto/Sistema: GERENCIAMENTO DE PROJETOS |
Versão do Template: 1.2 |
| Processo: PROC003 – Registro de Pagamento em Cartão de Crédito |
Versão do Documento: 1.0 |
| Responsável(eis): Jalile Cornachioni |
Data: 11/11/2025 |
1. Introdução
Este documento tem como objetivo detalhar o comportamento da interface e as regras de negócio referentes ao processo de Recebimento via Cartão de Crédito dentro do fluxo de Pagamento Unificado detalhando, confirmação da transação e registro do recebimento.
2. Processo (adicionar fluxograma exemplo)
-- Fluxograma PROC003 – Registro de Pagamento em Cartão de Crédito --
-
Usuário acessa a tela Registrar Pagamento.
-
Seleciona Crédito como forma de pagamento.
-
O sistema renderiza os campos condicionais de Crédito.
-
Usuário preenche valor, parcelas, vencimento, bandeira, código de autorização (quando manual) e CNPJ da credenciadora.
-
Se o ambiente estiver integrado ao TEF:
-
O sistema envia a solicitação ao terminal.
-
Se aprovado, retorna dados da transação e pré-preenche o código de autorização.
-
Se recusado, o sistema bloqueia a inclusão.
-
Se falhar a comunicação, o sistema exibe o modal:
“Falha na comunicação com o terminal. Deseja registrar manualmente?” -
Se o usuário optar por registro manual, segue para o passo 6.
-
-
Usuário confirma Adicionar Pagamento.
-
O sistema valida regras de negócio e gera uma linha por parcela em “Pagamentos Adicionados”.
-
Usuário pode editar ou excluir parcelas individualmente.
-
Se houver pagamento em Dinheiro, o sistema renderiza o campo Troco, permitindo sua edição e atualização conforme diferença.
-
Usuário pode repetir o processo para adicionar outros cartões ou demais formas de pagamento.
-
Ao finalizar, o sistema valida soma total e libera a conclusão da operação.
|
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:
Descrição dos Campos:
|
Campo |
Tipo |
Tamanho |
Obrig. ? |
Máscara |
Observações |
| Forma de Pagamento (personalizado) | Texto / Seleção | - | Sim | — | Renderizado apenas quando “Crédito” é selecionado. |
| Valor | Numérico | - | Sim | R$ 0.000,00 | > 0. Aceita decimal. Pode vir pré-preenchido com saldo. |
| Parcelas | Inteiro | - | Sim | - | ≥ 1. Sem limite, a menos que exista política global. |
| 1º Vencimento | Data | - | Sim | DD/MM/AAAA | Default = hoje. Retroativo conforme configuração global. |
| Bandeira | Seleção | - | Sim | - | Lista carregada da tabela bandeira_cartao. |
| Código de Autorização | Texto | - | Sim (manual) | - | Obrigatório quando não houver TEF. Identificador da transação. |
| CNPJ Credenciadora | Texto | 14 | Sim | 99.999.999/9999-99 | Validação de CNPJ. Usado quando a captura exige conciliação/envio fiscal. |
Regras de Interface:
O sistema deve:
-
Renderizar todos os campos condicionais ao selecionar Crédito, ou seja, parcelas, primeiro vencimento, bandeira, cod. autorização e CNPJ da credenciadora.
- O campo bandeira deve oferecer uma lista das bandeiras mais utilizadas no país.
-
Habilitar o botão Adicionar Pagamento somente quando todos os campos obrigatórios estiverem preenchidos.
-
Criar uma linha por parcela na seção “Pagamentos Adicionados”.
-
Permitir edição e exclusão individual de cada parcela.
-
Renderizar o campo Troco somente quando existir pelo menos um pagamento em Dinheiro adicionado.
-
Permitir edição do valor de Troco apenas quando houver pagamento em Dinheiro.
-
Atualizar o Troco conforme a diferença entre o valor pago em Dinheiro e o saldo da venda.
-
Permitir inclusão de múltiplos cartões na mesma venda (multi-cartão).
-
Aplicar máscaras de valor, data e CNPJ conforme o padrão da aplicação.
-
Exibir aviso de duplicidade quando detectar combinação idêntica de valor + parcelas + vencimento + bandeira.
-
Exibir modal de contingência em caso de falha TEF:
“Falha na comunicação com o terminal. Deseja registrar manualmente?”.
O sistema não deve:
-
Permitir clique em Adicionar Pagamento com campos obrigatórios vazios.
-
Exibir o campo Troco quando não existir pagamento em Dinheiro.
- Bloquear inclusão de múltiplos cartões em uma mesma venda.
-
Permitir finalização caso a soma dos pagamentos ultrapasse o valor total da venda.
.
Regras de Negócio:
- O sistema deve validar que o Valor informado seja numérico e maior que zero.
-
Validar que Parcelas seja inteiro ≥ 1, respeitando limite configurado (se existir).
-
Definir 1º Vencimento como a data atual por padrão.
-
Permitir vencimento retroativo apenas se a configuração e permissões de usuário correspondente estiver ativa.
- Garantir que o somatório das parcelas feche exatamente o valor total calculado.
- O sistema deve recuperar o código da autorização da transação do TEF e vincular ao pedido quando o TEF retornar status Aprovado.
- Exigir Código de Autorização quando o pagamento for registrado manualmente (sem TEF).
- O sistema não deve aceitar pagamento manual sem Código de Autorização.
- Em caso de Recusado, o sistema não deve permitir o fechamento do caixa com aquele lançamento.
- Após confirmação, o botão Finalizar Pagamento deve ser exibido para conclusão do fluxo de pagamento.
-
Validar formato do CNPJ da Credenciadora.
- O sistema não deve finalizar a venda quando houver inconsistências de soma, bandeira inválida ou CNPJ inválido
-
Permitir múltiplas inclusões de pagamentos em crédito (multi-cartão).
-
Bloquear finalização caso a soma dos pagamentos ultrapasse o valor da venda..
Questões Técnicas:
-
Integração com módulo TEF (API externa).
-
Logar toda tentativa, inclusive timeouts de comunicação TEF.
-
Em ambiente offline, bloquear operação com TEF.
- O sistema deve criar uma tabela para armazenar as bandeiras de cartão, contendo apenas os campos
idedescricao, seguindo o modelo abaixo:
CREATE TABLE bandeira_cartao (
id INT PRIMARY KEY,
descricao VARCHAR(60) NOT NULL
);
INSERT INTO bandeira_cartao (id, descricao) VALUES
(1, 'Visa'),
(2, 'Mastercard'),
(3, 'American Express'),
(4, 'Hipercard'),
(5, 'Elo');
©SOFTEN SISTEMAS 2025



No Comments