VibeFox CCAvenue for WooCommerce — Help
Requirements
WordPress: 5.8 or later.
WooCommerce: 6.0 or later, installed and active. The plugin refuses to activate without it.
PHP: 8.0 or later, with the OpenSSL extension (used to encrypt the request and decrypt the response).
CCAvenue account: you need a CCAvenue merchant account with a Merchant ID, an Access Code and a Working Key. The Access Code and Working Key are issued for a website domain, so generate them for the domain of this store. CCAvenue uses the same credentials for the test environment; test access must be enabled for your account by CCAvenue. The plugin uses the CCAvenue India endpoints.
Currency: the order currency is sent to CCAvenue as is. CCAvenue accounts accept INR by default; other currencies require multi-currency processing on your CCAvenue account.
VibeFox license key: bought on vibefox.net. One key works on one domain.
Installation
1. In WordPress go to Plugins > Add New > Upload Plugin, choose the plugin ZIP file and click Install Now. You can also upload the wcp_ccavenue_payment folder to /wp-content/plugins/ by FTP.
2. Click Activate.
3. Open the settings: WooCommerce > Settings > Payments > CCAvenue > Manage, or click Settings under the plugin name on the Plugins page.
4. Enter your VibeFox license key in the license block at the top of the page and click Activate.
5. Enter the Merchant ID, Access Code and Working Key from your CCAvenue dashboard and turn on Enable/Disable.
6. Keep Test mode on while testing, then switch it off to accept real payments.
Configuration
All settings are on one page: WooCommerce > Settings > Payments > CCAvenue. Above the fields the page warns you when CCAvenue is enabled but the Merchant ID, Access Code or Working Key is missing (the payment method is then hidden at checkout until all three are set), shows CCAvenue test mode is on: customers are sent to test.ccavenue.com and no real money is taken. while test mode is on, and reminds you about multi-currency processing when the store currency is not INR.
General
Enable/Disable: Enable CCAvenue Payment Gateway turns the payment method on or off. Default: off.
Title: the payment method name customers see at checkout. Default: CCAvenue.
Description: the text shown under the payment method at checkout. Default: Pay securely via Credit/Debit card, Net Banking, UPI or Wallet through CCAvenue.
API credentials
Log in to your CCAvenue merchant dashboard (M.A.R.S.) and open Settings > API Keys. Generate the Access Code and Working Key for the domain of this store. Spaces in the credentials are removed on save.
Merchant ID: your numeric CCAvenue Merchant ID. If it contains anything other than digits, an error is shown on save and the previously saved value is kept.
Access Code: the Access Code for this website.
Working Key: the Working Key (encryption key) for this website. It encrypts the payment request and is the only way to verify the CCAvenue response, so keep it secret.
Test mode: Send customers to the CCAvenue test environment (test.ccavenue.com). CCAvenue uses the same Merchant ID, Access Code and Working Key for test and live; test access must be enabled for your account by CCAvenue. In test mode the checkout shows TEST MODE: no real transactions will be processed. Default: on. Disable it for real payments.
Return URL
CCAvenue returns the customer to the address shown in this section. It looks like https://your-site/wc-api/ccavenue_p_callback/. The plugin sends this URL with every payment, so there is nothing to configure in CCAvenue. It must belong to the domain registered with CCAvenue.
Advanced
Debug log: Log CCAvenue events writes order IDs, CCAvenue references and statuses to WooCommerce > Status > Logs, source wcp_ccavenue_payment. Keys, card data and addresses are not logged. Default: off.
Delete data on uninstall: Remove the plugin settings, logs and CCAvenue order references when the plugin is deleted. Deactivating the plugin never deletes anything. Default: off.
Checkout
The customer chooses the payment method (by default CCAvenue) and places the order. The Pay for order page shows Thank you for your order. You are being redirected to CCAvenue to complete the payment. and sends the customer to the CCAvenue payment page. Without JavaScript the customer clicks Pay via CCAvenue or Cancel order. Each attempt gets a new CCAvenue order reference. The order total and currency, the billing and delivery details and the order key are sent in the encrypted request. Names and addresses are cleaned to the characters and lengths CCAvenue accepts; country and state are sent as names and the phone as digits.
After the payment, CCAvenue returns the customer with an encrypted response. The order is marked paid only after CCAvenue confirms it: the response must decrypt with your Working Key, belong to this order and carry the same amount and currency as the order. Then the customer lands on the order received page.
If the payment fails, the customer returns to the checkout with Payment was not completed. Please try again or choose a different payment method. If the customer cancels on the CCAvenue page, the message is Payment was cancelled. You may try again. If the response cannot be verified, the message is We could not confirm the payment result. If your account was charged, please contact us before paying again. The customer can pay an unpaid order again, for example from the Pay for order page. If the payment was started from the Pay for order page and the cart is empty, WooCommerce shows the message on the cart page; a failed order can be paid again from My account > Orders.
The payment method works on the classic checkout, on the Checkout block and on the Pay for order page. It is compatible with WooCommerce High-Performance Order Storage (HPOS). The customer-facing texts are translated into Hindi.
The result is taken only from the customer's return from CCAvenue: there are no server-to-server notifications and no status requests. If the customer closes the browser before returning, the order stays Pending payment. The plugin has no refunds from WooCommerce, no saved cards, subscriptions or recurring payments, no iframe or on-site card form, and no support for CCAvenue UAE or other regional platforms.
Orders
Order statuses
Pending payment: the customer was sent to CCAvenue and has not returned yet. Check the payment in the CCAvenue dashboard if the customer does not come back.
Processing: the payment was confirmed (orders with only virtual downloadable products become Completed, the WooCommerce default). The order note shows the bank reference, the CCAvenue tracking ID and the payment mode. The transaction ID of the order is the CCAvenue tracking ID.
On hold, amount/currency mismatch: CCAvenue confirmed a payment whose amount or currency differs from the order, for example the order was edited after the customer started paying or a CCAvenue discount offer was applied. The note shows the received and expected amount. Check the payment in the CCAvenue dashboard, then complete or refund the order.
On hold, awaiting bank confirmation: CCAvenue reported the payment as Awaited. The order is never marked failed while the money may still be captured. Verify it in the CCAvenue dashboard before fulfilling and change the status manually. A later response with the same tracking ID is still applied.
On hold, payment for a cancelled order: the customer paid after the order had been cancelled. Check stock and fulfil or refund it.
Cancelled: the customer aborted the payment on the CCAvenue page.
Failed: the payment failed, or CCAvenue returned Invalid, Timeout or another unsuccessful status. The note shows the CCAvenue message. A late failure never changes a paid order.
If another successful payment arrives for an order that is already paid (for example from two browser tabs), the order is not changed again. A note asks you to refund the duplicate in the CCAvenue dashboard.
Refunds: refunds from WooCommerce are not supported. Refund the payment in the CCAvenue dashboard and record it in WooCommerce manually.
License key
The plugin works with a VibeFox license key from vibefox.net. The license block is at the top of WooCommerce > Settings > Payments > CCAvenue. Paste the key into License key and click Activate. The block shows the status, for example the date the license is active until and your domain. Use Check now to check the status again, Change key to enter another key and Remove key to remove it from this site. The link Manage licenses and domains in your account opens your vibefox.net account.
One key works on one domain. Removing the key from a site does not free its domain slot. Free the slot in your vibefox.net account.
Without an active key, CCAvenue is not shown to customers at checkout. If a payment is started anyway, the customer sees This payment method is not available. Please choose another one. Logged-in store managers still see the payment method, marked (unlicensed — visible to admins only), so you can set up and test the plugin before you buy a key. A reminder appears on the Plugins page and on WooCommerce pages. Existing orders are not affected: customers returning from payments already started are still processed.
When a license expires, the plugin keeps working, but updates and support need a renewal. The status is checked again automatically in the background.
Troubleshooting
CCAvenue does not appear at checkout: check that the license is active, Enable/Disable is on and all three credentials are set: Merchant ID, Access Code and Working Key. The settings page shows a warning when one is missing.
The payment went through, but the order stays Pending payment: the customer did not return from CCAvenue to your store, for example because the browser was closed. The plugin has no server-to-server notifications. Check the payment in the CCAvenue dashboard and update the order manually.
Every payment ends with We could not confirm the payment result: the response cannot be decrypted. The Working Key is wrong, belongs to another domain or was copied with extra characters. Generate the keys for the domain of this store and paste them again. Turn on Debug log and look at WooCommerce > Status > Logs, source wcp_ccavenue_payment.
CCAvenue shows an error before the payment page: check that the Access Code and Working Key were generated for this domain, that the return URL belongs to the domain registered with CCAvenue and, in test mode, that CCAvenue enabled test access for your account. For a currency other than INR, multi-currency processing must be enabled on your CCAvenue account.
The customer sees This payment method is temporarily unavailable: one of the credentials is missing.
The customer sees Payment gateway error: encryption failed: the request could not be encrypted. Check that the PHP OpenSSL extension is installed.
Order is On hold after payment: read the order note. The paid amount or currency differed from the order, the payment is awaiting bank confirmation, or the order had been cancelled. Verify the payment in the CCAvenue dashboard, then fulfil the order or refund the payment.
The license block shows an error: follow the message in the block. For example, if the key is already used on another domain, free a slot in your vibefox.net account and click Check now. If the site address changed, click Check now to activate the key for the new domain. If the license server cannot be reached, the plugin keeps working on the last known status.
For developers, the readme lists the filter ccavenue_p_request_params (change the data sent to CCAvenue, for example merchant_param2 to merchant_param5 or promo_code; do not change amount, currency, order_id or merchant_param1) and the filter ccavenue_p_icon for the checkout icon.
Uninstall
Deactivating the plugin keeps all data. To remove it, deactivate and delete it on the Plugins page. The license key and license status of this plugin are always removed. The gateway settings, the logs and the CCAvenue references stored on orders are removed only if Delete data on uninstall was on. Otherwise they stay for a later re-install. Existing orders keep their payment notes and transaction IDs.
CCAvenue is a trademark of its respective owner. This plugin is not affiliated with or endorsed by CCAvenue.
