skip to content
invoiceflow preview

invoiceflow

Accounts payable/receivable and government e-invoice sync for Vietnamese companies.

InvoiceFlow is a React and NestJS app where companies sign in with their tax code, switch between entities in a company group, and track payables and receivables. I built the entity scoping, the payables and receivables pages, and a step-by-step workflow for drafting debtor reminders. I then prototyped a sync service that fetches invoice streams from the General Department of Taxation portal, normalises and deduplicates them, and exports CSVs; that design became the production invoice sync inside PCA ERP.

  • nestjs
  • prisma
  • postgresql
  • react
  • vite
  • bullmq
  • redis
  • minio
  • Server-enforced group scoping: every invoice read or write re-checks the caller is the seller or buyer
  • Natural-key deduplication backed by PostgreSQL row-level security on tenant tables
  • Portal tokens cached in Redis so same-day re-syncs skip login; passwords are never stored or logged
  • Portal client behind a DI token, with a fake client for tests and the real one in production
  • Step-by-step debtor reminder workflow with saved drafts and debounced recipient search
action hub