We launched version 1.4 of the plugin last month, which included an overhaul of the gateway integration code and the addition of support for integrating with Stripe.

(If you haven’t upgraded, get the latest version now.)

Stripe is an interesting payment option as it allows you to accept credit cards on your site, but gets around the PCI Compliance issues by using javascript to tokenize the credit card information before passing it through your servers. What this basically means is that your checkout functions the same way as an Authorize.net or PayPal onsite checkout, but is much more secure.

Stripe’s fees are comparable to the other big gateways, though their structure is much more simple. It’s just just 2.9% + $0.30. That’s it. No monthly fees. No extra fees for gift cards or American Express. There chargeback fee is $15, which is less than I pay with Authorize.net now.

Stripe is a new company, and maybe hasn’t had enough time to rack up the complaints, but they seem to be doing everything right. Their signup is very fast. You can accept payments immediately. What we love most of all is how clear their API and API documentation is. You can tell that the system is built by modern day developers who understand how it is going to be used.

With regards to Paid Memberships Pro integration, some of the pricing options are unavailable out of the box if you are using Stripe. But you can do one-time checkouts, monthly or annual recurring payments, or a combination of those two. Free trials are possible, but billing cycle limits are not supported at this time.

Strip also has some features that we don’t take advantage of out of the box, like prorated upgrades/downgrades and the ability to update a user’s subscription without re-authorizing (e.g. for metered billing).

Nearly anything is possible with a little bit of work though. So get in touch if you have needs that are not supported out of the box.

Comments (18)

I have the same issue as reported by martuita.
When I use stripe in test mode, and even though I HAVEN’T set any trial period, it considers the first payment to be trial. I need to collect payment from first instance itself, but it’s forcing the trial period in test mode.

This is how our plugin integrates with Stripe. The subscription technically begins 1 period after checkout, so the initial payment is collected immediately and the member is “trialing” until their first subscription payment is made 1 period following. Users will never see this labeled as a “trial”, it is only obvious in your Stripe account.


I’m testing both PMPro and Stripe. Both on testing mode. When a test customer creates a suscription on PMPro, a suscription is, of course, created on Stripe.

The fake payment seems to be sucessful, but when I check the suscription created in Stripe it says “Trial ends in one month”. And the first invoice is 0 €. I haven’t configured the suscription on PMPro as trial. It’s 10 € now and 10 € each month. Does this happen in a live enviroment? In real life, is the payment done or not? Why does it appear as “trial” in Stripe?

And, on the other hand, I have another suscription level which is 0 € now and 15 € each month, and this one is not creating a suscription at all in Stripe. At least, not yet? Will it create it later?

I believe that what I mentioned before is happening because there are two different things:

1) the initial payment –> it seems to be charged by Stripe but Stripe doesn’t create an invoice.

2) the monthly suscription itself –> it starts one month later. Stripe creates the first invoice as 0 €. (Stripe trial)

So, what happens with the initial payment? how comes that it doesn’t generate an invoice?

We would be happy to take a look at your level pricing set up if you open a ticket in the support area. Make sure you are not setting an expiration or billing cycle limit on your level. We use “trials” to allow you to collect a one time payment at checkout then the recurring payment 1 period from checkout.

Is it true that if I use PMPro with Stripe that I do not need to be PCI compliant in the sense of passing some kind of assessment or validation test?

When someone checks out on your site with Stripe, the credit card number is sent directly to Stripe and is never passed through your server. Because of this, the PCI requirements for your site and server will be lower than if the CC number was passed through… and even more strict if your software/server stored credit card numbers.

Because Stripe acts as your “merchant account”, they would be the ones to demand that you perform more tests/etc for PCI compliance. It’s hard to make generalizations on what kind of PCI compliance activities are needed because it depends on each business, but in general, sites using Stripe tend to have fewer PCI compliance requirements. No site that I manage that uses Stripe is required to perform automated testing or submit written tests… although it can be a good idea anyway.

Hope this answers your question.

We are setting up a service membership that has a monthly metered fee attached. I’d love to be able to add Invoice Items to the next invoice with that month’s usage noted each month for each Member. I know you said that is not supported by PMPro out of the box, but what would it take to make that happen? Can you point me in the right direction to code it myself or has someone already done it as an add on somewhere or do you know a qualified dev that I might hire? Any guidance is much appreciated!

Here is some rough guidance. Depending on how smooth and automated a process you need, it could be a little bit or a lot of development work.

First step would be to pick a gateway that supports charging customers arbitrary amounts each month. The two most notable are Stripe and Braintree. Stripe in particular has some code in our v2.0 beta on GitHub for changing the amount of a customers subscription on the edit user page. So each month, you can manually change what they pay.

From there, you would probably want a way to automate that better (you could build your own UI around the “updates” or $order->susbcribe calls) and possibly add more information to the invoice RE what is being purchased.

Hope this helps.

I’m curious as to whether or not I can charge setup fees on a subscription with stripe. I’d like to do something like $99 setup with $49 monthly. Is this possible with PMPro & Stripe? Thanks in advance.

Leave a Reply

For faster support related to issues on your specific site please open a ticket in our members support area.

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