How to Create a PayPal Subscription Button in WordPress

In my PayPal Button plugin there are certain shortcode parameters that you can use to create a PayPal subscription button and accept recurring payments from your WordPress site.

PayPal Subscription Button Parameters

Before getting into adding a shortcode lets take a look at the parameters available for a subscription/recurring payment button.

Button

Type of payment button. For a subscription button you need to specify button=”subscription”.

a3

Regular subscription price. This would be a numeric value.

p3

Regular subscription duration between each billing. This would be a numeric value based on t3.

t3

Regular subscription units of duration. Allowable values are:

  • D – for days; allowable range for “p3” is 1 to 90.
  • W – for weeks; allowable range for “p3” is 1 to 52.
  • M – for months; allowable range for “p3” is 1 to 24.
  • Y – for years; allowable range for “p3” is 1 to 5.

Src

Settings this value to 1 will make a subscription payment to recur. You don’t really have any reason to set this to 0. But if you do so the payment will not recur, which means it will be a one-time payment (like a buy button).

Srt

Number of times a subscription payment will recur. This would be a numeric value with a range of 2 to 52. You don’t need to specify it if you want the subscription to continue until cancelled.

Subscription with No Recurring Times

Example 1

[wp_paypal button="subscribe" name="My product" a3="2.99" p3="1" t3="M" src="1"]

If your currency is USD, It means $2.99 USD for each month. The subscription will continue to recur until cancelled.

Example 2

[wp_paypal button="subscribe" name="My product" a3="3.50" p3="2" t3="W" src="1"]

If your currency is USD, It means $3.50 USD for each two weeks. The subscription will continue to recur until cancelled.

Subscription with Recurring Times

Example 1

[wp_paypal button="subscribe" name="My product" a3="2.99" p3="1" t3="M" src="1" srt="4"]

It means $2.99 USD for each month, for 4 installments. After this the payment will not recur anymore.

Example 2

[wp_paypal button="subscribe" name="My product" a3="3.50" p3="2" t3="W" src="1" srt="6"]

It means $3.50 USD for each two weeks, for 6 installments. After this the payment will not recur anymore.

Subscription with Trial

You can use some additional parameters to offer a trial with your recurring/subscription payments.

a1

Trial period price (similar to a3 parameter). In order to offer a free trial you can specify 0.

p1

Trial period duration (similar to p3 parameter).

t1

Trial period units of duration (similar to t3 parameter).

Example 1

[wp_paypal button="subscribe" name="My product" a1="1.99" p1="10" t1="D" a3="2.99" p3="1" t3="M" src="1" srt="4"]

It means $1.99 USD for the first 10 days, then $2.99 USD for each month, for 4 installments. After this the payment will not recur anymore.

Example 2

[wp_paypal button="subscribe" name="My product" a1="1.49" p1="1" t1="M" a3="3.49" p3="1" t3="M" src="1"]

It means $1.49 USD for the first month, then $3.49 USD for each month. The subscription will continue to recur until cancelled.

Subscription with Free Trial

Example 1

[wp_paypal button="subscribe" name="My product" a1="0" p1="1" t1="M" a3="2.99" p3="1" t3="M" src="1"]

It means free for the first month, then $2.99 USD for each month. The subscription will continue to recur until cancelled.

Check out the PayPal Button Plugin page for more information.
Disclosure: This page may contain affiliate links. If you follow one of those affiliate links and purchase something it will provide me with a little bit of a commission. This costs you nothing extra but helps maintain my site, free plugins, and themes. So I thank you for your support.

