Viuw · Produto · Ata de alinhamento

Funcionalidade de Cartão de Crédito

Reunião de demonstração do fluxo de cartão (cadastro, lançamento, fatura e pagamento), com alinhamento das regras contábeis (DRE × DFC) e das melhorias de interface antes da segunda rodada de testes.

Data 16/09/2026 · 09h06 Duração ~68 min Participantes Jozerly (Extat), Gabriel Lisboa (produto/front), Alisson Gomes (back-end/API) Gravação no Fireflies
Parte 1

Resumo por tópicos

Em ordem cronológica. O horário leva ao trecho da gravação.

Cadastro do cartão e "dívida anterior"

02:32
  • Campos atuais: bandeira, tipo, últimos 4 dígitos (o campo aceita mais que 4 — será corrigido), dia de fechamento, dia de vencimento e limite.
  • Pergunta de dívida anterior: o usuário informa o valor da fatura em curso, uma categoria opcional para esse valor e as parcelas em aberto de compras antigas (descrição, valor, parcelas restantes, categoria), para provisionar os meses seguintes.
  • O rótulo "Restante da fatura atual" confundiu os três ("se é o restante, qual é a primeira parte?"). Também não ficou claro se "R$ 1.500 com 2 parcelas restantes" significa R$ 1.500 no total ou R$ 1.500 duas vezes.
  • Jozerly apontou o erro comum de lançar a fatura inteira em uma única categoria ("fatura de cartão"), quando ela soma compras de naturezas diferentes (investimento, alimentação, operacional).
  • Validar se as parcelas somam o valor da fatura não funciona: a fatura traz só a parcela do mês, e não o valor cheio da compra. Para quem tem muitos itens, a saída é a importação via CSV.
  • Conclusão: a lógica está correta, mas a comunicação da tela precisa ser refeita e testada com um usuário real de cartão.

Bug de saldo e novo "saldo atual"

04:11
  • Clientes relataram que o sistema exibia sempre o saldo inicial cadastrado, e não o saldo após receitas e despesas.
  • Alisson já separou os dois conceitos: saldo inicial e Current Balance (saldo atual), que reflete todas as movimentações. A mudança deve resolver o problema; Jozerly vai enviar prints para confirmar.
  • O saldo passa a ser crítico: transferências e pagamentos serão validados contra ele, e o front vai bloquear operações sem saldo. Por isso, o saldo inicial precisa ser parametrizado corretamente.

Jornada da fatura e navegação

15:49
  • Hoje a fatura é um submódulo dentro do cadastro do cartão, com um seletor de mês para navegar entre as faturas. Gabriel quer levá-la para um espaço próprio dentro do Financeiro.
  • Não há ligação direta entre transação e fatura: quem está em Transações não chega à fatura, e vice-versa. Isso foi definido como melhoria.

Lançamento de despesa: campo "Origem"

17:17
  • Novo campo Origem: conta bancária ou cartão de crédito. O cartão também pode ser cadastrado direto do formulário. A coluna "Conta bancária" da tabela passou a se chamar "Origem".
  • Receita não aceita cartão como origem.
  • Jozerly sugeriu unificar tudo em um único seletor "Conta". Gabriel prefere manter separado, porque cartão não é conta e os cadastros são diferentes. Ficou para validar no teste com usuário.

API, IA e Open Finance

19:06
  • A API está estruturada para receber comandos de IA: o assistente traduz a intenção do usuário e chama os mesmos endpoints dos formulários.
  • Faltam camada de RAG, pontos de segurança e ajustes de arquitetura. Proposta do Alisson: a onda 2 segue em andamento e a onda 3 se dedica só ao assistente conversacional (organizar plano de contas, resumos, previsão de caixa de 3 meses com alertas, mini-relatórios em HTML).
  • Jozerly vê o Open Finance, com pagamento iniciado dentro do sistema, como o caminho estratégico.

Competência ao lançar no cartão

21:39
  • Lançar em setembro num cartão que fecha dia 9 dá erro só no momento de salvar, porque a fatura já fechou. O aviso chega tarde.
  • Ajuste: ao escolher o cartão, a API devolve fechamento e vencimento, e o front desabilita as competências anteriores e as que não têm relação com as parcelas, deixando a fatura corrente pré-selecionada.
  • Alisson: não faz sentido lançar direto numa fatura distante (ex.: dezembro). Só a corrente deve ser permitida.
  • Na tela de Transações, o seletor de competência está com defeito: filtra por vencimento, então compras que vencem no mês seguinte não aparecem.

DRE × DFC: onde o cartão entra

