Payment Button for PayPal (also known as WP PayPal) plugin connects PayPal to your WordPress site and makes e-commerce available for you.
Payment Button for PayPal plugin uses the PayPal API to create a checkout process for your customer that is fast, easy, and intuitive. With one simple shortcode, you can add a secure payment button to your website that lets you accept credit card, debit card, and PayPal payments from any mobile device, tablet, or PC.

Note: This is NOT an official PayPal product.
Features
- Accept PayPal and PayPal Credit payments
- No monthly fee
- Accept credit cards and debit cards
- Optimized mobile checkout experience
- Accept one-time payments
- Simplified PCI compliance
- Accept donations
- OneTouchTM enables checkout with a click of a button
- Accept 25 currencies from over 200+ countries and markets
- Accept PayPal Pay Later (Pay in 4) payments
- Accept payments with PayPal smart payment buttons
- Accept PayPal Checkout payments (previously known as Express Checkout)
How to Install Payment Button for PayPal in WordPress
- Login to your WordPress admin dashboard
- Go to Plugins->Add New Plugin
- Enter Payment Button for PayPal naa986 in the search box
- Once you find the plugin hit the install button
The plugin can also be downloaded from here: https://wordpress.org/plugins/wp-paypal/. For a manual installation go to Plugins > Add New Plugin > Upload Plugin and select the zip file that you downloaded.
How to Configure Payment Button for PayPal in WordPress
Once you have installed the plugin you will be able to access the settings by navigating to “WP PayPal -> Settings”.

General Settings
In the general settings area, you will need to configure some options related to your PayPal merchant account.
PayPal Checkout Settings
These settings apply to the “[wp_paypal_checkout]” shortcode. It uses PayPal Checkout payment method to add smart payment buttons to your website. To use PayPal Checkout, REST API credentials are required. To Generate REST API credentials for the sandbox and live environments:
- Log in to the Developer Dashboard with your PayPal account credentials.
- On My Apps & Credentials, use the toggle to switch between live and sandbox testing apps (If you are creating a Sandbox app, you will also need to select a test business account that will act as the API caller).
- Navigate to the REST API apps section and click Create App.
- Type a name for your app and click Create App. The app details page opens and displays your credentials.
- Copy and save the client ID and secret for your app.
- Review your app details and save your app.
Once you have the Client ID and Secret Key you can enter it in the plugin settings.

You also need to configure the following options.
Currency Code: The default currency of the payment
Return URL: The URL to which customers will be redirected after payments.
Cancel URL: The URL to which customers will be redirected when payments are cancelled.
Checkout Page URL: The URL of the page where PayPal checkout options will appear.
Enabled Funding Sources: Funding sources that you wish to display as buttons at checkout. This is not required as the eligibility is determined automatically. However, this field can be used to ensure a funding source is always rendered, if eligible.
You can enter one or more sources in comma-separated format. Here are the supported values:
| Funding Source | Description |
|---|---|
| card | Credit or debit cards |
| credit | PayPal Credit (US, UK) |
| paylater | Pay Later (US, UK), Pay in 4 (AU), 4X PayPal (France), Später Bezahlen (Germany) |
| bancontact | Bancontact |
| blik | BLIK |
| eps | eps |
| giropay | giropay |
| ideal | iDEAL |
| mercadopago | Mercado Pago |
| mybank | MyBank |
| p24 | Przelewy24 |
| sepa | SEPA-Lastschrift |
| sofort | Sofort |
| venmo | Venmo |
Disabled Funding Sources: Funding sources that you do not wish to display as buttons at checkout. You can enter one or more sources in comma-separated format. Here are the supported values:
| Funding Source | Description |
|---|---|
| card | Credit or debit cards |
| credit | PayPal Credit (US, UK) |
| paylater | Pay Later (US, UK), Pay in 4 (AU), 4X PayPal (France), Später Bezahlen (Germany) |
| bancontact | Bancontact |
| blik | BLIK |
| eps | eps |
| giropay | giropay |
| ideal | iDEAL |
| mercadopago | Mercado Pago |
| mybank | MyBank |
| p24 | Przelewy24 |
| sepa | SEPA-Lastschrift |
| sofort | Sofort |
| venmo | Venmo |
Email Settings
In the email settings area, you can choose to configure some email related settings.
Email Sender Options
In this section, you can specify a From Name and From Email Address that will be used by the WP PayPal plugin when sending an email. You can leave them empty to use the default.

Purchase Receipt Email
WP PayPal plugin allows you to send a purchase receipt email to the customer after completion of a successful purchase. By default, this feature is disabled. In order to use this feature, you need to enable it in the settings.

