WooCommerce Moneris Payment Gateway

Overview ↑ Back to top

WooCommerce Moneris lets customers pay with credit cards and supports Interac for bank account payments, providing a quick, seamless payment experience. This extension supports Hosted Tokenization for maximum checkout security and the credit card gateway is compatible with WooCommerce Subscriptions and WooCommerce Pre-Orders.

Note: Moneris is only available for Canadian merchants. Click here for more information.

Requirements ↑ Back to top

  • PHP 7.0+ (you can see this under WooCommerce > Status
  • WordPress 5.0+
  • WooCommerce 4.0+
  • An SSL certificate

Installation ↑ Back to top

  1. Ensure your store meets the plugin requirements.
  2. Download the extension from your WooCommerce dashboard.
  3. Go to Plugins > Add New > Upload and select the ZIP file you just downloaded.
  4. Click Install Now and then Activate.
  5. Click Configure and read the next section to learn how to setup the plugin.

Getting started ↑ Back to top

Follow the instructions below to set up Moneris to process credit cards or Interac transactions.

Credit card setup ↑ Back to top

To accept credit cards, you’ll need your Store ID (which your Moneris account represenative can provide) and you API Token, which you can find by following these steps:

  1. Login to your Moneris Merchant Resource Center.
  2. Go to Admin > Store Settings.
  3. Your API Token should be listed on this page.
  4. Enter the Store ID and API Token in the credit card settings.

Credit card settings

You can configure the following settings for the Moneris credit card gateway:

  • Enable / Disable: Allow customers to use this gateway to checkout.
  • Title: The text shown for the payment during checkout and on the Order Received page.
  • Description: The text shown under the gateway’s title during checkout. Limited HTML is allowed.
  • Saved Card Verification: Display the Card Security Code field when customers are paying with a saved card.
  • Transaction Type: Controls how transactions are submitted to Moneris. Defaults to “Charge” to automatically capture payments. Click here to learn more about capturing payments.
    • Charge Virtual-Only Orders: If Transaction Type is set to “Authorization”, enable to automatically capture charges for orders with only virtual products. For downloadable products, this will grant download access right away.
    • Capture Paid Orders: If Transaction Type is set to “Authorization”, enable to automatically capture charges when orders move to a paid status (i.e. Processing or Completed).
  • Accepted Card Logos: Determines which card logos are displayed during checkout. This has no impact on which cards are accepted by your merchant account.
  • Tokenization: Let customers save their payment methods for future use at checkout. You must contact your Moneris representative and ask them to enable the “Vault” option on your account to use this feature. This is required for Subscriptions or Pre-Orders. When enabled, you can manage customer tokens in WooCommerce. Click here to learn more about managing customer tokens.
  • Hosted Tokenization: – Use a hosted form field to collect payment information at checkout and reduce your PCI compliance burden. You must contact your Moneris representative and ask them to enable Hosted Tokenization on your account to use this feature. Click here to read more about hosted tokenization.
  • Detailed Decline Messages:Display detailed messages to customers to provide reasoning for declines instead of a generic error message when possible. Click here to read more about detailed decline messages.
  • Debug Mode: Enable if you’re having issues processing transactions. You can choose to log API requests directly on the checkout page, save them to the WooCommerce > Status > Logs page, or both. As a best practice, please do not enable this setting unless you’re having issues with the plugin.
  • Environment: Switch between “Production” and “Sandbox” credentials. Set to “Production” to process payments and “Sandbox” to send transactions to your Moneris sandbox account. Click here for more information about using sandbox mode.
  • Store ID: Your Moneris store ID, provided by your Moneris account representative. This should be in the form of monca with some numerical value at the end (e.g., monca12345). Please enter your Store ID in lowercase letters.
  • API Token: Your Moneris API token, found by following these steps.
  • Hosted Tokenization Profile ID: When Hosted Tokenization is enabled, enter your profile ID to use hosted tokenization. You must contact your Moneris representative and ask them to enable Hosted Tokenization on your account to use this feature. Click here to read more about hosted tokenization.
  • Additional connection settings: Use these settings to add another Moneris account to the gateway, so that you can route payments in different currencies to different accounts. Click here for more information about multicurrency setup.
  • Dynamic Descriptor:Enter what customers should see on their bank statements for charges from your store.
  • Address Verification Service (AVS): Perform checks on the customer’s billing address for increased security. When enabled, you can choose how the gateway should respond in different scenarios based on the street address / zip code matching and address verification results. You must enable AVS on your Moneris account to use this feature.
  • Card Verification (CSC): Perform checks on the card security codes. When enabled, you can determine how the gateway should respond in different scenarios based on the CSC match / verification results.
  • Require Card Verification: Require that customers enter their card security code at checkout. This must be disabled to support Subscriptions and Pre-Orders.

Multicurrency setup

With WooCommerce Moneris, you can connect to multiple Moneris accounts to route payments based on their currency.

To use this functionality, you will need a currency switching plugin, such as WooCommerce Multi-currency or Aelia’s Currency Switcher for WooCommerce, because Moneris cannot handle the currency switching on its own.

To connect to another account, follow the steps below:

  1. Go to WooCommerce > Settings > Payments > Moneris.
  2. Under the Additional Connection Settings area, click Add connection settings. Moneris accepts USD and CAD, so the currency populated in this field will be based on your store’s base currency. For example, if your store is set to process in USD, you will see CAD populated in this field since your primary Moneris connection will support your USD transactions.
  3. Enter the Store ID, API Token, and Hosted Tokenization Profile ID (if using Hosted Tokeinzation) for the merchant account you want to use for this currency.
  4. Click Save changes.

Multicurrency settings in the Moneris credit card settings.

Interac Setup ↑ Back to top

You can connect to Interac to let customers make payments via their bank account.

To set up this connection in the plugin, you must first be certified by Moneris to use Interac by completing this checklist with the help of your Moneris representative, which includes:

  • Merchant logo both in French and English to be displayed on the IOP Gateway page (120 x 30px); only PNG format is supported.
  • Merchant business name in both English and French (max. 30 characters).
  • A list of all referrer URLs from which the customer may be redirected to the IOP Gateway.
    • This can be found on the WooCommerce > Settings > Payments > Interac page.
    • Referrer URL example: http://www.MY-STORE.com/checkout/order-pay
  • A list of all URLs that may appear in the IDEBIT_FUNDEDURL and IDEBIT_NOTFUNDEDURL fields of the https form POST to the IOP Gateway.
    • This can be found on the WooCommerce > Settings > Payments > Interac page.
    • Funded / non-funded URL example: http://www.MY-STORE.com/?wc-api=WC_Gateway_Moneris_Interac
  • Screenshots of the checkout process showing examples of approved and declined transactions using the INTERAC Online service.

For assistance with the Interac certification process, please contact the Moneris help desk at 1-866-319-7450 and have your 13-digit merchant number ready (which should start with 00302).

Interac settings

You can configure the following settings for the Moneris Interac gateway:

  • Enable / Disable: Allow customers to use this gateway to checkout.
  • Title: The text shown for the payment during checkout and on the Order Received page.
  • Description: The text shown under the gateway’s title during checkout. Limited HTML is allowed.
  • Debug Mode: Enable if you’re having issues processing transactions. You can choose to log API requests directly on the checkout page, save them to the WooCommerce > Status > Logs page, or both. As a best practice, please do not enable this setting unless you’re having issues with the plugin.
  • Environment: Switch between “Production” and “Sandbox” credentials. Set to “Production” to process payments and “Sandbox” to send transactions to your Moneris sandbox account.
  • Share connection settings: If using the credit card and Interac gateways, select this setting to share credentials between the gateways so you don’t have to enter your Store ID and API Token again. If you have multiple accounts connected, please note that this will connect the Interac gateway using the primary credentials entered in the credit card gateway.
  • Store ID: Your Moneris store ID, provided by your Moneris account representative. This should be in the form of monca with some numerical value at the end (e.g., monca12345). Please enter your Store ID in lowercase letters.
  • API Token: Your Moneris API token, found by following these steps.
  • InteracOnline Merchant Number: The IDEBIT_MERCHNUM provided by Moneris after completing the Interac certification process.

Hosted Tokenization ↑ Back to top

Hosted Tokenization lets you host credit card form fields (not the entire form) on Moneris’ servers and temporarily tokenize and send payment details directly to Moneris, rather than routing this information through your server.

From the customer’s point of view, they never appear to leave your site and the credit card fields appear native to the WooCommerce checkout form. However, using Hosted Tokenization greatly improves security and reduces your site’s PCI compliance burden.

After Hosted Tokenization is enabled on your account by your Moneris representative, you can generate your Hosted Tokenization Profile ID by following the steps below:

  1. Login to your Moneris Merchant Resource Center.
  2. Go to Admin > Hosted Tokenization.
  3. Enter your shop’s homepage URL without the trailing slash in the Source Domain field (e.g. https://www.MY-STORE.com).
  4. Click Create Profile.
  5. Find and copy the Profile ID associated with your store’s URL in the Existing Profiles table.
  6. In WordPress, go to WooCommerce > Settings > Payments > Moneris and paste the copied profile ID into the Hosted Tokenization Profile ID field. This field will only be visible when Hosted Tokenization is enabled.
  7. Click Save changes.

If you encounter any errors while used Hosted Tokenization, please review our troubleshooting section for assistance.

Note: While similar in naming to tokenization, Hosted Tokenization only relates to your checkout page template and improved security, not to saving payment details. Click here to learn more about tokenization.

Managing orders ↑ Back to top

As a site administrator, you can use the Moneris gateway to manually capture charges and automatically refund / void transactions as needed.

Capture charges ↑ Back to top

If the gateway’s Transaction Type is configured to “Authorization”, you can manually capture these payments from the WooCommerce Orders page. Click here to read more about capturing charges.

Automatic refunds ↑ Back to top

You can process refunds directly in WooCommerce without needing to log into your Moneris control panel. Click here to read more about issuing automatic refunds from WooCommerce.

Void transactions ↑ Back to top

You can void transactions directly in WooCommerce in the following circumstances:

  • If the Transaction Type is set to “Authorization”, you can void when the transaction has been authorized but not yet captured.
  • If the Transaction Type is set to “Charge”, you can void when the transaction has not yet been settled (i.e. funds haven’t been transferred from the customer’s account to your Moneris account).

Moneris doesn’t accept partial voids. If a transaction is no longer eligible to be voided, you must refund the order. Click here to read more about voiding transactions in WooCommerce.

Gateway features ↑ Back to top

Your customers can take advantage of the following features when your site uses Moneris.

Saved payment methods ↑ Back to top

When Tokenization is enabled, customers can save payment methods during the checkout process or from their My Account area. This lets them quickly save payment details or link their PayPal account for faster future purchases and also lets your site support Subscriptions and Pre-Orders. Click here to read more about managing saved payment methods.

Note: The Interac gateway does not support Subscriptions or Pre-Orders.

Frequently asked questions ↑ Back to top

Q: Does Moneris work with WooCommerce Subscriptions or WooCommerce Pre-Orders?

A: The credit card gateway fully supports all features of Subscriptions and Pre-Orders, but this is not supported by the Interac gateway. Please note that in order to use these plugins with Moneris’ credit card gateway, you must:

  • Have Vault enabled for your Moneris account; contact your Moneris representative for assistance.
  • Enable Tokenization in the credit card settings.
  • Disable Require Card Verification in the credit card settings; Moneris cannot store CSCs for subscription renewals for PCI compliance and security reasons.

Q: How do I use Sandbox mode for testing?

A: Moneris is unique in that it uses a shared set of test accounts for the Sandbox environment. You can select a preset Store ID in the plugin settings and then log in to the Merchant Resource Center with the provided test store credentials to view your test results.

You can use Moneris’ Penny Value Simulator to test certain responses based on the test transaction’s payment amount. Use 4502285070000007 to test successful transactions, regardless of the payment amount.

To test Address Verification and/or Card Verification while in Sandbox mode, use the store5 ID. Use 4242424242424242 as the card number for these tests. Click here for more information about AVS and CVD testing.

Click here for more information about testing in general with Moneris.


Q: Does WooCommerce Moneris support US merchants?
A: No, Moneris has fully discontinued support for merchants in the United States. If you were previously using WooCommerce Moneris as a US merchant and haven’t migrated to a new solution yet, please contact your Moneris account representative for further assistance.

Troubleshooting ↑ Back to top

Hosted Tokenization ↑ Back to top

If you receive a Code 942: invalid credentials error when using Hosted Tokenization, please verify the domain used to generate the Hosted Tokenization Profile ID. The URL must be a public domain of the shop, with no directories and no trailing slashes.

Most issues can be resolved by regenerating the Hosted Tokenization Profile ID. If transactions are still encountering errors, check the rest of the troubleshooting steps and then please contact support.

“Transaction incomplete” checkout error ↑ Back to top

An error occurred, please try again or try an alternate form of payment.
Status message: "Transaction incomplete: Cancelled: Transaction not allowed. No permission for:'avs_info'"

This error can occur when you have Address Verification Service (AVS) enabled in the plugin settings but not on your Moneris account. You can either disable this setting or contact your Moneris account representative to enable address verification on your Moneris account.

Other issues ↑ Back to top

Having a different problem? Follow these steps to make sure everything is setup correctly before posting a support request:

  • Please ensure that your site meets the plugin requirements.
  • Check the FAQs to see if they address your question.
  • Confirm that your Store ID and API Token are correct.
    • Please ensure that your Store ID is entered in lowercase letters; Moneris may reject Store IDs that use uppercase letters.
  • If you’re encountering an error with Interac, please confirm that you’ve followed all the proper steps to enable Interac on your Moneris account.
  • Enable Debug Mode in the plugin settings and review the errors codes/messages provided by Moneris under WooCommerce > Status > Logs. In some cases, such as a transaction being held for review or declined, the plugin cannot change the issue and it must be resolved in your Moneris account. If the error code indicates an issue with the plugin, please
    submit a support ticket
    and include the logs to help us troubleshoot.

Questions & Support ↑ Back to top

Have a question before you buy? Please fill out this pre-sales form.

Already purchased and need some assistance? Please check out our troubleshooting tips and frequently asked questions for common issues or contact support via the help desk if you need more help.

WooCommerce - the most customizable eCommerce platform for building your online business.

Back to the top