Back

VibeFox CorvusPay for PrestaShop — Help

Requirements

PrestaShop: 8.0 to 9.x.

PHP: 8.0 or later. The module refuses to install on older PHP versions.

Currency: AUD, BAM, BHD, CAD, CHF, CZK, DKK, EUR, GBP, HRK, HUF, ISK, MKD, NOK, PLN, RON, RSD, RUB, SEK or USD. In any other cart currency the payment method is hidden at checkout. Amounts are sent with 2 decimals; a total with more decimals (for example in a shop with 3-decimal BHD prices) is refused instead of being rounded.

CorvusPay account: you need a CorvusPay merchant account. CorvusPay issues a Store ID and a Secret Key for each store, separately for the test and the production store; they are shown in the CorvusPay Merchant Center. The Success URL and Cancel URL of the module must be entered there (see Configuration).

VibeFox license key: bought on vibefox.net. One key works on one domain.

Installation

1. In the back office go to Modules > Module Manager and click Upload a module. Choose the module ZIP file.

2. When the upload finishes, click Configure, or find VibeFox CorvusPay Gateway in the module list later and click Configure.

3. Paste your VibeFox license key into License key in the license block at the top of the Configure page and click Activate (see License key).

4. Enter the Store ID and Secret Key of your CorvusPay test store (and of the production store for live payments). Copy the Success URL and Cancel URL shown on the Configure page into the CorvusPay Merchant Center, for the test and the production store.

5. Turn on Enable/Disable and click Save. Place a test order, then turn off Test Mode to go live.

On install the module creates the order status CorvusPay payment on hold. PrestaShop links a new payment module to the currencies, customer groups and the countries active at that moment. You can change this in Payment > Preferences; a country you enable later must be ticked there for the module.

Configuration

All settings are on the module page: Modules > Module Manager > VibeFox CorvusPay Gateway > Configure. Each section has its own Save button, which saves the whole page. Above the fields the page shows Test mode is on. Payments go to the CorvusPay test environment — no real money is taken. while test mode is on, warns you when the gateway is enabled but the Store ID or Secret Key of the current mode is empty (it is then hidden at checkout until they are filled in) and when the default currency of your shop is not supported by CorvusPay.

CorvusPay

Enable/Disable: Enable CorvusPay Gateway turns the payment method on or off. Default: off.

Title: the payment method name customers see at checkout. It is also the payment method name stored in the order. Default: Credit/Debit Card (CorvusPay).

Description: the text shown under the payment method at checkout. Default: Pay securely with your credit or debit card via CorvusPay. In test mode (Test mode — no real payment is taken.) is added to it.

Store credentials

The Store ID and Secret Key are issued by CorvusPay for each store (test and production separately) and are shown in the CorvusPay Merchant Center.

Test Mode: uses the CorvusPay test environment (wallet.test.corvuspay.com) and the test Store ID and Secret Key. Default: on. Turn it off to take real payments on wallet.corvuspay.com.

Test Store ID: the numeric Store ID of your CorvusPay test store.

Test Secret Key: the Secret Key of your CorvusPay test store, used for the HMAC-SHA256 signatures.

Live Store ID: the numeric Store ID of your CorvusPay production store.

Live Secret Key: the Secret Key of your CorvusPay production store, used for the HMAC-SHA256 signatures.

Clear saved secrets: tick Test Secret Key or Live Secret Key and click Save to remove it.

A Store ID must contain digits only. If you enter anything else, the page shows … must contain digits only — the previous value was kept. and the other fields are still saved. Saved Secret Keys are never shown again: the field stays empty and shows Saved — leave empty to keep it. Type a new value only to change it. A payment is always verified with the Secret Key of the store it was started in, so keep the test key filled in while test payments may still return.

Success and Cancel URLs

Copy the two addresses shown in this section into the CorvusPay Merchant Center, for the test and the production store. CorvusPay returns the customer to them after the payment. Copy them exactly as the page shows them; with friendly URLs they look like the examples below, possibly with a language code such as /en/.

Success URL: looks like https://your-shop/module/wcp_corvuspay_gateway/success. CorvusPay signs this request; the order is created only after the signature is verified.
Cancel URL: looks like https://your-shop/module/wcp_corvuspay_gateway/cancel. CorvusPay does not sign it, so it can only mark an unpaid payment attempt with a CorvusPay order number issued by this shop as cancelled.

Payment

Transaction Type: how the card is charged.

