Live spiritual-services marketplace with Razorpay and UPI/QR payments.
Role
Full-stack developer
Status
Live
Source
Source private — client codebase
Context
Manima Online is a spiritual-services marketplace: people pick a puja or ritual, book it and pay online. It moves real money for three kinds of user — admin, client and agent — so the payment path has to be correct even when someone double-taps, retries or reloads.
What I built
Payments end to end with Razorpay and UPI/QR
Idempotent payment handling and server-side validation, so a retry or double-tap can't charge twice
Three user roles: admin, client and agent
CI/CD with GitHub Actions
Stack
ReactNode.jsExpressMongoDBJWTRazorpay
Screens
Featured services — temples and pujas to book.
The three-step flow: select, book and pay, get confirmation.