Prestashop Module: Moneris Payment Gateway Canada

hero image

A Canadian Merchant Gateway for Prestashop

This is a Prestashop module that allows you to accept credit cards directly on your website using the Moneris Payment Gateway API Integration (formerly eSelectPlus). Supports Verified By Visa and MasterCard SecureCode.

Moneris is a credit card processor for Canadian businesses and Prestashop stores in Canada. Sign up here.

  • Users can enter their payment information directly on your checkout page without having to leave your website.
  • Support for optional Verified By Visa, MasterCard SecureCode and CVD Checks.
  • Real-time card validation. User input is validated as they are typing.
  • Dynamic error reporting. Users can see the error message fade in above the credit card form instead seeing a page refresh and having to re-enter their information.
  • Billing, Shipping and Product information is stored in your Moneris records for each transaction.
  • Makes use of a new sturdier API (doesn’t use older “DirectPost” or “Hosted PayPage”).
  • Comes pre-installed with French translations that users will see when they visit the French version of your website.
  • Requires a Canadian Moneris eSelect Plus account.
  • Requires an SSL certificate to process live payments as per Moneris’ mandatory requirements. Test payments can be done without one.
  1. Login to eSelect Plus. Click Admin > Store Settings and copy the API Token (if there is none, generate a new one).
  2. Paste API Token in the module’s configuration, and enter your Store ID.
  3. Enable/Disable VbV/MCSC and CVD validation from the module configuration, depending on what your eSELECT Plus features are. Some features are given from Moneris for a fee. They are not mandatory, but if you are interested in having them please contact Moneris and ask them to enable it for you. Once they’ve enabled it, you’ll be able to use them in the module settings. DO NOT enable VbV/MCSC/CVD if you don’t have them enabled on your eSELECT account as it will cause errors.
  • 2.0.6
    • FIX AVS “Street Name” issue
    • FIX CVD and AVS issues when VBV is enabled
  •  2.0.5
    • FIX Order ID for store names with special characters
  •  2.0.4
    • Fix deprecated constructors in PHP 7
    • Add convert to CAD/USD option
  •  2.0.3
    • Add Convert to CAD configuration option
    • Add more FR translations
  • 2.0.0
    • Updated for full Prestashop 1.7 compatibility.
    • Credit card form and transactions are more consistent across different themes/sites.
    • Transaction error messages are now integrated into theme notifications.
    • Added check to make sure the CAD currency exists.
    • Added debug mode for developers & support.
    • Restyled CSS for new checkout page.
    • Removed AJAX transactions for more consistency with new checkout page.
  • 1.8.7
    • FIX Verified by Visa now functions correctly after a Moneris update.
    • NEW Option to reject previously declined credit cards.
    • Payment button now disables while a transaction is in progress, button text changes to “Sending…”
  • 1.8.6
    • FIX detection of Discover cards
  • 1.8.5
    • FIX label & title configuration bug
  • 1.8.4
    • FIX number format bug
  • 1.8.3
    • FIX conversion bug in some cases when converting to CAD
  • 1.8.2
    • Fix syntax bug on older PHP versions
  • 1.8
    • Added AVS and CVD checks
    • Added new Order Status “Supsicious” for suspicious AVS orders
  • 1.7.4
    • Added card payment details
  • 1.7.4
    • Added config field for Form Title
    • Added config field for AJAX processing
  • 1.7.3
    • Updated module from procedural PHP to MVC
    • Fixed most/all warnings and notices for undefined variables/indices in dev mode
    • Added ability to select and deselect credit card logos
  • 1.7.2
    • Fixed credit card validation errors when user has JS disabled
  • 1.7
    • Changed BO interface to Prestashop 1.6
    • Fixed all French translations
    • Added ability to hide CVV code field
    • Made database value names consistent
    • Added ability to submit a checkout button label in all languages
  • 1.6
    • Improved expiry date checkmark
    • Added many new error response messages when payment fails
    • Fixed addCSS and addJS errors


Disclaimer: I am not responsible for the overall security of your website. This module only works in HTTPS, but if you modify the code to ignore this restriction, it is at your own risk.