Bhuwan.dev
Back to Projects

Walletly

A multi-tenant ledger platform featuring secure real-time double-entry bookkeeping.

🟢 LiveOnline Platform

Project Overview

Walletly is a multi-tenant, workspace-based payment and ledger platform that connects two users through secure connections. Users can track dues, process payments, and reconcile balances with a full double-entry ledger and audit trail, simulating a real-world PSP or banking system at a small scale.

Why I Built This

Many small-business and peer-to-peer payments rely on scattered spreadsheets or notes, leading to inconsistent balances, duplicate debits, and unclear payment statuses. Walletly centralizes all transactions in a safe, auditable, and role-aware system, giving both parties clear visibility and control.

What It Solves

Fragmented record-keeping

Workspace connections ensure all dues and payments are scoped to each pair of users.

Duplicate or inconsistent debits

Idempotent payment attempts prevent double charges and safely handle retries.

Opaque balances

Double-entry ledger tracks all debits/credits, providing a fully auditable history.

Unclear payment status

Categories and payments clearly indicate UNPAID, PARTIAL, PAID, or CLOSED.

End-to-end observability

Gateway, switch, and audit logs trace every step of a transaction.

System Architecture

Workspace & connection model

Isolates transactions, categories, and ledgers per user pair.

Payment lifecycle & idempotency

Payments flow through PaymentAttempts with retry-safe state machines.

Double-entry ledger

DEBIT/CREDIT entries enforce balance integrity and support reconciliation.

Backend services

Prisma models and domain services handle business logic, ledger posting, and payment processing.

Frontend

Next.js pages with dedicated dashboards for Requester and Payer, with reusable UI components.

Authentication & security

NextAuth credentials provider with role-specific flows, session-backed APIs, and multi-tenant access enforcement.

Infrastructure

PostgreSQL database, Dockerized deployment, and Vercel hosting.

Key Learnings

Walletly taught how real-world payment engines are layered (gateway → switch → ledger) and how to design idempotent, retry-safe workflows. I gained hands-on experience with double-entry accounting, multi-tenant isolation, auditability, and structured logging for debugging complex financial flows. Building the full stack reinforced end-to-end ownership, from authentication and UI to database transactions and deployment pipelines.