Adyen

Package to simplify including the Adyen payments services into a Ruby on Rails application.

Visit the wiki for documentation: github.com/wvanbergen/adyen/wiki.

Adyen integration relies on three modes of communication between Adyen, your server and your client/customer:

  • Client-to-Adyen communication using forms and redirects.

  • Adyen-to-server communications using notifications.

  • Server-to-Adyen communication using SOAP services.

This library aims to ease the implementation of all these modes into your application. Moreover, it provides matchers, assertions and mocks to make it easier to implement an automated test suite to assert the integration is working correctly.

Usage

See the project wiki on github.com/wvanbergen/adyen/wiki to get started. Complete RDoc documentation for the project can be found on rdoc.info/projects/wvanbergen/adyen.

  • For more information about Adyen, see www.adyen.com

  • For more information about integrating Adyen, see their manuals at www.adyen.com/home/support/manuals.html, primarily the HPP integration manual for Adyen::Form, and the API integration manual for Adyen::API.

The library doesn't have any dependencies, but making Nokogiri available in your environment will greatly improve the speed of XML and HTML processing.

About

This package is written by Michel Barbosa and Willem van Bergen for Floorplanner.com, and made public under the MIT license (see LICENSE). Its is currently maintained by Willem van Bergen, Stefan Borsje and Eloy Durán. We are not affiliated with Adyen B.V. The software comes without warranty of any kind, so use at your own risk.

Contributions are welcomed; this is very much a scratch your own itch project. Some notes:

  • Fork the project, implement your stuff and issue a pull request. Topic branches not necessary.

  • We prefer to keep the number of dependencies of this library to 0.

  • All functionality must include tests and preferably documentation.

  • New SOAP API calls should include functional tests that actually test if the call is working. Adyen has a nasty tendency to switch things up every now and then, so this is vital. Note: we use a test account to run the functional specs on CI. Some API calls have to be enabled on Adyen's side before our test account can use them. If you receive failures with “010 Not allowed” on CI while it works fine with your owen test account, please let us know on the pull request, so I can ask Adyen to enable the feature on the test account as well.

Please visit the changelog at github.com/wvanbergen/adyen/wiki/Changelog to see the changes in the different releases.