Paypal Payments Plugin for WordPress

All the PayPal plugins I’ve tested have fixed payment settings. This plugin is different. It allows the user to fill in a form with their reference number/ ID/invoice number and the amount to pay before submitting to PayPal.

It’s ideal for anyone who has variable payments: guest houses, B&B, hairdressers, dog walkers, window cleaners, builders, plumbers and so on.

And as simple as I can make it.

Once you have installed and activated the plugin just go to the settings page and enter your PayPal email address and the Currency.  Now go to your payment page and enter the shortcode [qpp]. That’s it, nothing else to do.

Click Here to Download the Plugin

Upgrade to Pro

The free version of the plugin will do the job but the upgrade lets you add multiple products and links customers to your Mailchimp account.

But there’s more…

Paypal Payments admin page

PayPal Payments admin page

You can:

  • Have multiple payment forms on your site,
  • Preset the ID and the amount
  • Let users select the quantity
  • List options for a product or service.
  • Edit any of the labels and error message
  • Style the form width, font, background and borders
  • Add your own custom CSS
  • Change the settings for thank you and cancel pages
  • Add coupon codes
  • Use WordPress queries
  • Link to Terms and Conditions
  • Calculate and display live totals

And it’s not just me

All these websites use the plugin as well. Or at least they did when I created the page.

People who use the plugin

Setting up and using the plugin

Here is my handy guide to setting up and using the plugin.

Some forms to look at

Here’s a page of example forms to play with.

Instant Payment Notification

If you have a PayPal Business or Premier account you can get instant payment notifications. Set this up on the IPN page of the plugin settings. If you need to check it’s working there is a guide to IPN simulation.


All the shortcodes are given on the plugin setup page. They are also published on this plugin shortcodes page.

