Finora
Full stack financial management system
A financial management platform for accounts payable and receivable, contacts, and operational indicators, with asynchronous processing, automation, and a Docker-based environment.

Overview
The project in perspective.
Finora is a full stack financial management application built to organize accounts payable and receivable, contacts, due dates, settlements, and financial closing workflows through an integrated frontend, backend, database, and asynchronous processing experience.
- Objective
- Build a reliable, well-structured financial solution for recording transactions, tracking due dates, consolidating indicators, and automating work that should not block application requests.
- Context
- The project was structured as a complete application with a React frontend, Laravel API, PostgreSQL persistence, Redis for queues and locks, Sanctum authentication, and a reproducible Docker environment.
- Project type
- Full stack system
- Role
- Full stack architecture and development
- Status
- Completed
- Year
- 2026
01
What this project demonstrates
Full stack architecture
A clear separation between the frontend, API, database, and infrastructure keeps responsibilities well defined.
Asynchronous processing
Jobs and queues handle work such as reminders and financial closings without blocking HTTP requests.
Task automation
A scheduler identifies eligible transactions, dispatches reminders, and reconciles interrupted financial processes.
Consistency and idempotency
Safeguards reduce duplicate reminders, closings, retries, and concurrent executions.
Persistence and infrastructure
PostgreSQL is the primary data source, while Redis supports queues, caching, and synchronization mechanisms.
Automated quality
Core flows are covered by automated tests, linting, and build validation.
02
My role
Solution architecture
Defined the integration between React, Laravel, PostgreSQL, Redis, and supporting services.
Frontend
Built the authentication, dashboard, contacts, transactions, and period overview screens.
Backend and business rules
Implemented APIs, authentication, validation, settlements, filters, Jobs, the Scheduler, and financial workflows.
Infrastructure and quality
Configured Docker Compose, queues, Redis, Mailpit, automated tests, and validation of the primary flows.
03
Features
User authentication
Protected SPA access using Laravel Sanctum, session authentication, and CSRF protection.
Contact management
Create, update, and delete contacts used in financial transactions.
Accounts payable and receivable
Create and track transactions with amounts, due dates, type, linked contacts, and status.
Transaction settlement
Record payments and receipts while preserving the financial history.
Dashboard and period overview
Monitor indicators, upcoming due dates, and consolidated financial data by date range.
Reminders and financial closing
Process alerts and financial closings asynchronously, including CSV generation and email delivery.
04
Gallery
Interfaces and visual records that help explain the project's experience and primary flows.

01
Financial dashboard
A consolidated view of receivables, payables, pending items, and upcoming transactions.
Objective: Demonstrates how the system organizes financial indicators and due dates in a single operational view.

02
Transaction management
A screen for creating, viewing, updating, settling, and deleting accounts payable and receivable.
Objective: Demonstrates the core financial management flow, including statuses, amounts, due dates, and linked contacts.

03
Period overview
Financial reporting by date range, with totals for open, settled, and overdue accounts.
Objective: Demonstrates date filtering, value consolidation, and the financial closing workflow for a selected period.

04
Contact management
Create and maintain the contacts used in financial transactions.
Objective: Demonstrates how customers and suppliers related to the system's transactions are organized.

05
Authentication
An application access flow protected by authentication.
Objective: Demonstrates secure entry into the SPA before financial resources become available.
05
Architecture
React
The system's interface, navigation, and user experience.
Laravel
REST API, authentication, business rules, Jobs, the Scheduler, and data integration.
PostgreSQL
Relational persistence for users, contacts, transactions, and financial closings.
Supporting elements
- Redis
- Laravel Sanctum
- Queues
- Scheduler
- Mailpit
- Docker
06
Technical stack
Frontend
- React
- TypeScript
- Vite
- Axios
Backend
- PHP
- Laravel
- Laravel Sanctum
- REST API
Database
- PostgreSQL
- SQLite for testing
Infrastructure
- Docker
- Docker Compose
- Redis
- Laravel Queues
- Laravel Scheduler
- Mailpit
Quality
- PHPUnit
- Laravel Pint
- Oxlint
- TypeScript
- Integration tests
07
Technical decisions
Asynchronous processing with queues
Potentially time-consuming operations are queued so they do not block HTTP requests.
PostgreSQL as the source of truth
Financial process state remains persisted in the database, while Redis serves as supporting infrastructure.
Overdue as derived state
An account is considered overdue based on its pending status and due date, avoiding unnecessary state duplication.
Idempotency and retries
Jobs and persistent records help prevent duplicate processing and support recovery from temporary failures.
Docker as the official environment
Application services run reproducibly through Docker Compose.
08
Learnings
- Building a full stack financial application with decoupled frontend and backend layers.
- Using queues, Jobs, the Scheduler, and Redis in real asynchronous processing flows.
- Applying idempotency, retries, and reconciliation to financial processes.
- Integrating SPA authentication, PostgreSQL, Redis, email, and Docker infrastructure.
- Creating automated tests for critical business workflows.
09
Result
The result is a functional, tested full stack financial application with authentication, contact management, accounts payable and receivable, settlements, indicators, automation, and asynchronous processing in a reproducible Docker environment.
- React frontend integrated with the Laravel API
- Relational persistence with PostgreSQL
- Redis, queues, and the Scheduler for automation
- Financial closings with CSV generation and email delivery
- 66 automated tests with 232 assertions
- Reproducible Docker environment
10
Links
Explore the public resources available to learn more about the project.
Next step
Let's build something together.
I am open to professional opportunities, projects, and conversations about software development.
Get in touch