Pular para o conteúdo principal

Créditos

O sistema de créditos permite adicionar saldo na conta do cliente que é automaticamente aplicado em faturas futuras.

Tipos de Crédito​

TipoDescrição
promotionalCréditos promocionais (podem expirar)
adjustmentAjustes administrativos de saldo
refundCrédito gerado por reembolso
manualAdição manual de crédito

Campos do Crédito​

CampoDescrição
Conta de cobrançaCliente que recebe o crédito
EmpresaEmpresa emissora (para escopo de aplicação)
TipoTipo do crédito
ValorValor total do crédito
Valor restanteSaldo ainda não utilizado
DescriçãoMotivo ou descrição do crédito
Expira emData de expiração (null = nunca expira)

Aplicação Automática de Créditos​

Quando uma fatura é finalizada, o sistema aplica créditos automaticamente usando a estratégia FIFO:

Ordem de Aplicação​

  1. Créditos que expiram mais cedo (prioridade para evitar perda)
  2. Créditos mais antigos (quando a data de expiração é igual)

Regras de Escopo por Empresa​

  • Se a fatura tem empresa: aplica créditos da mesma empresa e créditos sem empresa
  • Se a fatura não tem empresa: aplica apenas créditos sem empresa

Processo (em transação atômica)​

  1. Busca créditos não expirados com saldo disponível
  2. Para cada crédito: aplica o mínimo entre (saldo do crédito, valor restante da fatura)
  3. Cria registro de CreditApplication para rastreabilidade
  4. Atualiza o saldo do crédito e da fatura
  5. Se a fatura for totalmente paga: marca como paid
  6. Atualiza o balance da conta de cobrança

Restauração de Créditos​

Quando uma fatura é anulada (void), todos os créditos aplicados são restaurados:

  • Cada crédito tem seu saldo restante aumentado
  • Os registros de CreditApplication são removidos
  • A fatura volta ao status open
  • O saldo da conta de cobrança é atualizado

Expiração de Créditos​

Créditos com data de expiração são automaticamente zerados quando a data passa:

  • O amount_remaining é definido como 0
  • O saldo da conta de cobrança é reduzido

Operações​

  • Adicionar crédito: Cria crédito e incrementa o saldo da conta
  • Ajustar saldo: Adiciona ou subtrai créditos
  • Crédito de reembolso: Cria crédito do tipo refund
  • Crédito promocional: Cria crédito com expiração opcional
  • Deletar crédito: Apenas se nunca utilizado (saldo restante = valor total)
  • Consultar saldo disponível: Retorna total disponível, créditos ativos e créditos expirando

Captura de tela​

A tela /dashboard/credits lista todos os créditos da organização, com filtros por status, origem (downgrade, refund, ajuste manual, promoção), conta de cobrança e período. A interface também permite criar créditos avulsos e ver o saldo agregado por cliente.

Lista de créditos com origem, saldo e aplicações