Get In Touch
Gurugram
Plot # 1SP, Sector 27, Golf Course Rd, A Block, DLF Phase 1, Sector 27, Gurugram, Haryana 122022, India

Bengaluru
#103, 2nd floor, Unitech Coral Hosa Road, Sarjapur, Bengaluru, Karnataka 560035, India
Work Inquiries
info@creativenexus.in
prabhu@creativenexus.in
rishabh@creativenexus.in
Phone
+91 9999212010
+91 9019321894
+91 98686 57429

How to Integrate Razorpay with WordPress in Under 10 Minutes (2026 Guide)

Table of Contents

If you sell anything online in India — physical products, digital downloads, courses, services, subscriptions — your checkout is doing more work than your homepage. A slow, clunky, or untrusted payment flow is where conversions silently die. The fix is choosing the right payment gateway and wiring it up properly.

For most Indian WordPress stores, that means Razorpay. It supports UPI, cards, net banking, wallets, EMI, and pay-later options out of the box, and the official Razorpay for WooCommerce plugin does almost all the heavy lifting for you. If you have a coffee in hand and ten focused minutes, you can be live and accepting payments before it goes cold.

This guide walks you through every step — prerequisites, plugin installation, API key configuration, test transactions, and going live — so you can integrate Razorpay payment gateway with your WordPress website without hiring a developer.

Why Razorpay is the Go-To Payment Gateway for WordPress in India

Before we get into the setup, it helps to understand why Razorpay is such a common pick for Indian WordPress and WooCommerce stores.

Wide payment mode coverage. A single integration unlocks 100+ payment methods, including Visa, Mastercard, RuPay, American Express, UPI (GPay, PhonePe, Paytm), net banking from every major Indian bank, popular wallets, EMI, and BNPL options. Your customer pays however they like, and you don’t manage separate integrations for each.

On-site checkout, no redirects. Customers stay on your site through the entire payment journey. That alone tends to lift conversion rates compared to gateways that yank users away to a generic third-party page.

Strong security and compliance. Razorpay is PCI DSS Level 1 compliant — the highest tier — with regular third-party audits. You don’t store sensitive card data on your server, which keeps your compliance burden light.

Built for developers, friendly for non-developers. The WooCommerce plugin is officially maintained by Razorpay, gets regular security updates, and works without code if you’re using a standard WooCommerce setup.

International payments support. If you sell beyond India, Razorpay can accept payments in 100+ foreign currencies once multi-currency is enabled on your account.

For WordPress site owners who want a clean, modern checkout without the engineering overhead of a custom build, this combination is hard to beat.

Razorpay vs Other Payment Gateways for WordPress

A quick reality check before you commit. Razorpay isn’t the only option for Indian WordPress stores — PayU, Cashfree, Instamojo, and CCAvenue all offer WooCommerce plugins. Here’s how they stack up at a glance:

  • Razorpay vs PayU — PayU has stronger enterprise relationships and slightly better pricing at very high volumes. Razorpay wins on developer experience, plugin quality, and dashboard usability for SMBs.
  • Razorpay vs Cashfree — Cashfree often offers lower transaction fees and instant settlements. Razorpay has a more polished checkout UI and broader plugin ecosystem.
  • Razorpay vs Instamojo — Instamojo is simpler for very small sellers (no KYC for low volumes initially), but its WooCommerce integration is less robust. Razorpay scales better as you grow.
  • Razorpay vs Stripe — Stripe is excellent for global businesses but has historically had patchy India support. For India-first stores, Razorpay is the safer pick.

For 90% of Indian WordPress and WooCommerce sites we’ve seen, Razorpay is the right default — which is why this guide focuses on it.

What You Need Before You Start

To stay inside the 10-minute window, get these prerequisites ready first:

  1. A WordPress website with WooCommerce installed and activated. Razorpay’s main payment plugin runs on top of WooCommerce. If you’re running plain WordPress without WooCommerce, you can use the simpler Razorpay Payment Button instead — covered briefly at the end.
  2. A Razorpay account. Free to create at razorpay.com using your business email.
  3. Admin access to your WordPress dashboard.
  4. The php-cURL extension enabled on your hosting (most managed WordPress hosts have this on by default).
  5. PHP 7.4 or higher (current versions of the plugin require this minimum).

That’s it. No coding, no SDKs, no terminal.

