Payment Button for PayPal


Payment Button for PayPal plugin (also known as WP PayPal) allows you to easily create PayPal Buy Now, Add to Cart, Donation or Subscription type buttons. It generates dynamic buttons using shortcodes that enable PayPal checkout on your WordPress site.

Your customers will be able to pay for your products using PayPal or Credit Card. This plugin makes it easy for you to set up your online e-commerce store. You do not need to spend days configuring products and settings. All you need to do is insert a shortcode into one of your web pages and your website will be ready to go live.

Payment Button for PayPal supports PayPal Sandbox. PayPal Sandbox is a simulation environment which allows you to do test purchases between a test buyer and a seller account. This is to make sure that your store can process PayPal transactions without any issues. It also helps you get prepared before selling to real customers.

Payment Button for PayPal Add-ons

Payment Button for PayPal Features

  • Sell products or services using PayPal
  • Create PayPal buttons on the fly in a post/page using shortcodes
  • Accept once off payments
  • Accept recurring subscription payments
  • Accept donations from users
  • Use multiple PayPal accounts to accept payments
  • Allow users to add multiple items to the shopping cart and checkout
  • View or Manage orders received via PayPal buttons from your WordPress admin dashboard
  • Quick settings configurations
  • Enable debug to troubleshoot various issues (e.g. orders not getting updated)
  • Open PayPal log to see how IPN (Instant Payment Notification) is being received from PayPal
  • Accept debit or credit card payments
  • Accept recurring subscription payments on a daily, weekly, monthly or yearly basis
  • Switch your store to PayPal sandbox mode for testing
  • Sell in any currency supported by PayPal
  • Charge shipping on your products or services
  • Charge tax on your products or services
  • Send a purchase confirmation email to your customer after a transaction
  • Send a sale notification email to one or more recipients (e.g. the seller) after a transaction
  • Accept payments with PayPal smart payment buttons
  • Accept Pay Later Pay in 4 payments

Note: This is NOT an official PayPal product.

How to Use Payment Button for PayPal

Once you have installed this plugin you need to go to the settings menu to configure some PayPal settings (WP PayPal -> Settings).

PayPal Checkout Settings

These settings apply to the “[wp_paypal_checkout]” shortcode button. It uses the PayPal Checkout payment method.

  • Client ID: The client ID for your PayPal REST API app
  • Currency Code: The default currency code for payments
  • Return URL: The redirect URL after a successful payment
  • Cancel URL: The redirect URL when a payment is cancelled

PayPal Payments Standard Settings

These settings apply to the “[wp_paypal]” shortcode button. It uses the PayPal Payments Standard payment method.

  • PayPal Merchant ID: Your PayPal Merchant ID
  • PayPal Email: Your PayPal email address
  • Currency Code: The default currency code

Payment Button for PayPal Emails

Payment Button for PayPal plugin comes with an “Emails” tab where you will be able to configure some email related settings.

Email Sender Options

In this section you can choose to customize the default From Name and From Email Address that will be used when sending an email.

Purchase Receipt Email

When this feature is enabled an email sent to the customer after completion of a successful purchase. Options you can customize here:

  • The subject of the purchase receipt email
  • The content type of the purchase receipt email. The default is “Plain Text”. But you can also set it to “HTML”
  • The body of the purchase receipt email.

Sale Notification Email

When this feature is enabled an email is sent to your chosen recipient(s) after completion of a successful purchase. Options you can customize here:

  • The subject of the sale notification email
  • The content type of the sale notification email. The default is “Plain Text”. But you can also set it to “HTML”
  • The body of the sale notification email.

You can use various email tags in the subject/body of an email to dynamically change its content. You can find the full list of available email tags in the WordPress PayPal plugin page.

How to Create a PayPal Checkout Button

In order to create a PayPal Checkout button insert the shortcode like the following:

[wp_paypal_checkout description="test checkout product" amount="3.99"]

PayPal Checkout Shortcode Parameters

You can use additional parameters to customize your PayPal Checkout buttons.

  • description – Description of the purchase.
  • amount – The price of the product.

For more information check the PayPal Checkout documentation page.

How to Create a PayPal Payments Standard Button

In order to create a PayPal Payments Standard button insert the shortcode like the following.

PayPal Buy Now

Buy Now buttons are for single item purchases. In order to create a buy button you need to specify it in the button parameter of the shortcode.

[wp_paypal button="buynow" name="My product" amount="1.00"]

PayPal Add to Cart

Add To Cart buttons let users add multiple items to their PayPal shopping cart and checkout.

[wp_paypal button="cart" name="My product" amount="1.00"]

PayPal View Cart

View Cart buttons let users view items that were added to their PayPal shopping cart.

[wp_paypal button="viewcart"]

