This module can be used by other modules to collect and track payments. Through this API, any module can provide a payment form and payments can be handled and tracked centrally.

Payment forms

A payment form is the result of any business rules that include a request or recommendation of payment. Examples include shopping cart checkout pages, donation forms, event registration pages, user registration forms, or tip jars.

A module using this payment API can be very simple or very complex, implementing any amount of business rules that result in a payment request. From there, Pay collects payment information and submits it through a configured payment backend. All payment activities, no matter what they're for, are stored in one place for tracking and reporting purposes.

Modules that implement payment forms include:

If you develop a new payment form module, please let us know so that we can add it to this list.

Payment backends

A payment form can support one or more payment methods, using the functionality of a payment method handler. Support for the following backends are available for Pay:

If you develop a new gateway, please let us know so that we can add it to this list. If you have developed a separate gateway module but do not have CVS access to drupal.org, please add it to an issue here. We will create a project on your behalf, and set it to "Seeking maintainer" status. This will give your code a place for support and ongoing improvements.

Related Modules

The following modules support or rely on transactions handled by the Payment API

If you develop a new module that uses or supports the Payment API, please let us know so that we can add it to this list.

Embedded payment forms

A payment form can be stand-alone, as on a shopping cart checkout page. But more often than not, you want to include payment capabilities in other forms. This might include the user registration form on a pay-to-register site, a donation suggestion on a webform submission, or collecting money on a signup form.

The Node Payments module, included with Pay, demonstrates the use of this functionality by allowing you to attach or create payment forms on any node type. This is useful for pledge drives and other donation campaigns.

Benefits of using a Payment API

There are lots of reasons to ask for money online, but the basic mechanism for exchanging money remains the same. Meanwhile, there are dozens of payment gateway services each with its own complicated API, that must be supported in order to handle the uses of all the sites out there. A single, stable payment acceptance mechanism allows module maintainers to focus on the fun part of collecting money.

It's also useful to have a single place to report on all payment transactions, no matter where they're from. By using a central payment mechanism, you can report on all transactions at once, whether they're shopping cart purchases, event registrations, donations, or anything else.

Supporting this module

Please contact the maintainer if you think this module will work for you, but you need additional help, advice and functionality not already included here. We can't provide support and new feature development for free, but you may able to get what you need from us for less than it would cost you to work around limitations or go a different route. That way, everybody wins!

Project Information

Downloads