Back

VibeFox EveryPay for WooCommerce — Help

Requirements

WordPress: 6.0 or later.

WooCommerce: 7.0 or later, installed and active.

PHP: 8.0 or later.

EveryPay account: you need the API username, the API secret and the processing account name of your e-shop. They are in the EveryPay Merchant Portal, in the settings of your e-shop: the demo portal (mwt-demo.every-pay.com) for test mode, the live portal (portal.every-pay.eu) for live payments. Test and live environments have separate credentials. You also set the callback URL of your store in both portals (see Configuration).

Store currency: the processing account defines the charged currency, for example EUR3D1 charges EUR. The payment method is offered only for orders in that currency.

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_everypay_payment folder to /wp-content/plugins/ by FTP.

2. Click Activate.

3. Open the settings: WooCommerce > Settings > Payments > EveryPay > 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 test API username, test API secret and processing account name from the demo Merchant Portal. Keep Test Mode on.

6. Copy the callback URL shown on the settings page into the Callback notification URL of your e-shop in the Merchant Portal.

7. Turn on Enable/Disable and place a test order. When everything works, enter the live credentials, set the callback URL in the live portal too and untick Test Mode.

Configuration

All settings are on one page: WooCommerce > Settings > Payments > EveryPay. Above the fields the page shows Test mode is on: payments go to the EveryPay demo environment, no real money is charged. while test mode is on. It warns you when the gateway is enabled but the API username, API secret or processing account of the current mode is missing (the payment method is then hidden at checkout), and when the processing account charges another currency than the store currency. In the list of payment methods, EveryPay is marked as needing setup until the current mode is configured. Spaces and line breaks pasted with the credentials are removed when you save.

General

Enable/Disable: Enable EveryPay payment gateway turns the payment method on or off. Default: off.

Title: the payment method name customers see at checkout. Default: EveryPay.

Description: the text shown under the payment method at checkout. Default: Pay securely by card or bank link on the EveryPay payment page.

EveryPay account

The API username, API secret and processing account name are shown in the EveryPay Merchant Portal (e-shop settings): the demo portal for test mode, the live portal for live payments.

Test Mode: Enable test mode sends payments to the EveryPay demo environment with the test credentials. No real money is charged. Default: on.

Test API Username: the API username of the demo environment.

Test API Secret: the API secret of the demo environment.

Live API Username: the API username of the live environment.

Live API Secret: the API secret of the live environment.

Processing Account Name: the EveryPay processing account, for example EUR3D1. The account defines the charged currency: the gateway is offered only for orders in that currency. The same account name is used in both modes.

Payment notifications (callback)

The callback tells your store that a payment has been finalised, so orders are updated even if the customer closes the browser. Copy the URL shown in this section into the Callback notification URL of your e-shop in the EveryPay Merchant Portal, both demo and live. The URL looks like https://your-site/wc-api/wc_evp_payment/. The payment request does not carry a callback URL, so it must be set in the portal.

The callback carries only payment references. When it arrives, the plugin asks the EveryPay API for the payment status in the environment where the payment was created, and checks that the answer belongs to this order. Callbacks for a payment the order did not create are rejected. Without the callback, an order is confirmed when the customer comes back to the store after paying, or when you run Check EveryPay payment status on the order.

Advanced

Debug log: Log payment events writes payment events to WooCommerce > Status > Logs, source wcp_everypay_payment. Errors are always logged. API secrets and card data are never logged. Default: off.

Uninstall: Delete the gateway settings and logs when the plugin is deleted. Default: off.

Checkout

The customer chooses the payment method (by default EveryPay) and places the order. In test mode the checkout shows TEST MODE: EveryPay demo environment, no real money is charged. The plugin creates a one-off EveryPay payment for the order total with the customer's e-mail and billing details and sends the customer to the EveryPay payment page. The page language follows the site language (English, Estonian, Russian, Latvian, Lithuanian, Finnish or German; otherwise English). There the customer pays with one of the methods enabled for your EveryPay account.

After paying, the customer returns to your store. The order is marked paid only after EveryPay confirms it: the plugin asks the EveryPay API for the status of the payment on the return and on the callback. A paid order, an order under review, or a payment that is still processing leads to the order received page.

