SaaSFintechAutomation
ZyfinBot — Global personal finance SaaS
- Company
- Kawasaki Web Soluções
- Role
- Founder / Lead Engineer
- Period at the company
- Jun 2026 — Present
Problem
Household expense tracking fails when capture requires opening an application, navigating to a form and completing multiple fields. WhatsApp provides a lower-friction entry point in a channel people already use, while international households also need multi-currency reporting and a secure way to collaborate with financial advisers.
Approach
I designed ZyfinBot as a modular Ruby on Rails application whose WhatsApp webhook runs in-process, reducing early operational complexity while the product evolves into a multi-tenant financial platform with Hotwire and Flutter clients.
Key architectural decisions:
- Integrated only the official Meta WhatsApp Cloud API, avoiding unofficial clients and account-ban risk.
- Implemented a deterministic parser before introducing an LLM, handling shorthand entries such as
02/06 Mercado Alimentação 130,28and using interactive controls as a testable fallback. - Stored money in integer minor units with exchange-rate snapshots, preventing historical reports from changing when currency rates move.
- Designed tenant-per-family isolation, starting with embedded SQLite for the MVP and retaining a migration path to self-hosted PostgreSQL with Row-Level Security.
- Designed authentication for potential phone loss with email, password and mandatory WebAuthn or TOTP 2FA, without relying on SMS or WhatsApp OTPs.
- Defined an end-to-end infrastructure path from a Raspberry Pi k3s development cluster behind Cloudflare Tunnel to future Terraform-provisioned cloud infrastructure, Kamal 2 deployments and GitHub Actions publishing images to GHCR.
Impact
- Delivered the local v0.1.0 foundation with HMAC webhook verification, idempotent message handling, expense parsing and persistence covered by RSpec golden tests.
- Split delivery into independently shippable vertical slices covering ingestion, budgets, reports, PostgreSQL/RLS, web UI and Open Finance.
- Modelled Open Finance independently of providers, allowing Pluggy in Brazil and GoCardless or TrueLayer in Europe without schema migrations.
Tech stack
Ruby on RailsHotwireFlutterPostgreSQLWhatsApp Cloud APITerraformKamalk3s