was successfully added to your cart.


How to integrate Veifone’s Hosted Checkout with Magento


Magento is an open-source PHP-based eCommerce platform that offers a high degree of flexibility and control over the user experience, catalog, content, and functionality of their online store. You can integrate with Magento 2 web store via Hosted Checkout by following the steps in this guide.

Magento 2 plugin enables you to process orders with Verifone’s Hosted Checkout.


Prior to installation, the following prerequisites must be met:

  • A Magento 2 Installation (Version 2.1x, 2.3.x or 2.4.x)
  • sftp/scp and shell access to your server
  To start accepting eCommerce transactions, you will need to generate a Secure Card Capture Key.

Magento 2 Configuration

Follow these steps to integrate the Magento 2 plugin:

  1. Download the latest release from the bottom of this page and extract the archive.
  2. Upload the included Verifone directory to ‘app/code/’ under your Magento root directory on your server.
  3. Upload the files to your server, to your instance of Magento 2. Each file must be uploaded to the correct directory.

Integrate Magento 2 Plugin for Verifone_1

4. Install the module by running 'bin/magento setup:upgrade' and 'bin/magento setup:di:compile'.

5. Log in to your Magento 2 administration panel and navigate to System → Cache management.

Integrate Magento 2 Plugin for Verifone_2

6. On the Cache management page, click on the Flush Magento cache button.

Integrate Magento 2 Plugin for Verifone_3

7. Go back to the System tab and select Index Management.

Integrate Magento 2 Plugin for Verifone_4

8. On the Index Management page, select the Update on save option and click on the Submit button to re-index all templates.

Integrate Magento 2 Plugin for Verifone_5

9. In the Magento admin panel, go to Stores → Configuration.

Integrate Magento 2 Plugin for Verifone_6

10. Under Configuration, click on the Sales tab and scroll down to Payment methods.

Integrate Magento 2 Plugin for Verifone_7

11. Under Payment methods, you will see the Verifone – Credit Card Hosted Payment module.

Integrate Magento 2 Plugin for Verifone_9

 12. Click on Verifone – Credit Card Hosted Payment and input your information that you can find in your Verifone Central account.

  • Enabled – Enables the payment method
  • Title – The customer-facing payment method label (Verifone Hosted Cart)
  • Description – The customer-facing description for your payment solution
  • Test Mode – If you choose to enable the Test mode, you will need Test credentials for the test environment. Contact our support team for more details about test credentials and access to the test environment.
  • Invoice – Invoice the order automatically when successful
  • Manual Capture
  • New Order Status – Status for new orders (processing or complete should be selected)
  • Region – Region to target
  • Payment Type – Hosted Payment Page
  • API User & API Key – You can find them in your Verifone Central account, under Profile → API Keys. Read here how to get the API Key.
  • Entity ID – The Entity ID can be found in Verifone Central, under Administration  Organisations. The ‘Organisation ID’ listed is the Entity ID required for configuring the plugin.organisation entity ID
  • Payment Contract ID – The payment contract can be found in the Verifone Central, under Administration  Payment Contract Providers. The ‘Payment Provider Contract ID’ listed is the Payment Contract ID required for the plugin configuration. 
  • 3DS Contract ID – The 3DS Contract ID can be found in Verifone Central, under Administration  3-D Secure Provider Contracts. Select the 3DS facility required. The ‘3-D Secure Contract ID’ listed is the 3DS Contract ID needed for the plugin configuration.
  • 3DS – Enable 3DS for transactions
  • CVV on Payment – Require CVV
  • Enable/Disable cURL verify host and peer – Enable host/SSL verification

13. Click on Save Config to save your settings.

Integrate Magento 2 Plugin for Verifone_10

Error handling and troubleshooting

If you encounter any errors during the installation and configuration of the Magento 2 plugin, you can find a log of all errors under Reports → Customer Engagement → Log Viewer.

Integrate Magento 2 Plugin for Verifone_12

It’s highly recommended to visit the help center for more in-depth troubleshooting.

All errors are logged in var/log and var/reports folder. If some errors are not logged, you can always view the Apache or Nginx logs.

Common errors

  • Not having the currency of Magento 2 set to the one that the payment contract supports
  • Not having created a public key for Secure Card Capture (see section Secure Card Capture Key above)
  • Entity ID, Payment Contract ID, or 3DS Contract ID do not match the correct entity for which they were created
  • The cURL verify host and peer option is enabled/disabled but the host server does not have proper TLS certificates
  • Not having the latest Magento 2 module version installed
  • Make sure that the credentials are correct: Payment Contract ID, User ID, Password, Realm, Entity ID, Client ID, etc.
  • If the website is down or the assets cannot be found on the server, go to the terminal on the server and run several Magento 2 deploy commands. Read more about Magento commands.

In most cases, the error may be caused by various PHP errors and/or warnings.

If the error is caused by a request to the Verifone server, then the error message received when the request fails is very informative. Here is an example:

    "code": 116,
    "details": {},
    "timestamp": 1608705038970,
    "message": "Access is restricted to authenticated users only. The query can't be made without a valid JWT (check the Authorization header of your request)."

The above request was denied because the user was not authorized. This is due to an invalid token being present in the Authorization bearer.

This kind of error format will be present on almost all requests that fail and will deliver a concrete error message along with it which in turn will pinpoint the problem precisely.