If your payment gateway of choice is not available for Paid Memberships Pro, there are a few ways you can go about getting it added.
1. Organize a mob. If we start getting lots and lots of requests for a certain payment gateway, we will consider using our development time to add it as an option. Depending on the complexity of the gateway, we’ll probably take a look after 10 people reach out about a gateway and get to work after about 20 people contact us about it.
2. Program it yourself. In the v2.0 beta, we’ve made easier to add new gateways into Paid Memberships Pro. Our “gateway” class can be easily extended to support a new gateway (if you do the work of integrating with the gateway API) and it’s a fairly straightforward process to add the gateway as an option to the admin and checkout pages. Once v2.0 is released (no ETA) we will write up docs for how to build a new gateway class. Here are the general steps. Which of these you have to do and how will depend on how the gateway API works.
- Create a new plugin to house your gateway addon.
- Make a copy of the class.pmprogateway.php file and include it in your plugin.
- Update the process, authorize, void, charge, susbcribe, update, cancel, getSubscriptionStatus, and getTransactionStatus function to work with your gateway.
- Add an init method to your gateway class. (Can use the Stripe gateway class for reference.)
- Add a pmpro_payment_options method to add your gateway as an option.
- Add pmpro_payment_options and pmpro_payment_option_fields methods to add the options for your gateway.
- Add a pmpro_checkout_preheader method to add code to run before the checkout page is loaded.
- Add a pmpro_checkout_order method to filter the order at checkout.
- Add a pmpro_after_checkout method to run code after a successful checkout.
- The Stripe Gateway class also has some examples of how to override the billing and payment fields and the user profile fields. If you are integrating with an offsite gateway, look to the PayPal Express gateway class for an example.
If you are working on this, get in touch with me and I will answer any questions you have. View our v2.0 repo on GitHub.
Hire us to do it. Depending on the complexity of the gateway API, it will cost about $2-$4k to add it as an option for Paid Memberships Pro. We are willing to take on 50% of this cost, so it will cost you about $1-$2k to have us build integration for a new gateway. If you can find some others who need the same functionality, you can split the cost among the group. Update: We are no longer taking on projects like this. Instead a third party developer needs to be ready to take on the main programming and maintenance effort for any new gateway. We will help by advising you (reach out via email, our forums and/or Slack).