28:34
  • Alisson: são dois fluxos distintos. Na visão contábil, a despesa está paga ao fornecedor no dia da compra. No caixa, nada sai até o pagamento da fatura.
  • Jozerly confirmou a regra: DRE pela competência (data da compra) e DFC pela data de pagamento da fatura. Por isso existem os três campos: competência, vencimento e pagamento.
  • Consequência: o pagamento da fatura não gera uma nova despesa em Transações (evita contar em dobro na DRE). Ele aparece na fatura e no fluxo de caixa.
  • Demonstração do "pagar fatura": fatura de R$ 7 mil paga com a conta, histórico de pagamentos e botão de desfazer (hoje só no front).

Benchmark Conta Azul e compra parcelada

33:03
  • No Conta Azul, cada parcela é uma transação própria. O extrato mostra no mês só o valor da parcela ("8 de 10"), e o filtro por competência lista 1/5, 2/5… um abaixo do outro.
  • No Viuw, uma compra de R$ 4 mil em 2x vira uma única transação de R$ 4 mil na tela (as parcelas ficam só por trás). Quem está em Transações não sabe que a compra foi parcelada.
  • Jozerly: a parcela é a unidade do financeiro, porque é o que aparece no extrato e é a base da conciliação. Todas as parcelas carregam a mesma competência, então a DRE soma o valor cheio sem mudar a regra.
  • Houve impasse entre "linha única com valor total" e "dividir por parcela". Foi resolvido pelo split em transações por parcela, que atende tanto a competência quanto o caixa.
  • O formulário do Conta Azul permite editar cada parcela na criação. O grupo achou excessivo e prefere mostrar só um resumo.

Status da transação e pagamento da fatura

1:00:17
  • Alisson questionou se a compra no cartão não deveria ficar "paga". Jozerly: não, porque o dinheiro ainda não saiu do banco. Gabriel: pagar a fatura dá baixa só nas transações daquela fatura, e as demais continuam em aberto.
  • Transação de cartão não pode ser paga sozinha na tela de Transações.
  • Hoje o pagamento é por valor: se for o total, baixa tudo. No pagamento parcial (R$ 4 mil de R$ 5 mil), não se sabe a que se referem os R$ 1 mil que faltam.
  • Novo fluxo: pagamento por lista de transações, todas pré-selecionadas. O usuário desmarca o que não vai pagar, o sistema soma e envia um lote. O que não foi pago fica como saldo em aberto. Isso já prepara a próxima entrega (lote e edição em massa).
Parte 2

Decisões tomadas

Consolidadas a partir da gravação e das anotações do Gabriel.

#DecisãoFrente
D01Compra parcelada no cartão vira uma transação por parcela, todas com a mesma competência (data da compra) e vencimentos nas faturas seguintes.Alisson · back-endModelo de dados
D02DRE por competência (soma das parcelas = valor cheio); DFC pela data de pagamento da fatura.Regra de negócioRelatórios
D03O pagamento da fatura é evento só de caixa: não cria despesa nova em Transações, mas baixa as transações que compõem a fatura.AlissonModelo de dados
D04Pagamento de fatura por seleção de transações (e não por valor), com todas pré-selecionadas, soma no rodapé e envio em lote. O que não for selecionado fica como saldo em aberto.Alisson · GabrielFatura
D05Transação com origem cartão não pode ser paga individualmente na tela de Transações.Alisson · GabrielTransações
D06No lançamento por cartão: aviso de competência já na seleção, meses anteriores e não vinculados às parcelas desabilitados, fatura corrente preenchida automaticamente. A API devolve as datas de fechamento e vencimento.Gabriel · AlissonLançamento
D07Corrigir o seletor de competência da tela de Transações. Ao filtrar por competência, devem aparecer todos os lançamentos de fatura daquela competência.GabrielTransações
D08A tela de Transações mostra o índice da parcela (ex.: 2/5).Gabriel · designTransações
D09Navegação nos dois sentidos: da transação para a fatura e da fatura para as transações.Gabriel · AlissonNavegação
D10Renomear "Restante da fatura atual" para "Valor da fatura até o fechamento" e reescrever as instruções da etapa de dívida anterior. A categoria desse valor segue opcional.GabrielCadastro
D11Criar lançamento pela fatura mostra só um resumo das parcelas, sem edição individual na criação.GabrielLançamento
D12Número de parcelas escolhido em lista predefinida, sem digitação livre.GabrielLançamento
D13"Desfazer pagamento" ganha ação própria na API, com registro de auditoria.AlissonFatura
D14Saldo inicial e saldo atual (Current Balance) separados. Transferências e pagamentos são validados contra o saldo atual.Alisson · GabrielContas
D15"Origem" separada (conta × cartão) fica como está e será validada no teste com usuário.Em testeLançamento
D16Limitar o campo de últimos dígitos do cartão a 4 caracteres.GabrielCadastro
D17Onda 3 do roadmap dedicada ao assistente de IA (RAG, segurança, fluxo conversacional) sobre a API atual.Proposta do Alisson, aceitaRoadmap
D18Nova versão para a 2ª rodada de testes até sexta, 18/09.AlissonEntrega