Sale (capture immediately): the card is charged at once (default).
Authorize only (capture in Merchant Center): the amount is only reserved. The order is put in CorvusPay payment on hold; you capture (complete) the payment in the CorvusPay Merchant Center, then set the order to Payment accepted.

Payment Page Language: the language of the CorvusPay payment page. Site language (default) uses the current language of your shop when CorvusPay supports it, otherwise English. You can also choose Hrvatski, English, Deutsch, Italiano, Srpski or Slovenščina.

Order Status After Payment: the order status after a successful Sale payment. The order is created directly in this status.

Payment accepted (default): the standard PrestaShop status for paid orders.
Delivered (completed): every paid order becomes Delivered.
CorvusPay payment on hold: every paid order waits for your manual review. The payment is still recorded on the order.

Advanced

Logging: writes debug information to logs/corvuspay_p_debug.log.php in the module folder. The file cannot be opened from the web. Errors are always logged, even when this is off; secrets, signatures and customer data never are. Default: off.

Log: shows the size and the latest entries of the log. Click Clear log to empty it.

Delete Data: when on, uninstalling the module removes the module settings and the log files. Orders, the CorvusPay transaction data and the order status are always kept. Default: off.

Checkout

At the payment step the customer chooses the payment method (by default Credit/Debit Card (CorvusPay)) and confirms. The next page shows Redirecting to CorvusPay for payment. Please wait... and sends the signed form to the CorvusPay payment page. If the redirect does not start, the customer clicks Pay via CorvusPay; Back to checkout returns to the checkout. The cart total, the currency, a short description (cart number and shop name) and the invoice address details and e-mail (to pre-fill the payment page) are sent. No order exists yet at this point. The same CorvusPay order number is reused while the amount, currency, mode and transaction type do not change, and CorvusPay does not accept a second payment for it.

After paying, CorvusPay returns the customer to the Success URL. The order is marked paid only after CorvusPay confirms it: the CorvusPay order number must have been issued by this shop, the signature must match the Secret Key of the store the payment was started in, and the amount and currency must match the cart. The order is then created and the customer sees the standard order confirmation page with Your CorvusPay payment has been received. For Authorize only the page shows Your CorvusPay payment has been authorized. The amount will be charged when the shop processes your order. and for an order on hold Your payment was received and is being reviewed by the shop.

If the order cannot be created at that moment (for example, another request is confirming the same cart), the customer sees Your payment is being confirmed with a Check again button, which leads to the order confirmation as soon as the order exists. If the Success URL request cannot be verified, the customer sees Payment not confirmed and We could not confirm this CorvusPay payment. If your card was charged, please contact the shop — do not pay again. Nothing is changed. The Success URL works while the shop is in maintenance mode.

If the customer cancels on the CorvusPay page, the customer returns to the checkout with the cart intact and The CorvusPay payment was cancelled and the order was not paid. Your cart is still here — you can try again or choose another payment method.

If the payment cannot start, the customer stays at checkout with a short message: CorvusPay is not configured. Please choose another payment method., CorvusPay does not accept payments in … or This order total cannot be paid via CorvusPay (it must be greater than zero with at most 2 decimals). Please choose another payment method.

The order is confirmed only when CorvusPay returns the customer to the Success URL; there are no server-to-server notifications. If the customer closes the browser right after paying, no order is created. The module has no refunds, captures or voids from PrestaShop (the CorvusPay server API requires a client certificate), no saved cards, subscriptions, installments or on-site card form.

Orders

Order statuses

No order yet: the customer was sent to CorvusPay and has not returned with a confirmed payment. Only the cart exists. If the customer paid but did not return, check the payment in the CorvusPay Merchant Center and create the order manually.

Payment accepted, Delivered or CorvusPay payment on hold: the Sale payment was confirmed. The status follows Order Status After Payment. The payment is recorded with the CorvusPay transaction ID or, if CorvusPay does not send one, the CorvusPay order number, by which the payment can be found in the Merchant Center. A private order note shows the CorvusPay order number, the approval code and the card type.

CorvusPay payment on hold, authorized: Authorize only is selected. Capture the payment in the CorvusPay Merchant Center, then set the order to Payment accepted.

CorvusPay payment on hold, amount/currency mismatch: the paid amount or currency does not match the cart, for example because the cart was changed in another tab. The payment is recorded with the amount actually paid when it is in the order currency. Do not ship before verifying the payment in the CorvusPay Merchant Center.