If the payment failed, the customer goes back to the checkout (or to the Pay for order page) with Your EveryPay payment was not successful. Please try again or choose another payment method. If the customer left the payment page without paying, the message is The EveryPay payment was not completed. You can try again or choose another payment method. Each new attempt creates a new EveryPay payment; older attempts are remembered, so a payment made with an older link is still recognised.

If EveryPay cannot start the payment, the customer sees a short message, for example EveryPay is temporarily unavailable. Please try again in a moment or choose another payment method. The details are in the log.

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 Estonian.

The plugin takes one-time payments only. It has no refunds or capture from WooCommerce, no saved cards or one-click payments, no subscriptions or recurring payments, no embedded card fields and no multi-currency.

Orders

Order statuses

Pending payment: the customer was sent to EveryPay and has not paid yet, or the payment is still being processed.

Processing: EveryPay reported the payment as settled or authorised (orders with only virtual downloadable products become Completed, the WooCommerce default). The order note shows the amount, the currency and the payment reference. The transaction ID of the order is the EveryPay payment reference. For an authorised payment the note says the funds are reserved: if your account does not capture automatically, capture the payment in the EveryPay Merchant Portal. When it is settled later, one note says so.

On hold after payment: the payment needs manual review. The paid amount or currency differs from the order, the order had been cancelled before the payment arrived, or the order uses another payment method now. The note explains it and says the order was not marked paid. Check the payment in the Merchant Portal and complete or refund it manually. Later callbacks for this payment do not complete the order automatically.

Failed: the latest payment attempt of an unpaid order failed, was abandoned or voided. The note shows the reason from EveryPay. The customer can try again.

If a second payment is completed for an order that is already paid, the order is not changed. A note asks you to refund the duplicate payment in the EveryPay Merchant Portal.

Check EveryPay payment status

On the order screen choose the order action Check EveryPay payment status. The plugin checks every EveryPay payment of the order with the API, applies the result as above and adds a note with the state of each payment. Use it for orders whose callback never arrived.

Refunds

Refunds from WooCommerce are not supported. Refund in the EveryPay Merchant Portal, then set the order status in WooCommerce. When EveryPay reports a payment as refunded or charged back, the plugin only adds an order note; the order status is not changed.

License key

The plugin works with a VibeFox license key from vibefox.net. The license block is at the top of WooCommerce > Settings > Payments > EveryPay. 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, EveryPay 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 the status check works.

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

EveryPay does not appear at checkout: check that the license is active, Enable/Disable is on, the API username, API secret and Processing Account Name of the current mode are set, and the store currency (on the Pay for order page, the order currency) is the currency of the processing account. The settings page shows a warning in these cases.

The payment went through, but the order stays Pending payment: the callback is not working. Check that the callback URL from the settings is set as Callback notification URL in the Merchant Portal of the mode you use (demo or live). You can also open the order and run Check EveryPay payment status. Turn on Debug log and look at WooCommerce > Status > Logs, source wcp_everypay_payment.

Callback answers Unknown payment reference or Payment does not belong to this order: the payment was not created by this order, or the EveryPay answer does not match it. The order is not changed.

Callback answers Not configured: the credentials of the environment where the payment was created are missing, for example a test payment after the test credentials were removed. Enter them again; EveryPay retries the callback.

Callback answers Payment status unavailable or Busy, please retry: the EveryPay API could not be reached, or the order was being updated by another request at the same moment. EveryPay retries the callback.

The customer sees EveryPay is temporarily unavailable: EveryPay refused the credentials or could not be reached. Check the API username and API secret of the current mode.

The customer sees This payment method does not support the order currency: the order currency differs from the currency of the processing account.

Order is On hold after payment: read the order note. The amount or currency differed, or the order had been cancelled before the payment arrived. Check the payment in the Merchant Portal and complete or refund it manually.

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 plugin documentation lists the filters wc_evp_icon, wc_evp_locale, wc_evp_currency_decimals and wc_evp_oneoff_request.

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 the gateway settings and logs when the plugin is deleted) was on. Otherwise they stay for a later re-install. EveryPay payment references stored on orders are always kept. Existing orders keep their payment notes and transaction IDs.

EveryPay is a trademark of its respective owner. This plugin is not affiliated with or endorsed by EveryPay.