This project is not covered by Drupal’s security advisory policy.
This project provides a set of API modules for conducting transactions via Authorize.net.
Authorize.net provides a PHP SDK with all of the functions necessary for integrating with it's various services. This module uses the SDK (via the Libraries modules) and provides wrapper functions to ease the use of the API for other modules to use.
API
The core Authorize.net API module (authnet.module) is stable and contains working wrapper functions for CIM and AIM functionality. Other APIs have yet to be added, but the core module is designed to make that easy. Patches are welcome!
Authorize.net APIs included:
- CIM - yes*
- AIM - yes*
- ARB -
- CP -
- SIM -
- DPM -
- TD -
* CIM and AIM are mostly done and working. UI integration for bank accounts and eCheck.net payments are not yet implemented (but there are issues w/ patches started: #1766012 and 1896910).
If you have feature requests, or bug reports, please create an issue.
Included modules:
Authorize.net API (authnet.module)
This is the core Authorize.net API module. It provides Drupal wrapper functions for the Authorize.net SDK objects and functions. It is used by all the other sub-modules.
CIM Entity Integration (authnet_cim_entity.module)
This module maintains an association between Authorize.net CIM customer profiles and payment profiles, and entities in Drupal. It does two main things:
- Provides two database tables: one for linking Authorize.net customer profiles to entities in Drupal (ie: users), and one for keeping track of Authorize.net payment profiles (ie: credit cards).
- Implements hooks provided by the authnet module to add/update/delete records from the abovementioned databases when customer profiles and payment profiles are updated via the API functions.
Authorize.net UI (authnet_ui.module)
Provides reusable UI elements like forms (ie: payment profile edit form).
Authorize.net User (authnet_user.module)
Maintains an association between Authorize.net CIM customer profiles and Drupal users. Depends on authnet_cim_entity and authnet_ui (above). It provides menu callbacks for users to add/edit/remove payment profiles (ie: manage their credit cards) at /user/[uid]/billing.
Requirements:
- PHP 5.2+ with cURL and SimpleXML extensions
- Authorize.net PHP SDK version 3.1.2
- Libraries module
Installation:
- Download and install the Authorize.net PHP SDK library (see below)
- Download and install the Libraries module.
- Download and install this module (authnet).
- Enter your Authorize.net Login ID and Transaction Key at /admin/settings/authnet
SDK Installation - Required:
This modules requires the installation of the Authorize.net PHP SDK.
- Please download the SDK from:
https://github.com/AuthorizeNet/sdk-php/archive/master.zip - Extract the archive and rename the extracted folder to 'anet_php_sdk'
- Move the folder to your Drupal libraries folder. The default location is: /sites/all/libraries
- The final path to the autoload.php file should be: /sites/all/libraries/anet_php_sdk/autoload.php
Ubercart/Commerce Integration
Attention: As of the 6.x-1.0-beta1 release, the Ubercart integration module has been moved to a separate contrib project (see below). Download and install that module if you are upgrading from an older release.
Ubercart integration is provided by this project: Ubercart Authorize.net Payment Gateway
Commerce integration is not yet available, but hopefully will be provided via integration with the Payment API module. See Authorize.net for Payment (work in progress).
Other Authorize.net modules:
Part of the reason this module was built was to address the disparity among the existing set of Authorize.net solutions available for Drupal. There are a number of different modules available, each with different goals, and all reinventing the wheel in their own ways.
The following modules provide various forms of integration with Authorize.net. Many of them implement their own functions for communicating with the API. If you are a maintainer of any of these, and are interested in leveraging this module's API to make your job easier, let us know!
- uc_authorizenet - Included in the Ubercart module package
- uc_cim - Replacement for the uc_authorizenet module that provides better CIM integration (abandoned)
- uc_authorizenet_simdpm
- commerce_authnet - Integration with the Commerce module package
- commerce_authnet_simdpm
- authorizenet - Integration for the Pay module
Project information
- Seeking co-maintainer(s)
Maintainers are looking for help reviewing issues. - Maintenance fixes only
Considered feature-complete by its maintainers. - 50 sites report using this module
- Created by m.stenta on , updated
- This project is not covered by the security advisory policy.
Use at your own risk! It may have publicly disclosed vulnerabilities.
Releases
Development version: 7.x-1.x-dev updated 15 Dec 2016 at 15:03 UTC