Step 1: Create Your Razorpay Merchant Account (≈2 minutes)

Head to razorpay.com and sign up with your business email. You’ll be asked for basic details — business name, type, category, and contact information. After verifying your email, you’ll land on the Razorpay Dashboard.

To accept real payments, you’ll need to complete KYC by uploading your business documents (PAN, GST if applicable, bank account details for settlements). KYC verification can take a day or two on Razorpay’s side, but you don’t have to wait for it. You can finish your full integration and test it end-to-end using Test Mode while KYC is processing in the background.

Step 2: Install the Razorpay for WooCommerce Plugin (≈1 minute)

Log in to your WordPress admin dashboard and go to Plugins → Add New. In the search box, type “Razorpay for WooCommerce.”

You’re looking for the official plugin published by Team Razorpay — not a third-party clone. Click Install Now, wait a few seconds, then click Activate.

If your hosting blocks plugin installs from the dashboard, you can download the plugin ZIP from the WordPress Plugin Directory (or from Razorpay’s GitHub repository), then upload it via Plugins → Add New → Upload Plugin.

Once activated, the plugin slots itself into your WooCommerce settings. There’s nothing to set up at the WordPress level beyond activation — the rest happens inside WooCommerce.

Step 3: Generate Your Razorpay API Keys (≈2 minutes)

Switch back to your Razorpay Dashboard. In the left sidebar, navigate to Account & Settings → Website and app settings → API Keys (the exact path shifts slightly with dashboard updates, but search for “API Keys” if you can’t spot it).

Make sure you’re in Test Mode for now. There’s a toggle near the top of the dashboard. Click Generate Test Key. The dashboard will show you a Key ID and a Key Secret.

Copy both, and store them somewhere safe — a password manager is ideal. The Key Secret is shown only once. If you lose it, you’ll need to generate a new pair.

When you’re ready to accept real money, you’ll repeat this same step in Live Mode to generate live API keys. Don’t mix the two: live keys in test mode (or vice versa) will cause every transaction to fail.

Step 4: Configure the Plugin Inside WooCommerce (≈2 minutes)

Back in WordPress, go to WooCommerce → Settings → Payments. You’ll see a list of available payment methods. Find Razorpay in the list and toggle it on.

Click Manage (or Set up) next to Razorpay. This opens the configuration screen where you’ll fill in:

  • Title — what customers see at checkout (e.g., “Pay with cards, UPI, wallets & net banking”).
  • Description — a short line shown when Razorpay is selected at checkout.
  • Key ID — paste the Test Key ID from Step 3.
  • Key Secret — paste the Test Key Secret from Step 3.
  • Payment Action — keep this as Authorize and Capture so payments are settled automatically. Use “Authorize” only if you want to manually capture each payment from the dashboard later.
  • Webhooks — modern plugin versions auto-configure webhooks when you save your API keys. If you’re on an older version, head to Settings → Webhooks in your Razorpay dashboard and add the webhook URL shown by the plugin.

Click Save Changes. Razorpay is now wired into your store.

Step 5: Run a Test Transaction (≈2 minutes)

Open your storefront in an incognito window. Add any product to the cart and proceed to checkout.

When you reach the payment step, select Razorpay. The Razorpay checkout will appear inside your site (no redirects). Use one of Razorpay’s official test card numbers — for example, card 4111 1111 1111 1111 with any future expiry date and any 3-digit CVV. UPI test handles like success@razorpay also work in test mode.

Complete the payment. You should see your order marked as paid in WooCommerce → Orders, and a corresponding entry under Transactions → Payments in your Razorpay Dashboard with status “captured.”

If the test goes through cleanly, your integration works. If it doesn’t, jump to the troubleshooting section below.

Step 6: Switch to Live Mode and Go Live (≈1 minute)

Once KYC is approved on your Razorpay account, flip the dashboard toggle to Live Mode and generate a fresh Live Key ID and Live Key Secret.

Go back to WooCommerce → Settings → Payments → Razorpay and replace the test API keys with the live ones. Save changes.

Run one final transaction with a small real amount (₹1 or ₹2) using your own card or UPI to confirm everything works end-to-end. Refund it from the Razorpay dashboard, and you’re officially live.

Common Razorpay WordPress Integration Issues (and Quick Fixes)

