Skip to main content

Online Payments

Rate this article:

Overview

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.

Prerequisites

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

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

  14. Create a public key for Secure Card Capture to start accepting eCommerce transactions. You do not need to use this key for the plugin configuration, it simply needs to be created to ensure any card details are encrypted in the browser, so that information can be safely passed from you (merchant) to Verifone. 

To generate a public key from your Verifone Central account follow these steps:

  • Navigate to Administration  Organisations, and select the required organization.
  • Scroll down to the bottom of the page to see the Secure Card Capture area.
  • Click on the Create new public key button. 

Integrate Magento 2 Plugin for Verifone_11

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
  • Entity ID, Payment Contract ID, or 3DS Contract ID don’t match the correct entity for which they were created
  • The cURL verify host and peer option is enable/disable but the host server doesn’t 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 can’t 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's 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 wasn’t 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.

Download Verifone Payment Module

 

Release date Build Release notes
2021-08-31 verifone-magento2-v2.0.1.zip
  • added manual capture support
  • hotfix production URLs

 

Rate this article:
Logo of Verifone