Affects Version/s: 2.1
Fix Version/s: 2.1
Component/s: CiviContribute, CiviEvent
Australian credit card payment processor 'eWAY' - written in March 2008 and running successfully since then at http://www.goinggreenbiz.com.
Copy of zipped source package available at http://www.goinggreenbiz.com/node/94 and/or attached to this issue.
The package is fairly complete - has simple installation notes showing where all the files go, so as well as the main eWAY.php, there are the Contribute and Event class extenders files, and the eWAY (package) support files, and simple text for an SQL INSERT that will add the eWAY entry into 'civicrm_payment_processor_type ' table, plus entries for the 'Processor.Hlp' file for the eWAY config form's pop-up help 'boxes'.
Code was based initially on the recent PayJunction, borrowed heavily from AuthoriseNet, took a bit of input from Drupal 5.7's 'ecommerce' eWAY module (stable and dev versions), and of course referenced the 3 eWAY standard developer's sample files.
Code is pretty good on differentiating eWAY errors and system errors and formats error messages appropriately.
Stole some good duplicate checking from AuthoriseNet, so if the user submits twice if catches the second one before it can send a duplicate to eWAY.
There are two versions of the 'eWAY.php' - standard code and 'eWAY_Debug.php' full of debug 'alert' statements if you need to display request and response packages, etc. Might be useful for someone adding the 'recur' section'.
Was coded initially for CiviCRM V1.9 and then immediately converted for V2.0.
All in all it's on a par with the coding standards of the existing payment processor modules - been reasonably well tested, and except for the missing 'recur' function, and eWAY's inherent multi-currency limitations its complete.