60 thoughts on “How to Create a PayPal Subscription Button in WordPress”

  1. Does this also work for recurring donations?

    Reply
    • @Carolynne, It’s for accepting subscription payments. Donation is a different type of payment method.

      Reply
  2. Is there a button to cancel subscription payments?

    Reply
    • @Adriano, Not the at the moment unfortunately. However, your customer will be able to cancel from their PayPal account.

      Reply
  3. Great plugin!

    2 questions:

    Does this catch the logged in member’s username who paid for subscription? If not, how can that be included?

    Thanks!

    Reply
    • @Girl, Unfortunately it doesn’t track any logged in username. However, the email address used to make the purchase should be included in the orders menu.

      Reply
  4. Thanks.

    An issue with that though is if the member has a different paypal email than the one they used on the site.

    Which database table does it store the payments?

    Reply
    • @Girl, It doesn’t have a database table. The plugin uses WordPress custom post types.

      Reply
  5. Hi, is there a way I can center the Paypal subscribe button?

    Reply
  6. Hi, what if we want the subscription to always occur and not end, so the subscriber would just to cancel on their own? What is the shortcode for a monthly subscription of $5 per month that never ends?

    Reply
  7. Never mind that last comment. I got my answer. You can delete that last comment.

    Edit this comment to: “Great plugin and it works well. Also, your documentation is easy to understand”.

    Reply
  8. Can I can change to “Button Text” from “Subscribe” to something else, like if I want to change this into French language, can I do this?

    Reply
    • @Barjinder, You can actually use a custom button image in the shortcode.

      Reply
  9. Hello. Looks great. But is it possible to set a trial period for 7 days and then monthly subscription for 20 USD. How would a string like that look like? Is the one below correct?
    And what I want its to be set to EUR instead of USD?

    [wp_paypal button="subscribe" name="My product" a1="0" p1="1" t1="W" amount="20.00" recurrence="1" period="M" src="1"]

    Reply
    • @Staffan, It looks good. You can add the “currency” parameter in the shortcode to use a different currency. For example:

      [wp_paypal button="subscribe" name="My product" a1="0" p1="1" t1="W" amount="20.00" recurrence="1" period="M" src="1" currency="EUR"]

      Reply
      • And what will happen after a week? Will the subscription just continue with the payment if the user haven’t unsubscribed via PayPal?
        And will I get an e-mail from PayPal when a new subscriber is subscribing or unsubscribe? Or how can I tell if the subscriber is still doing it or not?

        Reply
        • Does anyone have an answer to my question above?
          “And what will happen after a week? Will the subscription just continue with the payment if the user haven’t unsubscribed via PayPal?
          And will I get an e-mail from PayPal when a new subscriber is subscribing or unsubscribe? Or how can I tell if the subscriber is still doing it or not?”

          Reply
          • @Staffan, Yes it should automatically charge the customer after the free trial. I don’t know whether PayPal will send a confirmation email because I haven’t really tested this feature.

  10. Hi is there a way that the user will pay and recurring it until 16months, then it will email the user if they want to continue to pay for another 16months? Thanks

    Reply
    • @Driel, I don’t think PayPal has this option at the moment.

      Reply
      • How about when I set the shortcode to Recurrence until 16months?, is it gonna stop automatically or gonna execute the process again to the beginning?

        thank you for responding so quickly

        Reply
        • @Driel, That should work fine I believe.

          Reply
  11. Thanks so much. At least, I understand clearly how it works. The examples are actually useful.

    Reply
  12. Is there a way to add quantity and tax as a parameter to the subscribe button? I’ve tried adding tax but it does not appear upon checkout. I’ve tried the below two shortcodes for tax but they only show $49.21 when the customer is taken to PayPal. As a workaround, I’ve changed the product name to state that tax is included but I would much rather a proper way to account for tax and provide the customer with the ability to purchase more than one subscription.

    [wp_paypal button="subscribe" name="Soap Club Monthly Subscription plus tax" amount="49.21" recurrence="1" period="M" src="1" tax="1.00"]

    and I’ve also tried
    [wp_paypal button="subscribe" name="Soap Club Monthly Subscription plus tax" amount="49.21" tax="1.00" recurrence="1" period="M" src="1"]

    Any assistance will be appreciated.

    Thanks,

    Amy

    Reply
  13. Hi, how will I know if a user cancels his subscription on PayPal? Because I would want to cancel his service if he stops paying!

    Reply
  14. Things don’t appear to be working at the moment. Please try again later. on click the “Subscribe using a debit or credit card”. Why this is show .

    Reply
  15. I installed the plugin, enter my paypal email and saved the settings.

    I am now trying to paste the ShortCode [wp_paypal button="subscribe" name="My product" amount="1.00" recurrence="1" period="M" src="1"] into a payment page. However, when I go to that page, it does not show the button (or anything related to this button) on the page. Just blank.

    What am I missing?

    Reply
    • @Rob, You mean you inserted that shortcode into a WordPress post/page? Are you using the new block-based editor or the classic editor?

      Reply
  16. Salam,
    Can I combine these shortcodes?
    For example; i need subscription button to be opened in new tab & %5 tax so the shortcode shall be as = [wp_paypal button="subscribe" name="Tech" amount="3.99" recurrence="1" period="W" src="1" tax_rate="5.00" target="_blank"] = meaning Tech named product to be subscribed for 5.00$ per week with %5 tax to be added on each payment & the payment will be done on new tab & the subscription will continue until it is cancelled = right?
    On the other hand; if i cant combine the listed shortcodes how to have many specs in one button (like opening on new tab + adding success page & cancel page + discounts + free trials etc)?

    Reply
    • @BPW, You cannot have multiple buttons/options in the same shortcode.

      Reply
  17. hello, is that possible to customize subscribe button, the shortcode seems only work for buy now button. If not, how can I have the button in italian?

    regards
    Lorenzo

    Reply
    • @Lorenzo, What shortcode are you using?

      Reply
      • I tried this [wp_paypal button="subscribe" name="Dominio e hosting base" amount="50" recurrence="1" period="Y" src="1" button_image="https://www.eclecticweb.design/wp-content/uploads/2020/01/paga-adesso.png"] but doesn’t work, while it works if the button is wp_paypal button=”buynow”

        Reply
        • Sorry now it works, the formatting was wrong

          Reply
  18. I have the following code but for some reason it is not occurring as “recurring subscription” in PayPal and yet it seems to have the correct parameters. Every thing was fine until the latest WPPayPal update.

    The page is the Clan Business and Membership link on the header.

    Can you assist?

    Thank you,
    Chris

    [wp_paypal button="cart" name="Family Subscription-email newsletter" amount="30.00" recurrence="1" period="Y" src="1"]

    Reply
    • @Chris, button=”cart” creates an add to cart button.

      Reply
      • Thanks Noor.

        So does the “cart” override the “recurring” option?

        If so, any way around it, as I would like to have the “Newsletter” option separate from the “Subscription” option?

        Thanks,
        Chris

        Reply
  19. Hi Noor.
    I guess that no response from you to my question means that having a subscription payment added to the cart negates the recurring subscription option?
    Thanks
    Chris

    Reply
    • @Chris, A cart is where you can add multiple items for a one-time payment. That’s not the same as a subscription (a recurring payment). There is a separate shortcode for each type of button in this plugin.

      Reply
  20. Thanks for the clarification on that Noor.

    The WordPress PayPal payment system works very well, thank you, but a pity (form us anyway) that the cart doesn’t accommodate that flexibility, but I get it.

    Reply
  21. Hello!
    I wish to customize the payments option for WP PAYPAL plugin. I need some help. I wish to have payments button instead of donation. Can someone help me with this?

    Reply
    • @Shashi, The plugin also supports buy now and add to cart type buttons.

      Reply
  22. Is it possible to have this without the need to click “return to merchant” after payment completion?

    Reply
  23. I am having trouble getting my subscription to work. I have made sure that my PayPal business account does not require encryption and does not have a return URL. But it still does not work.

    I have this in testing mode.

    Here is my shortcode.

    [wp_paypal button="subscribe" name="Starter" amount="180.00" recurrence="1" period="M" src="1"]

    I get the message:

    “Things don’t appear to be working at the moment. Please try again later.”

    Interestingly, I tried a different shortcode and got closer.

    [wp_paypal button="subscription" name="Starter" amount="180.00" recurrence="1" period="M" src="1"]

    This gave me a button with the title “undefined”.

    This brought me to the PayPal login. I could see the amount at the top. But I was unable to login to my account (even though I have validated that I can previously). It gives me the following message.

    “Some of your info isn’t correct. Please try again.”

    Help please!

    Thanks,
    Dale

    Reply
    • @Dale, There might be something wrong on the PayPal’s end. I copied and pasted the exact shortcode onto my site. It took me to the PayPal payment page without any error.

      Reply
      • Thank you for responding. I went to PayPal and created the button directly, worked great.

        Reply
  24. 1) I’ve attempted to assign my own images to the buttons but they are not displaying to replace the default images.

    2) The Buy Now buttons are working fine connecting to PayPal, but I’m having issues with Subscribe buttons. I get the same error message that Dale Ferrario posted on April 4, 2020, “Things don’t appear to be working at the moment. Please try again later.” I’m still in testing mode, but you can view the buttons I’ve created at https://expectingnewlife.com/mentorship-program.

    3) When I attempt to complete a test transaction, the PayPal login page tells me my info isn’t correct, but I’m 100% certain that it is. Could the problem be that I’m trying to make a purchase from myself?

    I am needing to create a total of 12 buttons – 6 buy now and 6 subscriptions – so your help would be appreciated.

    Reply
  25. We need to have customers input text WITH their subscription. Is there anyway to do that?

    Reply
    • @Ben, You mean they will state what they are paying for?

      Reply
      • Basically, yes. They actually need to give us information (their domain name) WITH their subscription purchase.

        Thanks.

        Reply
        • @Ben, There is no way to enter additional information for a subscription. If you leave the item name parameter empty (name=””) it will show a description box on the payment page.

          Reply
  26. The subscription button isn’t working. I entered this code into a short code block,

    [wp_paypal button="subscribe" name="My product" a3="22.20" p3="1" t3="W" src="1" srt="20" target="_blank"]

    It opens PayPal into a new window with an error that says,
    “Things don’t appear to be working at the moment. Please try again later.”

    I don’t know what to do. 🙁

    Reply
    • @Kelly, Please provide a link to the page in question so I can take a look.

      Reply
  27. Is there a way to add shipping to a subscription short code?

    Reply
    • @Mari, PayPal only supports shipping for buy now and add to cart buttons.

      Reply
  28. Hello,
    great plugin.

    I have a question about setting up a subscription with recurring times. I’ve set srt=”12″ and would assume that after 12 installments, the payment will NOT recur anymore.

    However, when I place a test order through PayPal, the order text reads, “Subscription Details:$4.70 USD for each month, for 12 installments (Renews until you cancel)”

    This seems to indicate that the subscription will renew automatically, instead of payments stopping after the 12 installments. What have I misunderstood?

    Here is the button short code:
    [wp_paypal button="subscribe" name="Plague Birds 2021 Month To Month Comic Calendar International" a3="5.35" p3="1" t3="M" src="1" srt="12" no_shipping="2" return="http://www.nationalwastecomics.com/thank-you/"]

    Thanks for your help!

    Reply
    • @Leif, Your setup looks correct. I think what PayPal is trying to say is that the payment will continue to recur within this period (12 installments) until cancelled.

      Reply
      • Noor, Thanks for your reply. That’s what I was hoping, but it wasn’t 100% clear. cheers.

        Reply
  29. Is there a way to define multiple different subscription options in a drop down then have the user select the one they want? We want to be able to have users select from:

    3 months @ $30.00 per month
    6 months @ $27.00 per month
    12 months @ $24.00 per month

    Reply
    • @AndyP, This is not possible at the moment.

      Reply

Leave a Comment