“Razorpay” doesn’t appear in the WooCommerce payment list. Double-check that the plugin is activated under Plugins → Installed Plugins. If it is, deactivate and reactivate it.

Checkout button doesn’t load or returns an error. This is usually a caching or optimizer plugin interfering with the Razorpay script. Temporarily disable any caching, minification, or “speed booster” plugins and retest.

“Invalid key” error. You’re likely using test keys in live mode or vice versa. Regenerate the matching pair and re-save.

Payments succeed but orders stay “Pending.” Your webhook isn’t firing. Open the plugin settings, copy the webhook URL shown, and add it manually inside your Razorpay dashboard under Settings → Webhooks.

Razorpay checkout opens but fails on UPI. Confirm you’re not using a test UPI handle in live mode. Live UPI requires a real, registered UPI ID.

What If You Don’t Use WooCommerce?

If your WordPress site is content-led — a blog, course landing page, NGO donation page, or single-product site — full WooCommerce can be overkill. In that case, the Razorpay Payment Button is the faster route. You add it via a plugin or by pasting a small code snippet, and customers can pay a fixed or custom amount without a full cart system. It’s accept-payments-in-minutes territory, ideal for one-off pages.

Frequently Asked Questions
Is Razorpay free to use on WordPress?

The plugin itself is free. Razorpay charges per successful transaction — typically 2% for domestic cards, UPI, and net banking, with separate rates for international cards and wallets. There's no setup fee, monthly fee, or maintenance charge.

How long does Razorpay KYC verification take?

Usually 1–3 business days once you've uploaded all required documents (PAN, bank proof, business proof). You can complete the entire integration and run test transactions while KYC is in progress.

Can I use Razorpay on WordPress without WooCommerce?

Yes. Use the Razorpay Payment Button or the standalone Razorpay WordPress plugin for fixed-amount payments. WooCommerce is only required if you need a full shopping cart with variable products and order management.

Does Razorpay support recurring payments and subscriptions on WordPress?

Yes, but you'll need the separate Razorpay Subscriptions for WooCommerce plugin alongside the WooCommerce Subscriptions extension. Together they handle automated recurring billing for memberships, SaaS, and subscription boxes.

Is Razorpay safe for accepting customer card details?

Yes. Razorpay is PCI DSS Level 1 certified, which is the highest compliance tier. Sensitive card data never touches your WordPress server — it's handled directly on Razorpay's tokenized infrastructure.

Why is my Razorpay payment showing as successful but the WooCommerce order is still "Pending"?

 This is almost always a webhook configuration problem. Either the webhook URL isn't registered in your Razorpay dashboard, or your hosting is blocking the incoming webhook request. Check both, and your orders will start updating automatically.

Can I customize the Razorpay checkout to match my brand?

Yes — you can add your logo, brand colors, and customize the checkout title and description through both the Razorpay dashboard and the plugin settings.

What happens if a customer's payment fails halfway through?

WooCommerce marks the order as "Failed" and Razorpay logs the attempt in your dashboard. The customer can retry without creating a duplicate order, and you can follow up using Razorpay's abandoned payment recovery features.

Need Help Setting This Up?

Razorpay’s official plugin is genuinely well-built, but real-world WordPress sites get messy — custom themes, conflicting plugins, page builders, multi-currency stores, subscription products, and edge cases the documentation doesn’t cover. If your integration isn’t behaving the way it should, or you’re planning a more complex setup (multi-vendor marketplace, subscription billing, route payments, custom checkout), you don’t have to debug it alone.

Creative Nexus has been building and maintaining WordPress and WooCommerce stores for Indian and global brands since 2016. We handle Razorpay integrations, custom checkout flows, performance optimization, and ongoing payment gateway support as part of our WordPress development services and e-commerce development services.

Final Thoughts

The whole appeal of integrating Razorpay with WordPress is that you get an enterprise-grade payment experience without writing a line of code. Sign up, install the plugin, paste two API keys, run a test transaction — that’s the entire job. Done correctly, you’re collecting payments in UPI, cards, net banking, and wallets within a single afternoon.

Spend the saved time where it actually matters: better product pages, sharper offers, and the marketing that drives traffic to that brand-new checkout in the first place.

Leave a Reply

Your email address will not be published. Required fields are marked *

We use cookies to give you the best experience. Cookie Policy