BFlow is a multi-wallet financial control system designed to help individuals and small groups understand, organize and master how their money actually moves.
- Lack of visibility across multiple wallets and payment sources.
- No clear understanding of remaining budget mid-week.
- No structured way to manage shared savings (e.g., group trips).
- Difficulty identifying spending patterns.
- Distrust in financial apps that request banking credentials unnecessarily.
BFlow focuses on intentional financial tracking without requiring bank integrations.
The BFlow infrastructure follows a containerized, serverless architecture running entirely on AWS managed services. The platform leverages the following components:
- Amazon VPC, to isolate networking resources.
- Amazon ECS (AWS Fargate), to run the Spring Boot application.
- Amazon ECR, as the private container registry.
- Amazon RDS for PostgreSQL, as the primary persistent datastore.
- AWS Secrets Manager, for centralized secret management.
- Amazon S3, for object storage.
- Amazon SES, for transactional email delivery.
- Amazon CloudWatch, for centralized logging and monitoring.
- AWS IAM, to securely control service permissions.
- GitHub Actions + AWS OIDC, to implement a secure, keyless CI/CD deployment pipeline.
- AWS Budgets, for proactive cloud cost monitoring.
BFlow aims to evolve into a collaborative financial platform focused on budgeting, shared wallets and financial insights.
The vision is to evolve into:
- A multi-wallet budgeting system
- Shared wallets with role-based access
- Monthly financial summaries
- Advanced filtering and spending analytics
- Recurring income automation (e.g., salary simulation via cron jobs)
- Clean, enterprise-grade backend architecture
- Long-term goal: validate the domain and evolve the platform through community feedback.
BFlow is an open-source financial engine intended to explore modern cloud-native architecture and financial domain modeling.
MVP in active development.
Implemented:
- User authentication (AWS Cognito)
- Multi-wallet support
- Expense registration
- Basic transactional consistency
- Budget rules engine
- Rate limiter
- Idempotency layer
- Payment integration via Wompi
Roadmap:
- OpenTelemetry integration
- Shared wallet roles
- Redis-based caching
Current Stack
- Spring Boot
- PostgreSQL
- AWS Services
- Docker
The focus is on:
- Clear business rules
- Secure multi-user wallet access
- Transactional consistency
- Scalability-oriented design
- Real-world financial logic
- No direct bank integrations
- No AI-based financial predictions (yet)
- No premature microservices architecture
The MVP focuses strictly on correctness, security, and domain integrity.
Once the application is running you can have Swagger UI available at:
http://localhost:8080/swagger-ui/index.html
BFlow was born from a real and daily problem: financial disorder.
Managing money across multiple wallets, cards, cash, and shared funds becomes chaotic very quickly. Small daily expenses silently destroy weekly budgets, and by mid-week it’s unclear how much money is actually available.
Many people — especially students — try to solve this with:
- Custom Excel sheets
- Notes
- Or nothing at all
Existing apps often require bank credentials, feel intrusive, or are not designed for flexible multi-wallet and shared budgeting scenarios.
BFlow aims to provide clarity without complexity.