You can customize the following options in the purchase receipt email,
- Purchase Receipt Email Subject: The subject line for the purchase receipt email. You can use various tags in the email subject to dynamically change its content when it is sent.
- Purchase Receipt Email Type: The content type of the purchase receipt email (Plain Text/HTML).
- Purchase Receipt Email Body: The main content of the purchase receipt email. You can use various tags in the email body to dynamically change its content when it is sent.
Sale Notification Email
WP PayPal plugin can send a sale notification email to your chosen recipient after completion of a successful purchase. By default, this feature is disabled. In order to use this feature, you need to enable it in the settings.

You can customize the following options in the sale notification email,
- Sale Notification Email Recipient: The email address that should receive a notification anytime a sale is made.
- Sale Notification Email Subject: The subject line for the sale notification email. You can use various tags in the email subject to dynamically change its content when it is sent.
- Sale Notification Email Type: The content type of the sale notification email (Plain Text/HTML).
- Sale Notification Email Body: The main content of the sale notification email. You can use various tags in the email body to dynamically change its content when it is sent.
Email Tags
The following email tags can be used in the email subject/body to dynamically change its content when an email is sent,
{first_name} – The customer’s first name.
{last_name} – The customer’s last name.
{txn_id} – The unique transaction ID for this purchase.
{product_name} – The name of the product purchased.
{item_names} – The name(s) of the product purchased.
{mc_currency} – The currency code used to make the payment.
{mc_gross} – The full amount of the customer’s payment.
{payer_email} – The customer’s email address.
{custom} – A pass-through custom variable for your own tracking purposes.
{shipping_address} – The customer’s shipping address.
{variation} – The variation of the product purchased.
{threedigitdiffrandnum} – A random 3 digit number. The generated numbers will be unique if the tag occurs multiple times in a single email message.
PayPal Checkout
With the PayPal Checkout payment method (previously known as PayPal Express Checkout), you can create smart payment buttons to accept one-time payments with our plugin.
Product
To create a buy button you need to create a product first (WP PayPal > Products). You can then add a shortcode block from your WordPress post/page editor and insert the following shortcode into it.
[wp_paypal_product id="1"]
Replace 1 with the actual product ID.
Publish/update the page and you will see the button on the front end. Clicking this button will take you to the checkout page where payment options will appear.
Checkout
In order for the payment options to appear, your checkout page needs to contain the following shortcode.
[wp_paypal_checkout]
This will show the eligible payment methods the at checkout.

PayPal Checkout Add-ons
PayPal Checkout payment method comes with various add-ons that you can use to enhance its functionality on your website.
Variable Price
Variable Price add-on shows a price input field with your PayPal Checkout button. This lets buyers set the amount they wish to pay.
Mailchimp Integration
Mailchimp Integration add-on can automatically add the buyer’s email address to your chosen Mailchimp audience/list after a PayPal Checkout payment.
Custom Input
Custom Input add-on shows a text box with your PayPal Checkout buttons. The text box can be used to collect custom data from buyers at checkout. This is really useful if a buyer would like to include a custom note or special instructions.
Contact Form 7 Integration
Contact Form 7 Integration add-on can show a pre-configured PayPal Checkout button after a form submission. This allows buyers to make payments after a Contact Form 7 type form is submitted.
Product Variations
Product variations add-on can be used to set up variations for your PayPal Checkout buttons.
Order Export
Order Export add-on can be used to export order data to a CSV file.
Manage PayPal Orders
When you receive a new order it will appear in the Orders menu.

