How to Set Up PhonePe Business Payment Gateway: Complete Step-by-Step Guide (2026) | WovLab
PhonePe Business has become India's dominant payment gateway — processing over 40% of all UPI transactions in the country. If you run an online store, a service business, or a physical shop and you're not accepting PhonePe payments, you're leaving money on the table.
This comprehensive guide will walk you through every step of setting up PhonePe Business — from account registration to your first live transaction — including the technical integration, KYC requirements, and best practices that make the difference between a smooth checkout and a failed payment.
🎁 WovLab Offer: Register PhonePe Business through our referral link and our team will integrate it into your website or app completely free. No charge, no catch.
What is PhonePe Business?
PhonePe Business is the merchant-facing payment platform offered by PhonePe, India's largest UPI payment app (owned by Walmart/Flipkart Group). It allows businesses of all sizes to:
- Accept UPI payments (GPay, PhonePe, Paytm, BHIM) through a QR code or API
- Accept debit/credit cards (Visa, Mastercard, RuPay)
- Accept net banking from 100+ banks
- Accept EMI, BNPL (Buy Now Pay Later), and wallet payments
- Manage refunds, settlements, and reports from a dashboard
- Integrate into websites, apps, and physical POS systems
As of 2026, PhonePe processes over 14 billion transactions per year, making it the single most trusted payment brand among Indian consumers. When your checkout shows the PhonePe logo, customers feel confident completing their purchase.
Who Needs PhonePe Business?
PhonePe Business is ideal for:
- E-commerce stores — WooCommerce, Shopify, Magento, custom storefronts
- Service businesses — Freelancers, consultants, agencies, coaching services
- Physical retail — Shops, restaurants, clinics, salons (QR code-based)
- SaaS and digital products — Course platforms, subscriptions, software
- Healthcare and education — Appointment booking, fee collection, donations
PhonePe Business Account Types
PhonePe Business offers two primary modes:
1. Payment Gateway (API Integration)
For websites and apps. You get REST API access, SDKs for Android/iOS/React Native, a JavaScript SDK for web checkouts, and webhook support for payment notifications. This is what you use when building a digital product or e-commerce store.
2. QR Code / POS
For physical stores. You display a static QR code at your counter. Customers scan it with any UPI app and pay. Settlements arrive in your bank account within T+1 (next business day). No terminal hardware required for the basic version.
Step-by-Step: Creating Your PhonePe Business Account
Register via Referral Link
Visit the PhonePe Business registration page via WovLab's referral link. This gets you priority onboarding and free integration support from WovLab.
Choose Your Business Type
Select your business entity type:
- Individual/Sole Proprietor — Simplest, requires PAN + Aadhaar
- Registered Partnership — Partnership deed + PAN of firm
- Private Limited / LLP — COI, MOA, PAN of company
- Public Limited — Full corporate documentation
Complete KYC Documentation
Required documents vary by entity type, but universally you'll need:
- PAN Card (business or personal depending on entity)
- Aadhaar Card (for individual/proprietor verification)
- Bank account details (current account preferred)
- Cancelled cheque or bank statement
- GST number (if registered) — not mandatory but helps higher MDR categories
- Business address proof
- Website URL (for payment gateway) or shop address (for QR)
Business Category Selection
Select the MCC (Merchant Category Code) that best describes your business. This affects your MDR rates. Categories include retail, education, healthcare, digital goods, travel, food & beverage, etc. PhonePe's team reviews this and may request additional information for certain categories.
Verification and Approval
PhonePe typically takes 2–5 business days to complete merchant verification. They may call your registered mobile number to confirm details. Once approved, you receive your Merchant ID and API credentials.
PhonePe MDR Rates (2026)
MDR (Merchant Discount Rate) is the fee PhonePe deducts from each transaction before settling to your account.
| Payment Method | MDR Rate | Notes |
|---|---|---|
| UPI (all apps) | 0% | Zero MDR per RBI mandate on small merchants; 0.18% for large merchants |
| Debit Card (RuPay) | 0% | Zero MDR per RBI directive |
| Debit Card (Visa/Mastercard) | 0.40%–0.90% | Varies by ticket size |
| Credit Card | 1.80%–2.50% | Varies by card type |
| Net Banking | 1.50% | Flat rate |
| EMI | 0% (customer pays processing fee) | Bank-issued EMI |
| Wallets (Paytm, etc.) | 1.50%–2.00% | Interoperability via UPI |
Integrating PhonePe Payment Gateway into Your Website
Once your account is approved, you get access to the PhonePe Developer Portal with your API credentials:
- Merchant ID — Your unique merchant identifier
- Salt Key — Used for request signing
- Salt Index — Version identifier for the salt key
- API Base URL — Staging and production endpoints
Integration Flow (Web)
The PhonePe integration uses a server-side initiation model:
- Your backend creates a payment request object (amount, transaction ID, callback URL)
- Sign the request with your Salt Key using SHA-256 hashing
- POST to PhonePe's initiate endpoint — receive a redirect URL
- Redirect user to PhonePe's payment page
- PhonePe processes payment and redirects user back to your callback URL
- Verify the payment status via server-to-server callback or status API
- Update your order system accordingly
Node.js / Express Integration Example
const crypto = require('crypto');
const axios = require('axios');
const MERCHANT_ID = 'YOUR_MERCHANT_ID';
const SALT_KEY = 'YOUR_SALT_KEY';
const SALT_INDEX = 1;
const BASE_URL = 'https://api.phonepe.com/apis/hermes';
async function initiatePayment(amount, orderId, redirectUrl, callbackUrl) {
const payload = {
merchantId: MERCHANT_ID,
merchantTransactionId: orderId,
merchantUserId: `USER_${Date.now()}`,
amount: amount * 100, // Convert to paise
redirectUrl: redirectUrl,
redirectMode: 'REDIRECT',
callbackUrl: callbackUrl,
paymentInstrument: { type: 'PAY_PAGE' }
};
const base64Payload = Buffer.from(JSON.stringify(payload)).toString('base64');
const checksum = crypto
.createHash('sha256')
.update(base64Payload + '/pg/v1/pay' + SALT_KEY)
.digest('hex') + `###${SALT_INDEX}`;
const response = await axios.post(`${BASE_URL}/pg/v1/pay`, {
request: base64Payload
}, {
headers: { 'X-VERIFY': checksum, 'Content-Type': 'application/json' }
});
return response.data.data.instrumentResponse.redirectInfo.url;
}
WooCommerce / WordPress Integration
For WordPress + WooCommerce sites, PhonePe provides an official plugin available on the WordPress plugin repository. Installation takes about 10 minutes:
- WordPress Admin → Plugins → Add New → Search "PhonePe Payment Gateway"
- Install and activate the plugin
- WooCommerce → Settings → Payments → PhonePe
- Enter your Merchant ID, Salt Key, and Salt Index
- Set environment to "Production" (use "UAT" for testing)
- Save and enable the payment method
React / Next.js Integration
For React/Next.js apps, you call your own backend API (Node.js) which handles the PhonePe server-side calls. The frontend simply redirects to the URL returned by your backend. Never expose your Salt Key on the client side.
Understanding PhonePe Webhooks
Webhooks allow PhonePe to notify your server instantly when a payment succeeds or fails — without relying on the user completing the redirect flow (which can fail if the user closes the browser).
Best practices:
- Always verify the X-VERIFY header in incoming webhooks using your Salt Key
- Process webhooks idempotently — the same event may be sent multiple times
- Return HTTP 200 immediately; process asynchronously if needed
- Store the raw payload before processing in case of errors
PhonePe Payment Links (No-Code Option)
If you don't have a website, PhonePe's Payment Links feature lets you accept payments without any code:
- Log in to the PhonePe Business dashboard
- Go to "Payment Links" → "Create Link"
- Enter amount, description, and expiry date
- Share the link via WhatsApp, email, or social media
This is perfect for freelancers, small businesses, and anyone collecting occasional payments without a formal checkout page.
PhonePe Settlement Cycle
Payments are settled to your registered bank account as follows:
- UPI payments: T+1 (next business day)
- Card payments: T+2 (two business days)
- Wallet payments: T+2
You can view settlement reports in real time from the PhonePe Business dashboard under "Settlements."
Handling Refunds
Refunds can be initiated:
- Via the PhonePe Business Dashboard (manual, per transaction)
- Via the Refund API (programmatic, for automated workflows)
Refund timelines: 5–7 business days for cards, 1–3 days for UPI. The refund amount is deducted from your next settlement payout.
Common Integration Issues and Fixes
Checksum Mismatch (403 Error)
The most common issue. Caused by incorrect SHA-256 calculation. Double-check: the string being hashed is base64Payload + "/pg/v1/pay" + SALT_KEY (no spaces, exact order).
Payment Page Not Loading
Usually caused by passing an incorrect amount (must be in paise, integer type) or missing a required field in the payload. Check the PhonePe developer console for error details.
Webhook Not Received
Ensure your callback URL is publicly accessible (not localhost) and returns HTTP 200. Use ngrok for local testing. PhonePe retries webhooks for up to 24 hours.
Security Best Practices
- Never expose your Salt Key in client-side code or GitHub repositories
- Always verify payment status server-side before fulfilling orders
- Use HTTPS for all payment-related pages
- Implement rate limiting on your payment initiation endpoint
- Log all payment events for audit purposes
- Set up webhook signature verification for all incoming callbacks
PhonePe Business vs Other Gateways
| Feature | PhonePe Business | Razorpay | Stripe |
|---|---|---|---|
| UPI MDR | 0% | 0% | Not available |
| Card MDR | 0.4%–2.5% | 2%+GST | 2.9%+30¢ |
| India-first | ✅ | ✅ | Limited |
| International Cards | ✅ | ✅ | ✅ |
| Physical QR | ✅ | ✅ | ❌ |
| Free Setup by WovLab | ✅ | ❌ | ✅ |
FAQ: PhonePe Business Setup
Can I use PhonePe Business without a GST number?
Yes. GST is not mandatory for PhonePe Business registration. However, if you have GST and your annual turnover exceeds ₹20 lakhs, registering your GST ensures compliance and can unlock higher MDR tiers.
Is there a monthly fee for PhonePe Business?
No monthly fees. PhonePe Business charges only transaction-based MDR. For UPI transactions, the MDR is 0% — you pay nothing.
Can I accept international payments via PhonePe?
PhonePe primarily serves domestic Indian payments. For international card payments, you can use PhonePe in combination with Stripe or PayPal for international users.
How long does PhonePe Business approval take?
Typically 2–5 business days. Complete and accurate KYC documentation speeds up the process significantly. Registering through WovLab's referral link may provide priority support.
What if I already have a PhonePe Business account?
WovLab can still help with the technical integration into your website or app, even if you registered directly. Contact us on WhatsApp to discuss.
Conclusion
PhonePe Business is the best payment gateway for Indian businesses in 2026 — zero MDR on UPI, instant QR codes for physical stores, developer-friendly APIs, and the trust of 40+ crore Indian users. Setting it up properly is the first step to reducing cart abandonment and maximizing revenue from your Indian customer base.
Whether you're a developer handling the integration yourself or a business owner who needs someone to handle the technical side, WovLab is here to help — completely free.