← Back to portfolio
Next.js
Turborepo
TypeScript
TailwindCSS
ShadCN UI
Prisma
PostgreSQL
Twilio
NextAuth
Express.js
Redux

2025 - Present

PayWallet – Peer-to-Peer Payment Platform

Building a payment platform means getting security, consistency, and UX right at the same time. PayWallet handles peer-to-peer transfers with OTP-verified login via Twilio, atomic database transactions to prevent double-spend, and bank webhook processing for fund settlements. The merchant portal runs alongside the consumer app in a Turborepo monorepo — both Next.js apps share a common Prisma schema, NextAuth config, and ShadCN UI component library, so auth and data-model changes propagate safely across both surfaces without duplication.

Pay-wallet Paytm-like App

A scalable payment application built with Turborepo, featuring user and merchant services along with a dummy bank webhook.

📌 Tech Stack

📂 Project Structure

🚀 Getting Started

1️⃣ Clone the Repository

git clone https://github.com/devnick10/paytm-app.git
cd paytm-app

2️⃣ Install Dependencies

yarn install

3️⃣ Set Up Environment Variables

Create a .env file in the respective services and configure database credentials, authentication, and webhook secrets.

4️⃣ Run Database Migrations

npx prisma migrate dev

5️⃣ Start the Development Server

yarn run dev

📌 Features

✅ User authentication with NextAuth.js (Google provider)
✅ P2P money transfer using phone number
✅ Transaction history tracking
✅ Wallet system for adding money (in progress)
✅ Merchant authentication
✅ Bank webhook for verifying payments
✅ State management with Redux

📱 Phone Verification Feature (Twilio)

Branch: feature/verify-number

🌟 Feature Highlights

📌 Roadmap


🛠 Contributing

Contributions are welcome! Feel free to fork this repo, make changes, and submit a pull request.

If you like this project, give it a ⭐ on GitHub! 🚀