If you sell different products how do you get the info on what product was sold? All you get is a transaction id, no product name.
@Rose, What shortcode are you using?
I did find the product name in the array of the sale. I would like to see it on the displayed spread sheet along side the transaction code or in place of it.
Hello,
My website has been set up with my developpers PayPal account. It’s now online and I’ve tried to manage the account in the plugin settings by typing mine. But my developers account is still on and my modification hasn’t been registered.
What can I do, besides calling my developper who is currently on holidays in Asia, of course ?
Thank you for your reply.
@Damien, It should go to your account once you update the PayPal email address in the plugin settings. Please provide a link to the page where you have a button so I can take a look.
hello,
wondering if it is possible to add a percentage for sales tax? and will you be updating the plugin to allow for custom button art to be used with the quantity option?
@alexis, What type of button are you using?
I would like to apply a donation button onto my website, but where do I place the code?
@Larry, You can place the shortcode for a donation button anywhere on your site.
Hello!
I’m trying to test the functionality before I publish my event, so I have the Enable Test Mode checked.
Once I complete successfully the test payment through paypal sandbox, I expect to have a new item in my order list but there is nothing. Am I doing something wrong?
Thanks in advance.
Regards
@Antonia, Do you have the debug option enabled in the settings? If not please enable debug, reset the log file and do a test purchase afterward so I can take a look. You can send the content of the log file using the contact form on the site.
Hi there,
I like the Addon, but it isn’t working (no button visible) on Edge and Chrome?
Is there a mistake from my side?
Thank you 🙂
Stephan
@Stephan, What shortcode are you using?
Hi, I have used the plugin but the buttons are not appearing on the page. What have I done wrong?
Thanks
@Paul, What shortcode are you using?
[wp_paypal button="subscribe" name="£30 Subscription" amount="30.00" recurrence="1" period="W" src="1"]and
[wp_paypal button="buynow" name="£30 Lesson" amount="30.00"]Thanks
@Paul, The code looks fine. Are you using the new editor? If so have you embedded it as a shortcode block?
I am using elementor. I have added it as a shortcode on the page using elementor. Through the classic editor in text view the code looks like this:
[wp_paypal button="subscribe" name="£30 Subscription" amount="30.00" recurrence="1" period="W" src="1"]One-off Payment
Click the button below to make a one-off payment of £30.
[wp_paypal button="buynow" name="£30 Lesson" amount="30.00"]@Paul, Thanks. I’m not sure why WordPress is not being able to parse the shortcode. It looks correct. What happens if you disable elementor?
Hello
Can I have a box for the customer to add information with subscription button.
I know paypal has said they are not doing this, but the program I am using does and it works, the only issue I have with the program I am uing is I dont have a manage orders area in dashboard like yours.
Hi, I finally got the paypal plugin to work with your help. Thank you! Now, I’m trying to refine it by adding sales tax and it’s not working yet.
This is the shortcode I’m using:
[wpecpp name="Chair YTT" price="475.00" tax="30.16"]Can you help? Also, ideally I would use a percentage not dollar value. Is there a way to do that?
@Karen, This shortcode is not ours. I believe you are using a different plugin.
Hello. How can I check if a payment has been successful or not?
@Stefano, Do you see a new order in the “Orders” menu?
I set up buttons on a client’s website and got word last night that a product was sold but he never got notification. His email address is setup and the settings but so was “Check this option if you want to enable PayPal sandbox for testing” — should I not have checked testing? Or should I check debug? The worst thing to happen is for clients to lose money with me. Please help.
Also, nothing shows in Orders
@Craig, PayPal sandbox is for testing purpose. PayPal offers this option so you can check whether your website is ready to accept payments before going live (no actual money is charged unless you make a purchase in live mode).
Did you have the debug option enabled before this purchase? If so please check the log file for details.
I could not get it toward.
I used a sandbox account from PayPal and although the transaction went through, it did not show in the “All Orders” page of the plugin.
@Achilleas, The order will only get registered if it’s in a “completed” state.
Is there a way to do flat-rate shipping for all orders?
@Danielw, Have you tried the shipping parameter in the shortcode?
Hi @admin, Thank you for your reply. I have used that parameters. What I am trying to do is charge a flat fee regardless of how many products are purchased. I have a catalog of roughly 20 products.
Does this plugin work outside of USA?
eg New Zealand
@Dane, It should work where PayPal is available.
POST
https://www.sandbox.paypal.com/webapps/billing/api/billagmt/undefined/createCart400 (Bad Request)it show while using this plugin at on click onpaypal checkout button
Hi there
Is there a way that once an order is made, the information that is in the “Order” can be sent to an email address, eg the accounts department of a company?
Many thanks
hei, great plugin.
If i set amount=”” in shortcode i get the message “Amount cannot be empty”
What is wrong?
What should i do for a custom donation?
Thank you.
@Adrian, What shortcode are you using?
Is there a way to have the button say “Make a Payment?”
@Gary, What shortcode are you using?
Excellent and simple to use plugin. Exactly what I was looking for to setup simple paypal buttons with the customizations. All of the other free plugins lacked one thing or another. Thanks!
@leon, You’re welcome. If you like the plugin feel free to give it a rating here: https://wordpress.org/support/plugin/wp-paypal/reviews/
Hi
The plugin has worked fine for the past few months, but for the last 3 days, I’ve had issues with it not loading on the page when I open my computer in the morning.
I installed broken link checker 2 days ago and it told me the link was broken, so I changed the link and it worked fine until I closed my computer at night and then it still didn’t load in the morning when I opened it.
Sorry, I should have added that once I refresh the page it opens. But, most potential customers won’t know that.
@Walu, What page are you referring to?
Upgrade +Payments.
@Walu, There is no upgrade option in the plugin. Please explain the issue with screenshots so I can understand what is happening.