Razorpay Merchant Agent
Merchant operations workspace with a natural-language store agent
Small sellers jump between dashboards to answer simple questions about their store.
One workspace over WooCommerce with a plain-language store agent.
Orders, stock and customers in one view, with answers you can trace to records.

- Role
- Full-stack development
- Year
- 2026
- Team
- Built with Pranav Suri
- Stack
- Next.js, TypeScript, Tailwind CSS, TanStack Query, FastAPI, PostgreSQL, SQLAlchemy, Alembic, WooCommerce API
Overview
A merchant workspace that connects to a WooCommerce store and brings orders, products, inventory and customers into one place, with an agent that answers questions about the store in plain language.
The problem
Small online sellers jump between the WooCommerce admin, payment dashboards and spreadsheets to answer simple questions like which orders are stuck or what is about to run out of stock.
What I built
- 1Built a Next.js front-end over a FastAPI and PostgreSQL backend that talks to the WooCommerce REST API v3.
- 2Designed an overview that ranks what needs attention by impact: pending payments, out-of-stock items, low stock.
- 3Added an agent that answers questions about orders, stock and customers, and shows the records and calls behind every answer.
- 4Encrypted store credentials on the server and shipped a full demo mode with synthetic data so anyone can try it.
Highlights
- Answers are traceable: each reply links to the records it used.
- Demo store works without any WooCommerce account.
- 66 backend tests with pytest.
How it works
- Browser
- Next.js workspace
- FastAPI backend
- PostgreSQL (SQLAlchemy)
- WooCommerce REST API v3
Key decisions and trade-offs
Answers show their evidence
Every agent reply lists the records it found and the calls it made, so a merchant can check it before acting.
Demo mode with synthetic data
Anyone can try the full product without connecting a real store.
Credentials stay on the server
Store API keys are encrypted server-side and never reach the browser.
Screens


