Back to Blog
Aman Jha mvp-payments stripe-for-startups razorpay-integration

How to Set Up Payments in Your MVP: Stripe, Razorpay, and What Actually Matters

A founder's no-BS guide to integrating payments into your MVP. Stripe vs Razorpay vs Paddle vs LemonSqueezy — what to pick, how to set it up, and the mistakes that cost founders weeks.

How to Set Up Payments in Your MVP: Stripe, Razorpay, and What Actually Matters

How to Set Up Payments in Your MVP: Stripe, Razorpay, and What Actually Matters

You’ve built something people want. Someone said “I’d pay for this.” Now you need to actually collect money — and you’re about to fall into the same trap that wastes founders 2-4 weeks.

The trap: Researching payment gateways for days. Reading comparison blogs. Setting up a complex billing system before you have 10 paying customers.

Here’s what actually matters at the MVP stage — and how to go from zero to collecting money in under a day.

The Only Question That Matters First

Before you compare Stripe vs Razorpay vs Paddle vs anything else, answer this:

Where are your first 10 customers located?

That’s it. Pick one. Move on. You can switch later — and you probably will. The goal at MVP stage is to collect money, not optimize payment infrastructure.

The MVP Payment Stack (What You Actually Need)

At launch, you need exactly three things:

Don’t build a custom checkout. Every payment provider offers hosted checkout pages or payment links you can generate in 5 minutes.

Stripe: Create a Payment Link from the dashboard. No code. Share the URL. Done.

https://buy.stripe.com/your-unique-link

Razorpay: Payment Links from the dashboard. Same concept.

LemonSqueezy: Built-in checkout overlay. Add one script tag and a button.

For your MVP, a payment link is enough. You can embed it in your app, email it to customers, or put it on your landing page. Custom checkout flows come later — when you have enough volume to justify the engineering time.

2. A Way to Know Who Paid

This sounds obvious, but I’ve seen founders collect payments and then manually check their Stripe dashboard to figure out who has access.

Minimum viable approach:

// Your entire payment webhook at MVP stage
app.post('/webhook/payment', (req, res) => {
  const event = req.body;
  if (event.type === 'checkout.session.completed') {
    const email = event.data.object.customer_email;
    await db.users.update({ email }, { paid: true, paidAt: new Date() });
  }
  res.status(200).send('ok');
});

No subscription management. No plan tiers. No usage-based billing. Just “did they pay? yes/no.”

3. A Receipt (Automatic)

Stripe, Razorpay, LemonSqueezy, and Paddle all send automatic receipts. You don’t need to build invoicing. Don’t even think about it until you hit $10K MRR.

Provider Comparison: The Honest Version

FactorStripeRazorpayLemonSqueezyPaddle
Best forGlobal SaaS, US/EU customersIndia-first businessesSolo founders, digital productsSaaS selling to EU/US
Pricing2.9% + 30¢ (US)2% (India domestic)5% + 50¢5% + 50¢
Tax handlingYou handle itYou handle itThey handle it (MoR)They handle it (MoR)
Setup time30 min (instant in US)2-3 days (KYC)15 min1-2 days (approval)
Docs qualityBest in classGoodGoodGood
Subscription billingExcellentGoodBuilt-inBuilt-in
India UPI supportNoYesNoNo
Payout speed2 days (US), 7 days (India)T+2 (India)WeeklyMonthly

When to Pick What

Pick Stripe if:

Pick Razorpay if:

Pick LemonSqueezy if:

Pick Paddle if:

The Setup: Stripe in 30 Minutes (Step by Step)

Since Stripe is the most common choice, here’s the fast path:

Step 1: Create Account (5 min)

Go to stripe.com, sign up. If you’re in the US, you’re instantly activated. India takes 2-7 days for verification.

Step 2: Create a Product (2 min)

Dashboard → Products → Add Product. Set the name, price, and whether it’s one-time or recurring.

Dashboard → Payment Links → Create. Select your product. Copy the link.

You can now collect money. Put that link on your landing page, email it to beta users, share it in your community. No code required.

Step 4: Set Up the Webhook (20 min)

Dashboard → Developers → Webhooks → Add endpoint.

Point it at your server: https://yourapp.com/api/webhooks/stripe

Listen for these events:

Handle them in your backend. Flip the user’s access flag.

Step 5: Test It

Use Stripe’s test mode. Card number 4242 4242 4242 4242, any future expiry, any CVC. Run through the flow. Verify the webhook fires. Check the user gets access.

Total time: 30 minutes. You now have a working payment system.

The Mistakes That Cost Founders Weeks

Mistake 1: Building Custom Checkout UI

“I want the payment form embedded in my app with my branding.”

