Ledgerly
Invoices and payments for small businesses
Create invoices, get paid online and send automatic reminders — with a clear dashboard that shows who has paid and who hasn't.
- My role
- Full Stack Developer
- Timeline
- 6 months
- Year
- 2025
Built with
- Next.js
- TypeScript
- NestJS
- MongoDB
- Redis
- Docker
Key results
- uptime over 12 months
- 99.9%
- faster payments for its users
- 2×
- payments counted twice
- 0
01Overview
The story
Small business owners were tracking invoices in spreadsheets and chasing payments over the phone. Ledgerly puts it all in one place: send an invoice, get paid online, and let the app do the follow-ups. I built the whole product — the web app, the server and the payment integrations.
02Features
What I built
- 01Create and send a professional invoice in under a minute
- 02Online payments by card and UPI
- 03Automatic payment reminders by email
- 04Dashboard with paid, pending and overdue invoices
- 05Separate, secure accounts for every business
03Challenge
Payments counted twice
The problem
Payment providers sometimes send the same confirmation twice, which could mark one invoice as paid twice.
How I solved it
Every payment now carries a unique ID, and the app ignores any confirmation it has already processed.
04Challenge
Slowdowns while making PDFs
The problem
Creating large PDF invoices slowed the app down for everyone else using it.
How I solved it
PDFs and emails are now prepared in the background, so the app stays fast while they're being made.