# Fluxo de Pagamento — Dinheiro e Cartão

<section class="capitulo" id="bkmrk-quando-o-cliente-pag">Quando o cliente paga a fatura em dinheiro ou cartão no balcão, o sistema passa por quatro etapas na Credsystem antes de registrar o valor no caixa.

<section class="para-todos">## Em linguagem simples

O pagamento no balcão funciona assim:

1. **Buscar a fatura** — o sistema consulta na Credsystem o que o cliente deve.
2. **Reservar o valor** (pré-autorização) — a Credsystem "segura" o valor antes de confirmar.
3. **Confirmar o pagamento** (efetivação) — a Credsystem registra que o dinheiro foi recebido.
4. **Verificar se deu certo** (sonda) — o sistema confere se a Credsystem confirmou tudo.
5. **Registrar no caixa** — o valor entra como receita no Ponto de Venda da loja.
6. **Guardar no histórico** — fica salvo no banco integrador para consultas futuras.

Se algo der errado no meio do caminho, o sistema pode tentar **estornar automaticamente** a reserva (quando configurado).

</section>![Fluxo de pagamento convencional](https://kb.illimitar.pro/uploads/images/gallery/2026-06/embedded-image-bt5ovn23.png)

*Figura 6 — Fluxo completo do pagamento convencional: quatro etapas na Credsystem, depois gravação local e lançamento no Ponto de Venda.*

<section class="para-ti">## Detalhes para Tecnologia da Informação

### Orquestração

- A interface front-end chama `pagamentoTotal()` em `88e14c87/controle.php`
- Que delega para `api_integracao_credsystem::pagamento()` em `981bfb94/controle.php`

### Etapas na Interface de Programação de Aplicações Credsystem (método pagamento)

<table><thead><tr><th>\#</th><th>Etapa</th><th>Endpoint de Transferência Representacional de Estado</th><th>Campo etapa em erro</th></tr></thead><tbody><tr><td>1</td><td>Consultar títulos</td><td>`GET consulta-titulo`</td><td>`consultarTitulos`</td></tr><tr><td>2</td><td>Pré-autorização</td><td>`POST pre-autorizacao`</td><td>`preAutorizar`</td></tr><tr><td>3</td><td>Efetivação</td><td>`POST efetivacao`</td><td>`efetivar`</td></tr><tr><td>4</td><td>Sonda efetivação</td><td>`GET efetivacao/sonda`</td><td>`sondaEfetivacao`</td></tr></tbody></table>

### Pós-sucesso em 88e14c87

1. `salvarCredsystemPagamento()` → INSERT em `cred_pagamento` (tipo `DINHEIRO`, situação `EFETIVADO`)
2. `registrarControleAcaoPagamentoCredsystem()` → log tipo `credsystem-recebimento-pagamento`
3. `registraPagamento()` → `registrarReceita()` → `vendarapida::sangriasuprimento` (RECEITA)

### Parâmetros relevantes

- `valorPagamento` — valor efetivo (mínimo, parcela ou total)
- `estornarEmFalha` — default `true`; chama `desfazer` se efetivação falhar após pré-autorização
- `idFormaPagamento` e `idNaturezaLancamento` — da configuração da entidade

</section></section>