A founder came to me with a simple requirement: 100+ products Customers need to browse products Customers need to place orders through WhatsApp No online payments No monthly Shopify subscription The interesting part? He didn't need a traditional ecommerce platform. He needed a simple way to display products and receive orders. The Problem The original idea could easily turn into a large ecommerce application: User accounts Authentication Shopping cart Checkout Payment gateway Order management Email notifications Product management Inventory Hosting infrastructure But most of these weren't actually required. The business only needed: Products → Cart → WhatsApp order So we started there. What We Built The customer-facing side has three main steps: Browse products Add products to the cart Send the order directly to WhatsApp The admin panel handles: Adding products Editing products Uploading product images Setting prices Managing inventory There is no unnecessary checkout flow or payment system. The Architecture For this MVP, we intentionally kept the architecture simple. Frontend Next.js The customer website and admin interface are built with Next.js. Hosting Vercel The application can be deployed on Vercel's free tier, which removes the need for a traditional server for this MVP. Database Supabase The product data is stored in Supabase using its free tier. The goal was to avoid paying for infrastructure before the business had validated the idea. Why We Didn't Build Payments The founder didn't need online payments. Customers were going to place their orders through WhatsApp. Adding Stripe or another payment provider would have introduced additional complexity without solving an actual business problem. So we didn't build it. The same principle applied to authentication and email notifications. If a feature isn't needed to validate the business, it can wait. The 0/month using the free tiers of Vercel and Supabase. That doesn't mean every ecommerce business can run indefinitely for free. As traffic, storage, database usage, or business requirements grow, paid infrastructure may become necessary. The goal here was different: Validate the business before paying for infrastructure. What I'd Add Later If the business starts getting real traction, we can introduce features based on actual needs: Online payments Customer accounts Order tracking Automated notifications Advanced inventory management Analytics More powerful admin features Better order management The important part is that these features can be added later. We don't need to build everything on day one. The Bigger Lesson Good engineering isn't about building the biggest system possible. It's about understanding the actual problem and choosing the simplest architecture that solves it. In this case, the business didn't need Shopify. It needed a product catalog and a way to turn a customer's cart into a WhatsApp order. So that's what we built. Start with what the business actually needs. Then add complexity when the business earns the right to need it.

How I Built a $0/Month Ecommerce MVP Without Shopify
Haseeb Sheikh