CorvusPay payment on hold, payment after cancel: a successful payment arrived for a payment attempt the customer had cancelled. Fulfil the order or refund the payment in the CorvusPay Merchant Center.

If another, different successful payment arrives for a cart that already has an order, the order is not changed. A note asks you to check the CorvusPay Merchant Center and refund the duplicate payment if needed.

CorvusPay payment block

The order page shows a CorvusPay payment block with the CorvusPay order number, the status of the payment attempt, the transaction type (Sale or Authorize only), the amount (and the amount received, if CorvusPay reported it), the approval code, the transaction and the card type. Test payments are marked Test.

Refunds: refunds, captures and voids from PrestaShop are not supported. Do them in the CorvusPay Merchant Center and record the result in PrestaShop manually.

License key

The module works with a VibeFox license key from vibefox.net. The license block License — VibeFox CorvusPay Gateway is the first block on Modules > Module Manager > VibeFox CorvusPay Gateway > Configure, above the settings. Paste the key into License key and click Activate. After that the block shows the key masked, the status (for example the date the license is active until and your domain) and the buttons Check now to check the status again, Change key to enter another key and Remove key to remove the key from this shop. Below them are the line Product: presta-payment-corvuspay and the link Manage licenses and domains in your account, which opens your vibefox.net account. Only employees with the Configure permission for the module can change the key. The texts of the block follow the back office language (English and Russian are included).

If the key is not accepted, the block says why, for example Key not found, This key belongs to another product, Domain limit reached or License expired on a date. After the shop address changes, or after you free a domain slot in your account, click Check now. If the license server cannot be reached, the module keeps working on the last known status.

One key works on one domain: the domain of the main shop, also in a multistore setup. Removing the key from the shop does not free its domain slot. Free the slot in your vibefox.net account.

Without an active key, CorvusPay 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. The PrestaShop storefront does not know that you are logged in to the back office, so the payment method is hidden for you too: you can set up the module before you buy a key, but not test it at checkout. A reminder appears in Modules > Module Manager on the Alerts tab. Existing orders are not affected: payments already started are still confirmed when the customer returns from CorvusPay.

When a license expires, the module keeps working, but updates and support need a renewal. The status is checked again automatically while you work in the back office: once a day for the first 14 days after the key is entered, then once a week. No cron job is needed. Uninstalling or resetting the module always removes the license key and license status.

Troubleshooting

CorvusPay does not appear at checkout: check that the license is active, Enable/Disable is on, the Store ID and Secret Key of the current mode are filled in (Test Store ID and Test Secret Key in test mode, Live Store ID and Live Secret Key in live mode) and the cart currency is supported by CorvusPay. In Payment > Preferences check that the module is allowed for the cart currency, the customer's country and the customer's group.

The payment went through, but no order was created: the Success URL is probably not entered in the CorvusPay Merchant Center, or the Secret Key in PrestaShop does not match the store. Look for INVALID signature in the Log field on the module page (errors are always logged). No order is created either if the customer closed the browser before returning; then check the payment in the Merchant Center and create the order manually.

The customer sees Payment not confirmed: the Success URL request was rejected: required fields were missing, the CorvusPay order number was not issued by this shop, the Secret Key of that store is empty or the signature did not match. Nothing is changed. The log shows the reason.

The customer sees Your payment is being confirmed for a long time: the order could not be created, for example because the module was disabled or the cart is no longer valid. The log shows the reason; check the payment in the Merchant Center.

The customer sees This order total cannot be paid via CorvusPay: the total is zero or has more than 2 decimals.

The customer sees CorvusPay is not configured or CorvusPay does not accept payments in …: the Store ID or Secret Key of the current mode is missing, or the cart currency is not supported.

Order is CorvusPay payment on hold: read the private notes of the order. Authorize only is selected, the paid amount or currency did not match the cart, the payment arrived after the customer had cancelled, or Order Status After Payment is set to on hold.

Uninstall

Go to Modules > Module Manager, open the menu next to VibeFox CorvusPay Gateway and choose Uninstall. The license key and license status of this module are always removed. If Delete Data is on, the module settings and the log files are removed. If it is off, all settings are kept for a later re-install. The CorvusPay transaction data and the order status CorvusPay payment on hold are always kept, so the CorvusPay block of old orders comes back after a re-install. Existing orders keep their payment notes and transaction IDs.

CorvusPay is a trademark of its respective owner. This module is not affiliated with or endorsed by CorvusPay.