iATS Payments by Deluxe

Development Status
Active Installs

Last updated: 2024-05-23

Works with CiviCRM 5.63 or higher.

This is a payment processor extension for the iATS Payments by Deluxe payment processing service, making use of the web services interface.

iATS Payments is a payment processing service provider that provides services tailored to the needs of nonprofits.  iATS supports clients in Canada, the United States and the UK and provides additional services to over 180 countries worldwide. iATS Payments actively supports and sponsors the development and maintenance of this module. Additionally, the highly trained iATS Payments customer care team is available to support CiviCRM clients by phone or email.

This iATS Payments extension provides three separate payment processors, including the standard credit card payment processor, as well as two additional specialty processors. You can install only the ones you need.

For a broad overview and instructions to get started -> please see: https://www.semper-it.com/civicamp-iats-payments-slides

  1. iATS Payments Credit Card
    This provides the standard one-off credit card contribution option, and a new and improved (over the previous iATS implementation) model for recurring contributions. The recurring contributions are now triggered from CiviCRM using a CiviCRM Scheduled Job that needs to be enabled if you use this feature. Credit Card transactions work on both Public Contribution pages as well as in the Back-office.
  2. iATS Payments ACH/EFT (for North America)
    ACH/EFT is the North American standard for direct electronic funds transfer. This payment processor allows you to provide an interface for adding and managing single as well as recurring direct payment transfers from your supporters, saving you extra % costs that credit card contributions will normally have. A Scheduled Job needs to be enabled to verify ACH/EFT transactions. The processors supports ACH/EFT contributions on public contribution pages, and with some restrictions (due to a CiviCRM Core issue) as a back office administrative function.
  3. iATS Payments Credit Card SWIPE
    This payment processor adds the ability to swipe credit cards, when the iATS encrypted USB card reader [must be sourced by iATS Payments] is used. The card swipe functionality works with all Public Contribution Pages [requires a small patch to CiviCRM Core – which is in the extension’s repository]. It is available in the Back-office by enabling this payment processor and setting it as default. This will force the use of the SWIPE processor on all backend pages, making it suitable for use at a public event, for example.

Special Features

  1. Recurring transactions and tokenization
    The extension implements recurring contributions with the use of 'tokens' so that the recurring payments can be managed from CiviCRM. This method allows for easy updating of the amount and number of the recurring contributions, while maintaining security by not storing any credit card data on the civicrm server. To use recurring payments, you need to enable the corresponding Scheduled Job (Administration -> System Settings).
  2. iATS Fraud Tools
    This extension will help you take full advantage of iATS fraud tools that come free with your iATS account and CiviCRM extension. Details of these fraud tools are available here: https://www.youtube.com/watch?v=zqrUSD_po_s
  3. Custom Status Page
    The extension provides a useful iATS status page within CiviCRM that will show you details of the most recent transactions and allow you to search for transactions based on names and/or the four last digits of the credit card.


Our extension is tested against 26 types of transactions at the moment. You can view a summary of the results on the Documentation Wiki [UK Direct Debit is still in beta at this time].

We've also starting adding automated PHP Unit Tests to the iATS Extension - tests that automatically run with CiviCRM Core on build (of Core); 

Status Notes

The first non-beta release of this extension was April 3 2014.  The latest release has been thoroughly tested on CiviCRM 4.6 and 4.7. Earlier versions are still available for basic credit card payments;

To use the ACH/EFT, you need to enable the Job that verifies ACH/EFT transactions. These transactions are initially set up as pending, until iATS reports back using this Job that the transaction has been verified or failed.

if you're already using iATS on a third party system: contact iATS Payments to check if you need to get a new agent code/password or if you can continue to use your existing one.

if you're already using iATS on the Drupal side (Drupal Commerce): the iATS Payments extension will let you hook up CiviCRM to your existing iATS account. You'll continue to process products/SKUs on the Drupal side, while you can start accepting doing Donations, Memberships, other payments on the CiviCRM side.

if you're already using iATS in CiviCRM: the iATS Payments extension will let you process payments more reliably - esp. recurring contributions like Donations, or automated Membership payments - and will also able to process ACH/EFT payments: direct debit

Code Updates

New feature development and bug-fixing has been fairly constant since the first release, and we've been generating one or two new releases each month. We generally recommend always updating to the latest version, which is in the 1.5.x series at this time. Usually, you can accomplish this by visiting the Manage Extensions page and saying yes to any proposed update of the extension.

If you're unsure about any specific release, you can learn more about it by visiting the releases page of the GitHub project.

Screenshot (click to enlarge)