Pontos que ficaram ambíguos: confirmar antes de codificar

  • Status da compra no cartão. Aos 29:37 Alisson disse que o ajuste para "pago" já tinha sido feito. Aos 1:00:24 o grupo concluiu que ela fica em aberto até o pagamento da fatura. As duas regras não podem valer ao mesmo tempo.
  • Categoria padrão de cartão no plano de contas. Ficou em aberto se o plano padrão já traz essa categoria ou se o usuário cria a sua (05:21).
  • Unificar ou não "Origem". Depende do teste com usuário (D15).
Parte 3

O que ainda não está previsto

Cenários reais de cartão corporativo que a reunião não cobriu ou cobriu só em parte. Vêm do dia a dia de BPO e controladoria, e vários devem aparecer já na 2ª rodada de testes.

P0 bloqueia o uso correto / gera número errado P1 necessário para operação de cliente real P2 evolução / diferencial

Regra contábil e de status

P0Separar "liquidado ao fornecedor" de "quitado no caixa"

A ambiguidade de status vem de tentar representar dois fatos com um campo só. Sem modelar isso, a conciliação bancária e o contas a pagar vão mostrar números diferentes da DRE.

Usar status próprio para origem cartão, como "Pago no cartão · aguardando fatura" → "Quitado". Tratar o saldo das faturas em aberto como obrigação (cartões a pagar) na visão de caixa e na projeção.

P0Pagamento parcial real da fatura (mínimo e rotativo)

Foi o caso que motivou a reunião, e a solução por seleção não o resolve por completo. O banco não aloca o pagamento por item: quando o cliente paga R$ 4 mil de R$ 5 mil, o restante vai para a fatura seguinte com juros, IOF e multa. Nenhuma compra fica "não paga".

Aceitar também pagamento por valor. A diferença vira "saldo transportado" na próxima fatura, com lançamento automático ou assistido de juros, IOF e multa em despesas financeiras. A seleção de itens fica para antecipação de parcelas.

P0Como o pagamento da fatura aparece na DFC

Se a DFC mostrar só "Pagamento de fatura", a análise de caixa por categoria, que é o produto da Extat, se perde, porque o dinheiro saiu para marketing, software, alimentação etc.

Na DFC, abrir o pagamento da fatura pelas categorias das transações baixadas. No pagamento parcial, ratear proporcionalmente ou seguir a seleção.

P1Compras de investimento parceladas (CAPEX)

O próprio exemplo da reunião (TV, computador) é investimento. Lançado como despesa, joga o valor cheio na DRE do mês e distorce margem e EBITDA.

Categorias de investimento ficam fora da DRE operacional e entram na DFC como atividade de investimento, conforme o plano de contas padrão Extat.

P1Competência das parcelas da dívida anterior

As parcelas restantes informadas na implantação são de compras antigas. Se receberem competência dos meses futuros ou do mês de implantação, poluem a DRE do primeiro mês do cliente.

Registrar a data original da compra ou marcar como "saldo de implantação", que afeta só caixa e fatura. Deixar a regra explícita na tela.

Ciclo de vida da fatura e datas

P0Fatura definida pela data da compra, não pela data do lançamento

A regra "só a fatura corrente" bloqueia um caso comum: a compra feita dia 8 e lançada dia 12, depois do fechamento. Ela pertence à fatura já fechada, e o BPO lança com atraso o tempo todo.

Calcular a fatura automaticamente a partir da data da compra × fechamento. Permitir lançar em fatura fechada e ainda não paga, com aviso. Bloquear só fatura já quitada.

P1Datas reais variam mês a mês

Bancos mudam fechamento e vencimento conforme fim de semana, feriado ou calendário próprio, e o cliente pode trocar o dia de vencimento.

Permitir ajustar fechamento e vencimento por fatura. Definir o que acontece com faturas abertas quando o cadastro do cartão muda (recalcular só as futuras).

P1Estados da fatura

Padronizar: Aberta → Fechada → Paga / Parcialmente paga / Vencida, com regras do que se pode lançar, editar e desfazer em cada estado. Isso também orienta os alertas.

P1Arredondamento de parcelas

Definir onde fica o centavo: R$ 1.000 em 3x = 333,33 + 333,33 + 333,34 (diferença na última). Garantir que a soma seja exatamente o valor da compra.

Eventos que alteram a fatura

P0Estornos, créditos e cancelamento de compra parcelada

Hoje a fatura só aceita despesas. Estorno de compra, cancelamento com parcelas futuras, cashback e crédito de pagamento a maior reduzem a fatura e precisam refletir na DRE.

