Accept UPI payments in your WHMCS billing system with PaymentSetu - India's leading payment verification platform.
Unlike traditional payment platforms that charge per transaction, PaymentSetu offers a simple flat monthly subscription. No hidden fees. No percentage cuts. Just unlimited verifications for one fixed price!
- ✅ UPI Payments - Accept payments via UPI QR codes
- ✅ Easy Integration - Simple setup in minutes
- ✅ Automatic Webhook - Real-time payment notifications
- ✅ INR Currency Support - Built for Indian businesses
- ✅ Secure - Industry-standard security practices
Before you begin, make sure you have:
- A WHMCS installation (version 7.0 or higher)
- Admin access to your WHMCS backend
Follow these simple steps to get started — from creating your PaymentSetu account to accepting your first payment.
- Go to https://paymentsetu.com
- Click on Sign Up and create your account
- Complete the registration and log in to your dashboard
📦 Download paymentsetu-whmcs-module.zip (v1.1)
- Upload the downloaded
paymentsetu-whmcs-module.zipto your server - Extract the zip directly into your WHMCS root directory
- The folder structure will align automatically — you're done with this step!
If you prefer to upload files manually:
- Extract the zip on your computer
- Open your WHMCS installation folder on your server
- Upload
paymentsetu.phpto themodules/gateways/folder - Upload
paymentsetu.phpfrom thecallbackfolder tomodules/gateways/callback/
File Structure after extraction:
whmcs/
└── modules/
└── gateways/
├── paymentsetu.php
└── callback/
└── paymentsetu.php
- Log in to your WHMCS admin panel
- Go to Setup → Payments → Payment Gateways (WHMCS menu name)
- Click on the All Payment Gateways tab (WHMCS menu name)
- Find PaymentSetu in the list and click on it
- Check the box to Activate the module
- You will now see the PaymentSetu settings page
PaymentSetu configuration page in WHMCS admin panel
On the PaymentSetu settings page in WHMCS, you will see a Webhook URL displayed at the top.
- The webhook URL will look like this:
https://yourdomain.com/modules/gateways/callback/paymentsetu.php - Copy this URL — you will need it in the next step
💡 Tip: You can also access this page later by going to
/admin/configgateways.phpin your WHMCS installation.
Now you need to register the webhook URL and generate your API key.
- Go to https://paymentsetu.com/developer/api-credentials
- Log in to your PaymentSetu account
- You will see a form to Create New API Key
- NAME: Enter a name for this API key (e.g., "WHMCS Production" or "My WHMCS Store")
- WEBHOOK URL (OPTIONAL): Paste the webhook URL you copied from WHMCS in Step 5
- Click the Create API Key button
- Your API key will be generated automatically
- Copy the API key — you will need it in the next step
PaymentSetu dashboard showing API key and webhook management
⚠️ Important: Keep your API key secure and never share it publicly.
Now return to your WHMCS admin panel:
- Go back to Setup → Payments → Payment Gateways (WHMCS menu name)
- Select PaymentSetu from the list
- In the API Key field, paste the API key you copied from PaymentSetu
- (Optional) Enable Block Non-INR Transactions if you only want to accept INR currency
- Click Save Changes
The PaymentSetu payment verification module is now active on your WHMCS system. Customers will see a "Pay Now" button on their invoices that redirects them to PaymentSetu's secure payment page.
- Customer views an invoice in WHMCS
- Customer clicks the Pay Now button
- Customer is redirected to PaymentSetu's payment page
- Customer scans the UPI QR code and completes payment
- PaymentSetu verifies the payment and sends a webhook notification to WHMCS
- Invoice is automatically marked as paid in WHMCS
Transaction table in PaymentSetu dashboard showing payment history
| Option | Description |
|---|---|
| API Key | Your PaymentSetu API key from the dashboard |
| Webhook URL | Auto-generated URL for receiving payment notifications |
| Block Non-INR Transactions | Enable this to only accept payments in Indian Rupees (INR) |
- Check that the webhook URL is correctly configured in your PaymentSetu dashboard
- Verify that the API key in WHMCS matches the one in PaymentSetu
- Check WHMCS logs: Utilities → Logs → Module Log
- This means you are trying to pay an invoice in a currency other than INR
- Go to Setup → Payments → Payment Gateways (WHMCS menu name) → PaymentSetu
- Uncheck Block Non-INR Transactions to allow other currencies (not recommended)
- Or change your invoice currency to INR
- Make sure you uploaded the files to the correct folders
- Check file permissions (644 for files, 755 for folders)
- Clear WHMCS cache
- PaymentSetu Support: Visit https://paymentsetu.com/support
- Documentation: https://paymentsetu.com/developer/api-credentials
This module is provided as-is for use with PaymentSetu payment verification services.
Made with ❤️ for WHMCS users