At 0 customers, nobody cares about your checkout branding. Stripe Checkout is trusted, mobile-optimized, and handles edge cases you haven’t thought of (3D Secure, card decline retries, saved payment methods). Use it.

Build a custom checkout when you have data showing that redirect-based checkout is hurting conversion. That’s probably at 1,000+ monthly transactions, not 10.

Mistake 2: Implementing Subscription Management Before You Need It

Don’t build a billing portal with plan upgrades, downgrades, prorations, and cancellation flows before you have 20 subscribers.

For your first 50 customers, handle plan changes manually. Literally email them and adjust in the dashboard. This takes 5 minutes per week at low volume and saves you 2 weeks of engineering.

Mistake 3: Worrying About Tax Compliance on Day One

If you’re under $10K in revenue, tax compliance is not your biggest problem. Pick LemonSqueezy or Paddle if tax terrifies you. Otherwise, collect the revenue first and hire an accountant when the numbers justify it.

Mistake 4: Integrating Multiple Payment Providers at Launch

“We need Stripe for international and Razorpay for India and PayPal for people who prefer it.”

No. Pick one. Add more when you have data showing you’re losing customers because their preferred payment method isn’t available. At MVP stage, the conversion hit from a missing provider is way smaller than the engineering cost of supporting multiple.

Mistake 5: Building Before Validating Willingness to Pay

The biggest payment mistake isn’t technical — it’s adding payments to a product nobody wants to pay for.

Before writing a single line of payment code:

  1. Get 5 people to say “I would pay $X for this”
  2. Get 2 of those people to actually click a payment link
  3. Then build the integration

Subscription vs One-Time: What to Start With

Start with one-time payments if:

Start with subscriptions if:

Pro tip: Many founders start with a one-time “lifetime deal” to validate willingness to pay, then switch to subscriptions once they have 50+ paying users and confidence in the pricing.

The India-Specific Section

If you’re building for Indian customers:

UPI is Non-Negotiable

If your customers are Indian consumers or SMBs, UPI isn’t optional — it’s where 60%+ of transactions happen. Razorpay and Cashfree support UPI. Stripe doesn’t (yet, for most use cases).

GST Compliance

Register for GST once you cross ₹20L annual revenue (₹10L for some states). Before that threshold, you can invoice without GST registration. Don’t let compliance paranoia stop you from charging.

Razorpay’s Advantage

2% domestic transaction fees vs Stripe’s effectively higher fees for India-to-India transactions. For an India-focused MVP, Razorpay saves you real money.

International from India

If you’re an Indian company selling to US/EU customers, Stripe Atlas can help you set up a US entity. But at MVP stage, Razorpay International or PayPal business can handle cross-border payments without a US entity.

Payment Psychology for Founders

A few things that matter more than your payment infrastructure:

  1. Show the price before the signup. Hidden pricing kills trust. If someone has to create an account to see what you charge, 70% will bounce.

  2. Offer annual pricing with a discount. Even at MVP stage, $19/mo or $149/year (save 35%) increases average deal size. It’s one extra Stripe product — takes 2 minutes.

  3. Add a money-back guarantee. “Not happy? Email us within 14 days for a full refund.” This increases conversion by 15-30% and almost nobody actually asks for refunds if your product is decent.

  4. Invoice for B2B. If your customers are businesses, they often prefer invoices over card payments. Stripe Invoicing handles this. For India, Razorpay has invoicing too.

What Your MVP Payment Flow Should Look Like

Landing Page → "Start Free Trial" or "Buy Now" button

Stripe/Razorpay Checkout (hosted, not custom)

Webhook fires → your server flips user.paid = true

Redirect to app with "Welcome, you're in!" message

Automatic receipt email (handled by payment provider)

That’s it. No cart. No coupon system. No add-ons. No upsells. Just: click → pay → access.

Build the fancy stuff when you have the revenue to justify the engineering time.

When to Upgrade Your Payment Stack

Upgrade from the MVP payment setup when:

SignalWhat to Add
50+ subscribersSelf-serve billing portal (Stripe Customer Portal)
Multiple plansPlan switching with proration
Enterprise customersCustom invoicing, PO support
$5K+ MRRDunning (failed payment retries)
Global customersMulti-currency pricing
$10K+ MRRRevenue analytics (Baremetrics, ChartMogul)

Bottom Line

You can go from “no payment system” to “collecting money” in 30 minutes. The only thing stopping most founders is overthinking the choice.

  1. Pick the provider that matches where your customers are
  2. Create a payment link (5 minutes, no code)
  3. Set up one webhook to track who paid
  4. Ship it

The best payment infrastructure for your MVP is the one that’s live today — not the perfect one you’re still researching next week.

Take the Build Score assessment to see if your MVP is ready for monetization →