Criar lançamento "crédito na fatura" vinculado à compra original. No cancelamento, remover ou estornar as parcelas futuras em grupo.

P1Editar ou excluir compra já dividida em parcelas

Com o split (D01), editar valor, categoria, número de parcelas ou cartão precisa de uma regra. O que acontece se uma parcela já estiver em fatura paga?

Tratar a compra como grupo: editar propaga para as parcelas não quitadas e trava as quitadas. Oferecer "esta parcela" ou "esta e as seguintes", como nas recorrências.

P1Encargos do cartão

Prever categorias e lançamento guiado para anuidade, tarifas, juros de parcelamento com juros (valor total maior que à vista), IOF e compras em moeda estrangeira (câmbio e IOF).

P1Antecipação de parcelas

Citada pelo Gabriel sem regra definida: trazer parcelas futuras para a fatura atual, com eventual desconto registrado como receita financeira ou redutor.

Conciliação, limite e controles

P0Conciliar com a fatura do banco

Não há como conferir a fatura lançada contra a real. Sem isso, o BPO não fecha o mês com segurança.

Importar a fatura (CSV/OFX, e depois Open Finance), casar item a item com os lançamentos, apontar divergências (faltando, sobrando, valor diferente) e só então permitir pagar.

P1Validação de saldo não pode travar a operação

Bloquear pagamento sem saldo é arriscado quando o saldo inicial foi mal parametrizado ou a conta tem cheque especial. O usuário simplesmente não consegue registrar um pagamento que já aconteceu no banco.

Avisar em vez de bloquear (ou bloquear só com permissão), permitir limite de cheque especial por conta e oferecer "ajustar saldo" com registro de auditoria.

P1Controle de limite

O limite é cadastrado mas não usado. A compra parcelada consome o valor cheio e libera conforme as faturas são pagas. Mostrar limite disponível e alertar perto do teto.

P1Cartões adicionais e portadores

Uma fatura com vários cartões físicos ou virtuais e portadores diferentes. Permitir identificar o portador e o centro de custo por lançamento, útil para prestação de contas interna.

P1Permissões e auditoria

Definir quem pode pagar, desfazer pagamento, editar fatura fechada e ajustar saldo, com log de cada ação, não só no "desfazer".

P2Despesa pessoal no cartão da empresa

Situação frequente nos clientes Extat: marcar como "pessoal do sócio" e gerar conta a receber ou retirada de pró-labore, para não contaminar a DRE.

Visões e integrações

P1Faturas futuras na projeção de caixa

As parcelas já comprometidas devem aparecer no fluxo de caixa projetado e no contas a pagar por vencimento de fatura. É base para o insight de "previsão de 3 meses" citado na reunião.

P2Assinaturas recorrentes no cartão

Integrar a futura funcionalidade de recorrência: SaaS e assinaturas lançadas automaticamente em cada fatura.

P2Importação CSV e API para a IA

Definir layout do CSV, deduplicação e mapeamento de categorias. Na API, garantir idempotência nos lotes de pagamento, o que é crítico quando um agente de IA repete um comando.

P2Alertas

Avisar que a fatura fecha em X dias, que vence amanhã, que o saldo é insuficiente para a fatura e que há lançamentos sem categoria.

Parte 4

Próximos passos

Alisson

  • Split das compras parceladas em transações (D01)
  • Devolver fechamento e vencimento na API ao escolher o cartão
  • Pagamento de fatura por lista de transações, em lote
  • Ação "desfazer pagamento" com auditoria
  • Condensar as definições em documentação
  • Liberar versão de teste até 18/09

Gabriel

  • Nova linha de tabela com índice de parcela
  • Seletor de competência e filtros de Transações
  • Navegação transação ↔ fatura
  • Novos textos do cadastro de dívida anterior
  • Benchmark mais detalhado com outros sistemas

Jozerly

  • Enviar prints do bug de saldo
  • Mandar a transcrição e os prints do Conta Azul no grupo
  • Indicar um cliente que usa cartão para o teste
  • Validar as lacunas P0 desta página com o time
Parte 5

Perguntas para validar com o time

  1. Status: a compra no cartão fica "paga", "em aberto" ou ganha um terceiro status até a fatura ser quitada?
  2. Pagamento parcial: o foco é antecipar itens (seleção) ou pagar valor menor com saldo transportado e juros? O caso do cliente deste mês era qual dos dois?
  3. Fatura fechada: o BPO poderá lançar compra esquecida numa fatura fechada e ainda não paga?
  4. DFC: o pagamento da fatura aparece em uma linha só ou aberto pelas categorias originais?
  5. Implantação: as parcelas da dívida anterior entram na DRE ou só no caixa?
  6. Plano de contas padrão: vai trazer categorias de encargos de cartão (anuidade, IOF, juros) e de investimento?