r/ShopifyAppDev • u/Eordinary01 • 22m ago
Built a full ecommerce app. 5 things I'd tell anyone building one
atelier-seven-pearl.vercel.appSpent the last few weeks building a complete ecommerce application end-to-end frontend, backend, auth, cart, orders, payment flow, admin panel. Wanted to share what I ran into, in case it's useful for anyone building something similar.
**Stack:** \[Next.js\] + \[Node\] + \[Postgres\] + \[Razorpay\]
**5 things I learned:**
**1. Cart logic is where the bugs live.**
Guest cart → logged-in cart merge, quantity edge cases, stock sync. Looks simple. Isn't.
**2. Payment webhooks fail silently.**
Razorpay webhooks drop without warning. If you don't log and retry them, orders vanish and you hear about it from an angry customer, not your dashboard.
**3. The admin panel takes as long as the storefront.**
Everyone underestimates this. Founders especially.
**4. Mobile-first isn't optional for Indian ecommerce.**
70%+ of traffic is mobile. Desktop-first designs die here.
**5. Image optimization matters more than you'd think.**
A 2MB product image on 4G kills conversions. Compress, lazy-load, serve WebP.
**What I'd do differently next time:**
* Build the admin panel first, not the storefront
* Define the order state machine before anything else
* Set up logging on day one
**One honest note:**
I built an ecommerce app before this one. Functionally it worked but the UI was average. It did the job, it just didn't *look* like something you'd want to show a customer.
So this time I rebuilt the frontend from scratch and treated design as a first-class part of the build, not an afterthought. Same backend discipline, but a UI I'd actually put in front of users. The difference is night and day, and it taught me more than the first build did.
The infrastructure side of ecommerce auth, cart, orders, payments is basically the same 20% of code in every project. The real bottleneck isn't the build. It's the product, marketing, and ops decisions around it.
Happy to answer questions if anyone's building in this space or stuck on the same parts. Been through most of the common walls.