- 1. Build Integration: Install and configure the Drupal Commerce plugin.
- 2. Test Integration: Test the integration by making a test payment.
- 3. Go-Live Checklist: Check the go-live checklist.
1. Build Integration
Follow the steps given below:1.1 Download and Upload Plugin
To upload the plugin:-
Download the
drupal_commerce_razorpay.zip. - Log in to your Drupal Commerce account and navigate to Extend.
- Click + Add new module.
- Add the module from URL or click Choose file and select the .zip file downloaded previously.
- Click Continue.
Handy TipsAlternatively, you can skip this step and simply run
composer require 'drupal/drupal_commerce_razorpay:^1.0' in your drupal directory to download the plugin. You can view the downloaded file in the contrib folder.1.2 Install Plugin
To install the plugin:- On your Drupal Commerce Dashboard, navigate to Extend.
- Search for Razorpay in the Filter section.
- Select Commerce Razorpay and click Install.
1.3 Configure Plugin
To configure the plugin:- On your Drupal Commerce Dashboard, navigate to Commerce.
- Click Configuration.
- In the Payment section, select Payment gateways.
- Click + Add payment gateway.
- In the Name section, enter Razorpay and select Razorpay as the Plugin.
- Select Test Mode to test the integration and enter the test Key ID and Secret generated from the Razorpay Dashboard.
Handy TipsTo go live with the integration and start accepting real payments:
- Select Live Mode.
-
Generate Live Mode API Keys and replace the test keys with the live keys in the integration. Click Save.
- Select the Payment Action based on your requirement. Set the Payment Action to Authorize and Capture to auto-capture payments. If you want to capture payments manually, set the Payment Method to Authorize.
- Select Enabled in the Status section.
- Click Save.
Handy TipsIf you want to edit any fields, navigate to Commerce → Configuration. Select Payment Gateway and click Edit.You have successfully integrated the Razorpay Payment Gateway with your Drupal Commerce website.
Handy Tips
- Webhooks are auto-configured when you enter and submit the API key ID during the installation. You can verify if webhooks are enabled on your Razorpay Dashboard.
- The
payment.authorized,payment.failedandrefund.createdevents are auto-configured. You do not have to configure it on the Razorpay Dashboard.
2. Test Integration
After the integration is complete, a payment button will appear on your web page/app. You need to click the button and make a test transaction to ensure the integration works as expected. You can start accepting actual payments from your customers once the test is successful.Supported Payment Methods
After the integration is complete, a Pay button appears on your webpage/app. Click the button and make a test transaction to ensure the integration is working as expected. You can start accepting actual payments from your customers once the test transaction is successful.UPI
You can enter one of the following UPI IDs:success@razorpay: To make the payment successful.failure@razorpay: To fail the payment.
Handy TipsYou can use Test Mode to test UPI payments, and Live Mode for UPI Intent and QR payments.
Cards
You can use the following test cards to test transactions for your integration in Test Mode.Domestic Cards
Use the following test cards for Indian payments:Network | Card Number | CVV & Expiry Date
Visa | 4100 2800 0000 1007 | Use a random CVV and any future date ^^^^^
Mastercard | 5500 6700 0000 1002 |
RuPay | 6527 6589 0000 1005 |
Diners | 3608 280009 1007 |
Amex | 3402 560004 01007 |Error Scenarios
Use these test cards to simulate payment errors. See the complete list of error test cards with detailed scenarios. Check the following lists:International Cards
Use the following test cards to test international payments. Use any valid expiration date in the future in the MM/YY format and any random CVV to create a successful payment.Card Network | Card Number | CVV & Expiry Date
Mastercard | 5555 5555 5555 4444 5105 1051 0510 5100 5104 0600 0000 0008 | Use a random CVV and any future date ^^
Visa | 4012 8888 8888 1881 | Check the list of supported card networks.Wallet
You can select any of the listed wallets. After choosing a wallet, Razorpay will redirect to a mock page where you can make the paymentsuccess or a failure. Since this is Test Mode, we will not redirect you to the wallet login portals.
Check the list of supported wallets.
Verify Payment Status
You can track the payment status from the Dashboard or by polling APIs.- Log in to the Razorpay Dashboard and navigate to Transactions → Payments.
- Check if a
payment_IDhas been generated and note the status. In case of a successful payment, the status is marked ascaptured.
3. Go-live Checklist
Follow these steps before taking the integration live:3.1 Accept Live Payments
You can perform an end-to-end simulation of funds flow in the Test Mode. Once confident that the integration is working as expected, switch to the Live Mode and start accepting payments from customers.3.2 Payment Capture
After a payment isauthorized, you must capture it to settle the amount to your bank account as per the settlement schedule.
Follow the steps given below to set a payment action:
- On the Drupal Commerce Dashboard, navigate to Commerce.
- Click Configuration.
- In the Payment section, select Payment gateways.
- Click Edit.
-
In the Payment Action section, you can choose to:
- Authorize and Capture: This setting captures all authorized payments automatically. This eliminates the time and effort spent manually capturing payments.
- Authorize: Each authorized payment can also be captured individually.
- Once a payment is completed, navigate to Commerce → Orders.
- Identify the order you want to capture the payment and click View.
- Navigate to Payments.
- In the Operations section, click Capture.
Refunds
To initiate refunds using the Drupal Commerce Dashboard:1
Step 1
Log in to the Drupal Commerce Dashboard.
2
Step 2
After a payment is completed, navigate to Commerce → Orders.
3
Step 3
Identify the order you want to initiate a refund and click View.
4
Step 4
Navigate to Payments.
5
Step 5
In the Operations section, click Refund.
6
Step 6
You can either issue a full refund or a partial refund.
- For a full refund, enter the entire payment amount.
- For a partial refund, enter a value lesser than the payment amount.
7
Step 7
Click Refund.