VibeFox eWAY for WooCommerce — Help
Requirements
WordPress: 6.0 or later.
WooCommerce: 8.0 or later, installed and active.
PHP: 8.0 or later.
Store currency: AUD, NZD, SGD, HKD or MYR. For other currencies the payment method is hidden at checkout. The order is charged in its own currency.
eWAY account: you need an eWAY merchant account with Rapid API access and its Rapid API key and password, from MyeWAY under Settings, API Key. For testing you need an eWAY sandbox account with its own key and password. Sandbox and live keys are different. Nothing needs to be set up in eWAY: the return URL is sent with every payment.
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_eway_payment_gateway folder to /wp-content/plugins/ by FTP.
2. Click Activate.
3. Open the settings: WooCommerce > Settings > Payments > eWAY > 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 your sandbox API key and password, keep Sandbox Mode on, turn on Enable/Disable and place a test order with the eWAY test card 4444333322221111.
6. Enter your live API key and password, untick Sandbox Mode and save.
Configuration
All settings are on one page: WooCommerce > Settings > Payments > eWAY. Above the fields a badge shows the mode: SANDBOX (payments go to the eWAY sandbox, no real money is charged) or LIVE (real payments are taken with the live API key). The page warns you when the API key and password of the current mode are missing (the gateway is then not shown at checkout) and when the store currency is not supported. In the list of payment methods, eWAY is marked as needing setup until the current mode has credentials, and shows a test mode badge in sandbox mode.
General
Enable/Disable: Enable eWAY Payment Gateway turns the payment method on or off. Default: off.
Title: the payment method name customers see at checkout. Default: Credit Card (eWAY).
Description: the text shown under the payment method at checkout. Default: Pay securely using your credit card via eWAY. You will be redirected to the eWAY secure payment page.
API credentials
The Rapid API key and password are in MyeWAY under Settings, API Key. eWAY has guides for live and sandbox keys, linked in this section. Sandbox and live use different keys.
Sandbox Mode: Enable sandbox (test) mode sends payments to the eWAY sandbox with the sandbox key. No real money is charged. Default: on. Untick it to take live payments with the live key.
Live API Key: the Rapid API key of your live eWAY account.
Live API Password: the Rapid API password of your live eWAY account.
Sandbox API Key: the Rapid API key of your eWAY sandbox (partner/developer) account.
Sandbox API Password: the Rapid API password of your eWAY sandbox account.
Orders
Order Status on Success: the order status once eWAY confirms the payment.
Advanced
Debug log: Enable logging writes API calls and payment results to WooCommerce > Status > Logs, source wcp_eway_payment_gateway. Card data and keys are not logged. Errors are always logged. Default: off.
Uninstall: Delete all plugin data on uninstall. When checked, the gateway settings and its logs are removed when the plugin is deleted. Payment references saved on orders are kept. Default: off.
Checkout
The customer chooses the payment method (by default Credit Card (eWAY)) and places the order. The plugin asks eWAY for a payment page for the order total in the order currency, with the order ID as invoice reference and the customer's billing details, and sends the customer to the eWAY Responsive Shared Page. There the customer pays by card. The payment is captured immediately.
After paying, the customer returns to your store. The plugin does not trust the browser: it asks eWAY server-to-server for the result of the payment page this order created. The order is marked paid only after eWAY confirms it and the approved amount and currency match the order. Then the customer lands on the order received page. If eWAY could not be asked at that moment, the order stays Pending payment and the page shows We have not received the confirmation of your payment from eWAY yet. If you completed the payment, this order will be updated shortly — please do not pay again. The payment is checked again when the order received page is opened and before WooCommerce cancels the unpaid order automatically.
If the payment is declined, the customer goes back to the checkout (or to the Pay for order page) with the reason, for example Your payment was declined: Insufficient funds. Please try again or use a different payment method. If the customer clicks Cancel on the eWAY page, the plugin first checks with eWAY that nothing was paid. An order placed at checkout is then cancelled, and an order paid from the Pay for order page stays unpaid. The customer sees You cancelled the payment on the eWAY page. Your order has not been paid — you can try again. If the payment was not completed, the message is The payment was not completed. Please try again.
A customer can pay an unpaid order again. Every payment page of the order is tracked, so paying an older page is still recognised. If eWAY cannot create the payment page, the customer sees a short message, for example Payment error: Unable to connect to eWAY. Please try again.
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).
eWAY does not send server-to-server notifications for the Shared Page: the result is taken when the customer returns and on the checks described above. The plugin has no card fields on your site, no saved cards or subscriptions, no authorise-only and capture, and does not evaluate Beagle fraud scores (transactions blocked by eWAY fraud rules are declined by eWAY itself).
Orders and refunds
Order statuses
Pending payment: the customer was sent to eWAY and has not paid yet, or the result could not be fetched from eWAY yet (the order note says so).
Processing or Completed: the payment was approved. The status follows Order Status on Success. The order note shows the eWAY transaction ID, the auth code and the response. The transaction ID of the order is the eWAY transaction ID.
On hold after payment: eWAY approved a different amount or currency than the order (for example Approved for partial amount, or the order was edited after the customer opened the payment page), or the payment was approved after the order had been cancelled. The note explains it. On the order received page the customer sees Your payment was received and is being reviewed by the store. We will contact you if anything is needed. Complete the order or refund the payment.
Failed: eWAY declined the payment. The note shows the eWAY code and its meaning.
Cancelled: the customer cancelled on the eWAY page after placing the order at checkout, or the order was cancelled by you or by the WooCommerce stock hold timeout after eWAY confirmed that it was not paid.
If a second payment is approved for an order that is already paid, the order is not changed. A note asks you to refund the duplicate in MyeWAY.
Refunds
Open the order, click Refund, enter the amount and click Refund via Credit Card (eWAY) (the button uses the payment method title). Full and partial refunds are supported. The refund is sent in the environment the payment was made in (sandbox or live), so that environment's API key and password must be set. If eWAY declines the refund, WooCommerce shows the eWAY code and no refund is recorded. A successful refund is added to the order notes with the eWAY refund transaction ID.
Refunds made in MyeWAY are not synced back to WooCommerce. If needed, create a manual refund in WooCommerce without the eWAY refund button.
License key
The plugin works with a VibeFox license key from vibefox.net. The license block is at the top of WooCommerce > Settings > Payments > eWAY. 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, eWAY 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: payments already started are still confirmed, and refunds work.
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
eWAY does not appear at checkout: check that the license is active, Enable/Disable is on, the API key and password of the current mode are set (sandbox fields in sandbox mode, live fields in live mode) and the store currency is AUD, NZD, SGD, HKD or MYR. On the Pay for order page the order currency is checked.
The payment went through, but the order stays Pending payment: the customer did not return from eWAY, or eWAY could not be asked at that moment. eWAY sends no notifications for the Shared Page. The payment is checked again when the order received page is opened and before WooCommerce cancels the unpaid order. Check the transaction in MyeWAY and look at WooCommerce > Status > Logs, source wcp_eway_payment_gateway.
The customer sees This payment method is temporarily unavailable: the API key and password of the current mode are missing, or eWAY refused them. Check the credentials of the current mode.
The customer sees eWAY could not start the payment: eWAY returned error codes, shown in the message. Often the billing details are invalid.
The customer sees We could not match this payment to an order: the return link does not belong to an order of this store. If the customer was charged, find the payment in MyeWAY.
The customer sees We could not confirm your payment with eWAY: the result of the payment could not be checked. The order is updated when the result is fetched; the customer should not pay again.
Order is On hold after payment: read the order note. The approved amount or currency differed from the order, or the payment came after the order was cancelled. Complete the order or refund the payment.
Refund fails with a message about the sandbox or live mode: the order was paid in that environment, and its API key and password are not set. Enter them and try again.
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 eway_p_supported_currencies, if your eWAY account is enabled for more currencies.
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 and the logs are removed only if Uninstall (Delete all plugin data on uninstall) was on. Otherwise they stay for a later re-install. Payment references saved on orders are always kept. Existing orders keep their payment notes and transaction IDs.
eWAY is a trademark of its respective owner. This plugin is not affiliated with or endorsed by eWAY.
