We’ve just added a new guide for writing a payment gateway plugin for Paid Memberships Pro. The guide provides an overview of the steps to writing your gateway plugin and outlines the hooks and filters that may be used in your gateway (with reference to the appropriate hook/filter documentation).

Payment Gateway Plugin Development Guide

Download The Example Gateway Plugin

You can use the gateway plugin linked to below as a starting point for your new gateway development. Not all hooks and functions will be needed for your gateway class, it just depends on the gateway you are integrating and how that integration works.

Download Example Gateway View on GitHub

If you run into questions, it may be useful to reference an existing gateway class, such as a our Stripe gateway class. You can view all gateway classes in the GitHub repository here.

Contribute Your Gateway to Paid Memberships Pro

We’re 100% GPL and Open Source and we hope you will consider sharing your code with the Paid Memberships Pro Community. Once your gateway is complete, please email info@paidmembershipspro.com with a link to your plugin on GitHub. We will review the code and publicize it to our community.

This entry was posted by Kimberly Coleman in General and tagged . Bookmark the permalink. Last updated: June 12, 2015. Titled Updated Documentation on Writing a Payment Gateway Plugin

Comments (6)

Thanks for the example plugin. I’ve been busy creating a gateway for Authorize.net CIM for the past few weeks. I’ve got it working now, but in the admin area, PMPro keeps giving me a notification saying to “Setup your SSL certificate and payment gateway”.

I’ve also noticed the Currency and Tax settings are missing from the Payment Gateway & SSL page. Everything else is showing up there, so not sure what’s wrong.

I’ve gone through the example you posted and triple checked my code against it (as well as the Stripe and Authorize.net gateways), and everything seems to be in order.

And everything works in terms of checking out, updating billing info, etc. It’s all working and showing up in the database, but I keep getting the notification in the admin panel.

Every time I save the settings, it gives me the successfully updated message, but as soon as I click to another tab, it hits me with the “Setup Your SSL Certificate and payment gateway” message again.

Any ideas would be appreciated greatly.

Are you a PMPro member? Can you post RE each issue to our member forums? Can you share your code somewhere where we can see it and possibly contribute? (GitHub?) If you agree to share the plugin under the GPL, we can give you a free PMPro account to help you out with this.

That would be awesome. I’ll freely admit that I’m brand new to php and I can use all the help I can get. lol

I’ve just added everything to GitHub (hopefully I did that right because I didn’t even know what GitHub was until just now).

Not sure what the proper protocol is for sharing this with you, but you can find it here:


Thank you so much for the awesome PMPro plugin… AND for the free account. I’m sure it’s going to come in handy. I just hope you don’t laugh too hard at the messy comments that are still littering my code for right now. hahaha


Any word yet on the free account? That would be handy. I”ve got it posted on GitHub for you…

Thank for the plugin, it is very useful!
I’m using it to integrate authipay as payment gateway.
The better thing would be redirect the payment to authipay page, but I’m not sure if it’s possible with the example plugin. Is it easy to have it?
Otherwise, I need to indicate in the form a “successful url” but I’m not able to understand how. Can i find an example to have it in other pmpro gateway class?

Thank you,

Leave a Reply

Your email address will not be published. Required fields are marked *