PayPal Donation

Donation buttons let you accept donations from your users.

[wp_paypal button="donate" name="My product"]

PayPal Subscription

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

Subscribe buttons let you set up payment subscriptions.

PayPal Payments Standard Shortcode Buttons Parameters

You can use additional parameters to customize your PayPal buttons.

  • type – The type of button to render (e.g. “buynow”, “cart”, “donate” or “subscribe”)
  • name – Description of the item.
  • button_image – Your custom button image URL (e.g. button_image=””).
  • button_text – Your custom button text (e.g. button_text=”Buy Now”).
  • number – The number of the item (Also known as SKU. e.g. number=”16″).
  • amount– The price of the item (e.g. amount=”4.95″).
  • currency – The currency of the item (e.g. currency=”USD”).
  • quantity – Quantity of items to purchase (e.g. quantity=”2″).
  • shipping – The cost of shipping this item. (e.g. shipping=”0.75″). If you specify “shipping” and “shipping2” is not defined, this flat amount is charged regardless of the quantity of items purchased.
  • shipping2 – The cost of shipping each additional unit of this item (e.g. shipping2=”1.25″)
  • handling – The handling cost of an item (e.g. handling=”2.5″)
  • tax – The flat tax amount for an item (e.g. tax=”2.99″).
  • tax_rate – The rate of tax for an item (e.g. tax_rate=”2.9″).
  • locale – The desired locale of the PayPal site (e.g. locale=”GB”). This feature is useful if you want to render the payment page in a specific language.
  • return – The URL to which the user will be redirected after the payment (e.g. return=””).
  • cancel_return – The URL to which PayPal will redirect the buyer if they cancel checkout before completing the payment (e.g. cancel_return=””).
  • no_shipping – This parameter allows you to control whether or not to prompt buyers for a shipping address (e.g. no_shipping=”1″). Allowable values: 0 – Prompt for an address, but do not require one (This is set by default), 1 – Do not prompt for an address, 2 – Prompt for an address, and require one.
  • undefined_quantity – Allow buyers to specify the quantity of the item on the payment page (e.g. undefined_quantity=”1″). This option is only used with a Buy Now button.
  • target – This parameter allows you to open a PayPal button in a new window or tab (e.g. target=”_blank”).
  • shopping_url – This parameter allows you to customize the Continue Shopping URL for the View Cart button (e.g. shopping_url=””).
  • business – This parameter allows you to override the seller account specified in the settings. You can specify either your PayPal merchant ID or email address in it (e.g. business=”HV3QO52MBTT34″ or business=””).
  • form_class – Your custom CSS class to target the button form (e.g. form_class=”ppbtn”). Multiple classes are supported (e.g. form_class=”ppbtn ppbtn2 ppbtn3″).

PayPal Add to Cart Button/Shopping Cart Specific Parameters

  • handling – Handling charges. This parameter is not quantity-specific, which means the same handling cost applies, regardless of the number of items on the order. (e.g. handling=”2.00″).

For detailed documentation please check out the Payment Button for PayPal plugin page.


If you are a non-English speaker please help translate Payment Button for PayPal into your language.

