Open-source demo

Banking that feels calm, clear, and in your control.

UmerPay is a full-stack portfolio playground: virtual cards, biometric passkeys for login and payments, IBAN transfers, beneficiaries, CSV statements, and a PWA — MIT licensed so you can fork and experiment.

Open sourceMITNext.js 14PrismaPostgreSQLWebAuthn

UmerPay wallet

PKR ••••••••

Tap through the app to reveal your real demo balance

Virtual cardActive

•••• •••• •••• 4242

Limits · freeze · demo pay — all in Cards

PasskeysIBANCSV
Muhammad Umer Sheraz — technical lead for UmerPay

Technical

Muhammad Umer Sheraz

I built UmerPay to showcase how far you can take a credible banking UI in the open — readable typography, dark-first layout, and real flows (not just mock screens). Explore the live app, read the code, and treat it as a learning sandbox: it's not a licensed institution and holds no real money.

Why this project exists

Most portfolio pieces stop at a single screen. UmerPay goes further: authentication, a ledger-style transfer path, optional WebAuthn, exports, and an admin slice — the kinds of seams you hit in real product work, packaged as a cohesive demo you can run locally or on Vercel.

Use it to study patterns, steal ideas for your own apps, or show recruiters a live link that actually does something when you click around. Contributions and feedback are welcome; the goal is curiosity, not compliance-grade banking.

What you can explore

Sign in or open an account — everything here is implemented end-to-end. No fake buttons; each area talks to the API and database (demo data only).

  • Virtual cards

    Create demo virtual debit cards, set daily and monthly spend limits, freeze or unfreeze anytime, and run a simulated card payment that debits your main balance.

  • Biometric login & payments

    Use WebAuthn passkeys — Face ID, Touch ID, or Windows Hello — for passwordless sign-in. Optionally confirm transfers with your passkey instead of a one-time code (enable in Settings).

  • Transfers & IBAN

    Send money by account number or UMER IBAN, preview the payee’s name before you pay, save frequent recipients as beneficiaries, and get a receipt / invoice link.

  • Statements & export

    Browse your activity by date range and download a CSV statement — handy for demos and portfolio walkthroughs.

  • OTP verification

    Sign up with email and phone, confirm with a 6-digit code (demo-friendly; never ship OTP hints in production APIs).

  • Install as an app (PWA)

    Add UmerPay to your home screen or desktop from the browser — standalone icon, dark theme, feels closer to a native banking app.

  • Secure sessions

    JWT in HTTP-only cookies, bcrypt password hashing, and role-aware routes — customer vs admin areas stay separated.

  • Admin console (demo)

    A seeded admin can credit or debit customer balances with simple audit-style logging — for portfolio demos only, not real operations.

Ready to click through?

Create a demo account in seconds, or sign in if you already have one. The codebase is on GitHub whenever you want to peek under the hood.