Add your comment

  1. Matthew Lukas on 27 Feb 2019

    Getting this error all of a sudden on website
    Warning: implode(): Invalid arguments passed quick-paypal-payments.php on line 2404
    Any Ideas??

    • Graham on 28 Feb 2019

      It’s PHP being picky. In the plugin settings check the ‘disable debugging’ box.

  2. Peter F Barry on 26 Feb 2019

    I love the plugin but now I’m getting the following error and have been unable to fix it:

    Warning: A non-numeric value encountered in /nfs/c12/h06/mnt/218446/domains/ on line 2166

    • Graham on 27 Feb 2019

      Hi Peter,
      Trying to find a fix for this. Everything was fine until the latest version of PHP was released.

  3. Scott Holtz on 24 Feb 2019

    I am no longer getting payment emails and when I look at payments it shows nothing. I see the payment at PayPal but I can’t see it marked “completed”. We use this to pay for classes/workshops in advance and its gotten complex since late January.


    • Graham on 27 Feb 2019

      Hi Scott,
      Check your PayPal account settings and make sure there are no warning or notifications. Also check the IPN settings in your account.

  4. Julie on 17 Feb 2019

    I contacted you earlier today on the issue of a double payment in the IPN Simulator. I am also getting an error now on all my pages on the website:
    Warning: implode(): Invalid arguments passed in /home3/ricigsor/public_html/wp-content/plugins/quick-paypal-payments/quick-paypal-payments.php on line 2404
    What does this mean?

  5. Cindy Yager on 15 Feb 2019

    Hello again Graham,
    I am no longer receiving confirmation emails when orders are placed.
    Also, while PayPal is showing that payments are made, the Payments screen in the plug in is no longer showing Payment Complete. Do I need to remove the plug in and reinstall it? And will I then have to do the complete setup again? Thank you for any advice you can give.

    • Graham on 15 Feb 2019

      Hi Daisy,
      Check your PayPal account settings and make sure there are no updates needed. Sometimes PayPal needs extra verification. Do your customers get the autoresponder?

  6. Pippa Gunstensen on 02 Feb 2019

    Hello, can you help? I am getting this message appearing on my WP website and don’t know what it means.
    Warning: count(): Parameter must be an array or an object that implements Countable in /www2/de5/ on line 960

    The page that it is on is

    Could you tell me how to fix it please or what to do. I’m afraid I’m not technically very confident or knowledgeable.

    Many thanks

    • Graham on 02 Feb 2019

      You are using a very old and out of date theme and I suspect you have an old and out of date version of PHP. Upgrade your PHP to V7.3 and the error message should be resolved.

  7. Edmund Price on 01 Feb 2019

    Hello. I emailed you before. I have solved the issue with the amount input filed being removed. Apparently WordPress has converted the [qpp] into a widget (when added as a widget), instead of leaving the shortcode as-is. I readded your shortcode in a text document and all was good this time. Very crazy stuff. And thanks again for a great plugin. You Rock!

  8. Ed Price on 31 Jan 2019

    Hello. I’ve been using your plugin for a while without issues (thanks for that) and it worked fine as of the first week of January 2019. Now the “amount” value is no longer an input (fixed at “0.00”) and when the button is selected there is an error message that reads “oops I got a problem here”, “please check payment details”. I reinstalled your plugin today to see if that would fix the issue yet no luck. Would appreciate any help, and the page with the form is Thanks!

  9. Ted Meisky on 28 Jan 2019

    Graham, Any update on what why passing variables to the plugin via URL parameters isn’t working? Thanks much.


    • Graham on 29 Jan 2019

      It turns out passing variables in the URL is a big security risk. If they were encrypted then it could maybe work but I don’t have the skills to enable this. So it’s with reluctance that I’ve had to remove this feature. The problem is that the query could be intercepted and the amount changed. Someone could buy a $200 product or service for 1cent and because the transaction completed you would be obliged to honour the order.

  10. Cindy on 24 Jan 2019

    Graham, thank you so very much for your Quick Paypal Payments plug-in, and for your amazingly quick response to an error message I encountered today. I replaced only the “quick-paypal-payments.php” file and the error has vanished.
    Your work on this plugin and your support is greatly appreciated.

    • Graham on 29 Jan 2019

      Excellent! Thanks Cindy.

  11. Jean BOYER on 23 Jan 2019

    Hi Sir,
    I am having a problem with the amount shortcode key. If I put a single value, the plugin reports an error. If I put two values then it’s giving me an error.
    If I use the field (not a preset amount), I can input a single value in the fields and it works fine.

    [qpp id="Adhésion" amount="100,100"] this shortcode works fine.
    [qpp id="Adhésion" amount="100"] shows the error Oops, got a problem here… Please check the payment details and does not throw me to the paypal site.
    Is there anything wrong in my settings ?
    Thanks for your support.

    • Graham on 29 Jan 2019

      Can you send me a link to your payment page so I can take a look

  12. Geraldine on 23 Jan 2019

    Me again, Graham – curiouser and curiouser! I emailed a few minutes ago and just checked a different page to find that the recurring payments one I set up does return me to the cancellation page – but the one-off still doesn’t!

  13. Geraldine on 23 Jan 2019

    Hi Graham, long time since we last spoke! I have the Paypal plugin set up and working beautifully with one small issue: although I have supplied a Cancel page URL a test still sends me back to the payment page. I’ve cleared the cache and retried but this didn’t help. I’m using WordPress 5.03 and the Divi theme.

  14. Ted Meisky on 15 Jan 2019

    Is there a way to pass an amount to the plugin as a variable, ideally from a URL parameter or a shortcode? I saw that someone had asked a question that looked that’s what they were doing but I don’t see that documented anywhere and I haven’t been successful with anything I’ve tried.

    • Graham on 15 Jan 2019

      Hi Ted,
      There is a way to do this but it’s not working at the moment for some reason. As soon as it’s fixed I’ll send you and update.

  15. Joseph Connelly on 09 Jan 2019

    I think you instructions are outdated. PayPal does not give us an api username password or a key. Or I cannot find it. Any suggestions?

    • Graham on 10 Jan 2019

      Hi Joseph,
      I just need to add one more stop to the process. Go to your profile and then:
      My Selling Preferences > API access > Update > Manage API credentials

  16. Yixiao Chen on 11 Dec 2018


    Thank you for the Quick PayPal Payments plugin.
    I’m wondering if there is a way to use guest check out (credit card ) as a default landing page for customers? An example would be this:

    Thank you.

  17. Peter Farrell on 03 Dec 2018

    Good afternoon,

    I am trialling the FREE version but notice that after a day I am getting this error on all pages:
    Notice: Undefined variable: border in /xx/xxx/public_html/ on line 2145

    • Graham on 03 Dec 2018

      Hi Peter,
      PHP reports an error every time it finds a variable that hasn’t been defined. It doesn’t stop anything working it’s just annoying. I’ll get this fixed but in the meantime you just need to disable debugging.

  18. Paolo on 22 Oct 2018


    after the last update the Query stopped to work.

    We used to have urls with very simple query strings, like

    It worked perfectly, then it stopped. Can you check if there is some bug in the last release?


  19. Katie on 13 Sep 2018

    Hello! I’ve been using this plugin for a while – super easy and works awesome. Suddenly my coupon codes don’t work. MY website page adjusts to the discounted price after I enter the code but once it transfers you to PAyPal the discount is lost.

    Thank you in advance for your help.

  20. Levi Koelling on 05 Sep 2018

    I just thought I would post this here since I found what was causing my issue. If the “options” check box is used in the Form Settings you will get a bounce back from PayPal regarding incorrect address. I don’t know what the fix is, but I know if you use that then the form will not submit to PayPal.

    • Graham on 06 Sep 2018

      Hi Levi,
      Thanks for that. I’ll take a look and see if I can work out why this isn’t working. It will be something simple I’m sure as the PayPal reference library says this field isn’t validated.

Web Analytics