Additional PayPal Documentation


  • PayPal Checkout Button
  • PayPal Payments Standard Button
  • PayPal Orders
  • PayPal Email Sender Options
  • PayPal Purchase Receipt Email Settings
  • PayPal Sale Notification Email Settings


  1. Go to the Add New plugins screen in your WordPress Dashboard
  2. Click the upload tab
  3. Browse for the plugin file ( on your computer
  4. Click “Install Now” and then hit the activate button


Can I accept PayPal payments in WordPress using this plugin?


Can I accept one-time PayPal payments using this plugin?


Can I accept PayPal recurring subscription payments using this plugin?


Can I accept PayPal donation payments using this plugin?


Does this plugin support PayPal shopping cart checkout?


Can I accept WooCommerce PayPal payments using this plugin?

No. This is not a WooCommerce plugin.

Can I create a PayPal account using this plugin?


Can I set up a PayPal account for my client using this plugin?


Can I log in to my PayPal account using this plugin?



2023 ལོའི་ཟླ 10 ཚེས 26 ཉིན།
Can this work for video downloads & how to set up the process for the downloads after the consumer buys the video. Is there a plugin for that. thank you.
2023 ལོའི་ཟླ 4 ཚེས 15 ཉིན།
Great plugin and great support
2024 ལོའི་ཟླ 2 ཚེས 25 ཉིན།
<!– wp:paragraph –> <p class=””>No idea how to use. No documentation. No example shortcode. Only option seem to be to create new orders. I could not use this.</p> <!– /wp:paragraph –>
2022 ལོའི་ཟླ 4 ཚེས 14 ཉིན།
Great job, Noor. Only if PayPal’s implementation was 1/10 as easy as your plug-in. Question: is there a way to tie-in the short-codes with existing subscription plans in PayPal?
གདེང་འཇོག 39 ཡོངས་སུ་ཀློག

བྱས་རྗེས་འཇོག་མཁན། & གསར་འབྱེད་པ།

“Payment Button for PayPal” is open source software. The following people have contributed to this plugin.


“Payment Button for PayPal” has been translated into 14 locales. Thank you to the translators for their contributions.

ཁྱེད་ཀྱི་སྐད་ཡིག་ནང་ལ་ “Payment Button for PayPal” ཡིག་སྒྱུར་བྱོས།

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.


  • Added an option to append the purchase email to the sale notification email.

  • Added the label parameter to customize the PayPal button text.

  • Added an option to load PayPal Checkout scripts on every page.

  • Added support for the variable price add-on.

  • Added an action hook after the IPN is received.

  • Added an email tag to generate three digit random numbers.

  • Added an option to enable funding sources.

  • Made changes to the code that retrieve the plugin url and path.

  • Added an option to disable funding sources.

  • Better debug logging.

  • Additional check for the settings link.

  • Changed the order of variations and custom input fields.

  • Added email tag for variations.

  • Added support for PayPal checkout payment method.

  • Added support for email tags in the email subject.

  • Added button_text parameter to create PayPal buttons without images.
  • Added form_class parameter to target PayPal button form and apply custom styling.

  • A fixed amount can be specified in the donate button.
  • Added support for the custom donations add-on.

  • Made the PayPal buttons compatible with AMP.

  • Added a shortcode parameter to receive payments on separate accounts.
  • Added an option to enable/disable the receiver check.

  • Added an email tag for shipping address.

  • Added an option to disable ipn validation.

  • Added support for Contact Form 7.
  • Fixed a sanitization issue in the general settings.

  • Fixed a minor bug that was preventing From Name from saving into the database.

  • Added custom variable to order list.

  • Added support for Mailchimp.

  • Product name and price can be dynamically changed for a Buy Now button via query strings in the URL.

  • Made some security related improvements in the orders menu.

  • Added support for custom input. This can be used to show a custom text box at checkout where buyers can enter any data.

  • Product names are shown in the edit order interface.

  • Sale notification email can be sent to multiple recipients.

  • Added support for email options.
  • The orders menu now shows the email address of the customer.

  • Added support for variable subscription price.

  • Added support for variable quantity.

  • Added support for product variations add-on.

  • Added support for trial period 2 in the PayPal subscription button.

  • Added the shopping_url parameter for the View Cart button.

  • Removed unused JS from the plugin.

  • Added the notify_url parameter to send instant payment notification to a different URL.

  • Made the shopping_url parameter available for add to cart type buttons.

  • Made some security related improvements in the plugin

  • The plugin now shows more error messages if it fails to insert/update an order.

  • Merchant ID can now be entered in the plugin settings.

  • Added a view cart button for the PayPal shopping cart.

  • Charset is now set to utf-8 for all the buttons.


  • Fixed an issue where the add to cart button would open a new tab.


  • Shipping address is now displayed on a separate row in the order content area.


  • Updated the parameters in the subscribe button. This should fix the button image rendering issue on some websites.


  • Donate buttons now support the no_shipping parameter.


  • Made some improvements to the donate button.


  • Made some improvements to the orders menu.


  • Added support for custom field in the shortcode.


  • An action is now triggered after processing the PayPal ipn.


  • Fixed a warning notice in the orders menu.


  • Fixed a bug where the target attribute was not working.


  • Made some improvements to WP PayPal orders.


  • Made some improvements to the PayPal Buy Now button.


  • Fixed this admin notice: screen_icon is deprecated since version 3.8.0 with no alternative available.
  • Made some improvements to the add to cart functionality.
  • Fixed a PayPal error that occurred when an item was added to the shopping cart: Things don’t appear to be working at the moment. Please try again later.


  • Added an option to open a PayPal button in a new window or tab.


  • Fixed a bug where queries could be performed on orders on the front end.
  • WP PayPal orders are now also excluded from search.


  • Added a new action hook which will get triggered once the payment is processed by the plugin.
  • Added a new shortcode parameter to customize the default PayPal button.


  • Fixed an issue that was causing subscription payments to not get processed.


  • Fixed an issue that was causing this error – “Cannot load wp-paypal settings”.


  • Made some improvements so language packs can be enabled


  • Fixed a minor bug in the settings which was causing this error: “You do not have sufficient permissions to access this page”.
  • Plugin strings are now translatable.


  • PayPal Button plugin is now compatible with WordPress 4.3


  • First commit