Prince Pal.
AboutProjectsExperienceSkillsGitHubContactResume
PPPrince PalFull Stack Developer

Crafting modern web experiences with a focus on user experience and performance.

GitHubLinkedInInstagram

Explore

  • About
  • Projects
  • Experience
  • Skills
  • GitHub
  • Contact

Get in touch

  • princepal262501@gmail.com
  • +91 7618486202
  • Bhimtal, Nainital, Uttarakhand, India

© Prince Pal. All rights reserved.

Made with Next.js

Back to top
Back to projects

Backend walkthrough

Banking Ledger API

A banking API for account management and fund transfers that prevents retries from creating duplicate transactions.

Source code

Why retries matter

A transfer can succeed even if the network drops before the client sees the response. Retrying with the same idempotency key identifies the original transfer and prevents a second debit.

Interactive simulation

Retry a ₹500 transfer

Send a transfer, then retry it with the same request key after a simulated connection drop.

Request key transfer-demo-01

Ready to send a transfer.

Sender balance
₹1,000
Receiver balance
₹0

Ledger entries created: 0

Tech stack

  • Node.js
  • Express.js
  • MongoDB
  • Mongoose
  • JWT
  • bcrypt
  • Nodemailer
  • Render