A client who runs a digital marketing training business in Delhi was collecting payments the old-fashioned way: customers would bank transfer the fees, then send him a screenshot on WhatsApp, and he would manually check and confirm enrolment. The process took 24–48 hours, during which students could change their mind. He was losing at least 3–4 enrolments every month to this friction alone.
We added a Razorpay payment button to his course pages. Students pay instantly with UPI, get an automatic confirmation email, and are enrolled the same minute. His conversion rate jumped by nearly 40% in the first month. The payment now happens at the moment of decision - not 48 hours later.
In 2026, if your business sells anything online - a course, a service, a product, an advance booking - and you are not collecting payment directly through your website, you are losing money every single day.
Razorpay vs PhonePe Business vs Cashfree - Honest Comparison
Three payment gateways dominate the Indian market for small and medium businesses. Each has different strengths. Here is the honest breakdown so you can choose without confusion.
- UPI, all cards, net banking, wallets, EMI
- Payment links (no code needed)
- Embedded checkout widget
- Automatic receipts & invoices
- Subscriptions & recurring billing
- Best documentation & support
- UPI, cards, net banking, wallets
- Payment links
- Faster settlement (T+1)
- Good for high-volume businesses
- International payments support
- Slightly harder to set up than Razorpay
- UPI payments only
- QR code & payment links
- Very simple setup
- No website embed option
- Best for in-store / QR payments
- Not suitable for automated checkout
My recommendation: Start with Razorpay. The 2% fee is standard across the industry, the setup is fastest, the documentation is best in class, and for most Indian small businesses the payment link feature alone is enough to start collecting money without any coding. Switch to Cashfree later if your monthly volume justifies the slightly lower rate.
Step-by-Step: Setting Up Razorpay for Your Website
Step 1 - Create and Verify Your Razorpay Account
Go to razorpay.com and sign up. You will need: your PAN card, bank account details, business name, and a cancelled cheque or bank statement. Razorpay verifies Indian businesses typically within 1–2 business days. Once approved, you get access to your live API keys.
Step 2 - The Fastest Method: Razorpay Payment Links (No Code)
This is the right starting point for most businesses. In your Razorpay dashboard, go to Payment Links → Create Payment Link. Set the amount, add a description, and generate the link. Share this link anywhere - WhatsApp, email, SMS, or as a button on your website. Customers click it, choose UPI or card, pay, and get an automatic receipt.
To add it as a button on your website, simply link your existing "Pay Now" or "Buy" button to the Razorpay payment link URL. Zero integration work required.
Step 3 - Embedded Checkout (For a Seamless In-Page Experience)
If you want payment to happen directly on your website without redirecting to a Razorpay page, use their JavaScript SDK. Add this to your web page:
/* Add this script tag in your HTML head */
<script src="https://checkout.razorpay.com/v1/checkout.js"></script>
/* Add this button to your page */
<button id="rzp-button">Pay ₹999 with UPI / Card</button>
/* Add this script before closing body tag */
<script>
var options = {
key: "YOUR_RAZORPAY_KEY_ID",
amount: "99900", // Amount in paise (999 x 100)
currency: "INR",
name: "Your Business Name",
description: "Service / Product Name",
handler: function(response) {
// Payment successful - redirect or show confirmation
alert("Payment successful! ID: " + response.razorpay_payment_id);
},
prefill: { name: "", email: "", contact: "" },
theme: { color: "#d4a843" }
};
var rzp = new Razorpay(options);
document.getElementById("rzp-button").onclick = function() {
rzp.open();
};
</script>
Replace YOUR_RAZORPAY_KEY_ID with your actual key from the Razorpay dashboard under Settings → API Keys. The amount is always in paise - multiply rupees by 100. So ₹999 becomes 99900.
Test mode first: Razorpay provides test API keys that let you simulate payments without real money. Always test with the test key before switching to live keys. In test mode, use card number 4111 1111 1111 1111 with any future expiry and CVV to simulate a successful payment.
Adding a Direct UPI Deep Link (Simplest Possible Option)
If you want the absolute simplest way to accept UPI on your website - with zero gateway, zero fees, and instant settlement - use a UPI deep link. This opens any UPI app (GPay, PhonePe, Paytm, BHIM) directly on the customer's phone with your payment details pre-filled.
The format is:
upi://pay?pa=YOUR_UPI_ID&pn=YOUR_NAME&am=AMOUNT&cu=INR&tn=DESCRIPTION
Example - a ₹999 payment to Sanjeevi at divxwebstudio@upi:
<a href="upi://pay?pa=divxwebstudio@upi&pn=DivX+Web+Studio&am=999&cu=INR&tn=Website+Design+Advance">
Pay ₹999 via UPI
</a>
On mobile, clicking this link opens the UPI app chooser. On desktop it does nothing - so always pair it with a Razorpay payment link as the fallback for desktop users.
GST & Legal Requirements for Accepting Online Payments
A few legal points every Indian business owner must know before going live with online payments:
- PAN is mandatory - Razorpay, Cashfree, and all gateways require a valid PAN for KYC. Sole proprietors can use their personal PAN. Companies and LLPs use their business PAN.
- Bank account in business name - Your settlement account should be in your business name. Razorpay does accept personal accounts for sole proprietors with proper documentation.
- GST registration - Not required to set up a payment gateway. Required if your annual turnover exceeds ₹20 lakhs (₹10 lakhs for special category states). If registered, you must collect GST on applicable services and file returns.
- Issue receipts - Every payment received must be acknowledged. Razorpay sends automatic receipts by email. For GST-registered businesses, these must be proper tax invoices with GST breakdowns.
- RBI guidelines on refunds - Online payments must be refundable within a defined period. Have a clear refund policy on your website before accepting payments.
Best Practices for Payment on Your Website
- Show accepted payment methods visibly - Display UPI, Visa, Mastercard, and Rupay logos near your payment button. This builds trust and tells customers they can use their preferred method.
- HTTPS is non-negotiable - Your website must have an SSL certificate before you add any payment functionality. Modern browsers block payment APIs on non-HTTPS pages.
- Confirmation page after payment - Always redirect to a thank-you page after successful payment. This confirms to the customer that everything went through and gives you a page to add next steps.
- Send WhatsApp confirmation - For Indian customers, a WhatsApp message confirming the payment and what happens next is the most reassuring thing you can do. Use Razorpay webhooks or simply set up a manual follow-up system.
- Mobile payment UX - Test your entire payment flow on a mobile phone. Over 70% of your customers will pay from mobile. The button must be large, the checkout must load fast, and UPI must be the first option shown.
Common Questions About Website Payments in India
Need Help Adding Payments to Your Website?
Setting up a Razorpay payment button, building a complete checkout flow, or integrating UPI payments into an existing website - these are things I do regularly for Indian business clients. I can have a basic payment integration live on your website within a day or two.
Add UPI & Card Payments to Your Website
Tell me what you are selling and I will recommend the right payment setup - Razorpay payment link, embedded checkout, or UPI deep link - and help you get it live fast.
WhatsApp to Add Payments