PayPal is a dinosaur when it comes to internet payment gateways, having been established in 1998 — an exceptionally long time in internet terms. That being said, it has undergone a lot of changes over the years, leaving an ever-widening trail of documentation for potentially tricky procedures, like setting up PayPal Standard on WooCommerce.
You might have come across blog articles or forum discussions online that are simply outdated.
There is a ton of information about this topic going back only two or three years that just isn’t accurate in 2021. It can be frustrating, but I got your back. Keep reading to learn about setting up PayPal Standard on WooCommerce in 2021.
First things first: SSL certificate
Anyone planning to use WooCommerce to sell products online and accept payments using PayPal will need to have an SSL certificate installed on their website. Payments sent to PayPal from a non-SSL website will fail.
Besides, it’s just good form to have an SSL certificate on an eCommerce website, anyway, since it encrypts data being sent to and from the site.
With an SSL certificate, websites are more secure, and your customers will feel safer shopping on a website that has one. Fortunately, GoDaddy offers Managed WordPress Ecommerce Hosting with SSL certificates included, and even standalone SSL certificates that can be installed on websites that don’t already have them.
Let’s dig in.
Signing up for a PayPal Business account
If your client doesn’t already have a PayPal Business account, they’re going to need one. Other than PayPal’s standard fees, there’s no charge to upgrade a personal PayPal account, or to create a new PayPal business account. Just send your clients over to PayPal Business to set up a new business account.
Upgrading Personal PayPal to Business
- Sign into PayPal.
- Click the gear icon in the top-right corner of the page to go to the account page.
- Scroll down to the bottom of the Account Options section, and then click Upgrade to business account.
- Fill out the basic information.
Setting up PayPal Standard on WooCommerce
When you install WooCommerce there are four ways to accept payments by default. Fortunately, one of them is PayPal Standard, which is the only one of the four available options to accept payments online.
Assuming you already have WooCommerce installed, go ahead and:
- Log into WordPress admin.
- From the left-hand menu, go to WooCommerce, and then click Settings.
- At the top of the page click the Payments tab.
- Click the toggle button (it should turn purple) to enable PayPal Standard.
- Click Save Changes.
The button on the far right of the PayPal Standard option previously displayed Set up. It should now display Manage.
- Click Manage.
Navigating the Manage PayPal Standard page
On the Manage PayPal Standard page, you’ll see a few different options.
This is where things can get a little hairy if you don’t know where to look.
The first section, which has Enable/Disable, Title, Description and PayPal email are straightforward.
- Enable/Disable — Should have a marked checkbox. If that box isn’t checked check it now.
- Title — Simply the name of the payment method customers will see during checkout. It should display PayPal.
- Description — Just a description for the payment method. When using PayPal, it is a good idea to convey to the customer that they can use a credit card instead of funds available in their PayPal account.
- PayPal email — The email address used with the PayPal Business account. By default, the WordPress admin email address will be filled in. It is probably a good idea to use a different email address for the PayPal account for security reasons.
Configuring advanced options in the PayPal sandbox
Now for the advanced options. The first one you’ll see is PayPal sandbox. There’s no getting around it, it’s kind of a pain to set up. But if you need to troubleshoot payment problems later, you’ll be glad you didn’t skip this step.
A PayPal Business account is needed for this to work, so hopefully at this point that’s already good to go.
Here’s a helpful tip: Keep the WooCommerce PayPal Standard page open.
Open the Developer Account Link page in a new tab (right-click, open in new tab). This way, you can copy and paste credentials from the new PayPal tab by just switching between your WooCommerce and PayPal browser tabs.
- Check the box next to PayPal sandbox.
- Go just below Enable PayPal sandbox, right-click developer account link, and then click open in new tab.
- Go to the top-right side of that page, and then click Log in to Dashboard.
If you’re already logged, mouse over your username in the far-right corner, and then select Dashboard from the dropdown menu.
- A blue menu displays on the left. Click Accounts.
You’re now on the Sandbox Test Accounts page. You’ll want to create both a business test account and a personal test account.
- Click Create account.
- Select an account type, and then choose your region (United States in my case).
- Click Create.
Having done this once for a business sandbox account, and then again for a personal sandbox account, you should see a list with both accounts. On the far-right side of each item you’ll see three dots (…).
- Mouse over the dots for the business account, and then click Account Details.
You’ll now see a popup window.
- Click the API Credentials tab to view the username, password, and signature.
You should leave this popup window open for the next procedure.
- Seriously, leave it open. (You’re welcome.)
- Enter the sandbox credentials.
Setting up sandbox credentials
Now that you have the test accounts ready it’s time to enter that information into WooCommerce. Once that information is entered, WooCommerce will save it for the next time you need to use the sandbox, so you won’t have to go through this again.
- If you have Enable PayPal sandbox checked, scroll to the very bottom of the page where you’ll see the Sandbox API username, password, and signature.
- Open your PayPal browser tab, and then copy the information from the API Credentials tab in the popup window (assuming you left it open, otherwise open it again).
- Paste the credentials into the corresponding sandbox API username, password, and signature fields in WooCommerce.
- In WooCommerce, click Save changes.
Don’t worry about the other settings right now. We’re just getting the sandbox credentials saved to the right place.
- Scroll back to the top of the page, and then uncheck Enable PayPal sandbox.
- Scroll down, and then click Save changes.
Setting up live API credentials for PayPal Standard on WooCommerce
After completing step 5 above, you may have noticed at the bottom of the page instead of Sandbox API, we now have a Live API username, password and signature. You’ll need to fill these out to accept actual payments.
- Log into the PayPal account, and then click Account Settings.
You’ll find it in the top far right under the account’s username.
- Under Account access, go to API Access, and then click Update.
- Scroll down to NVP/SOAP API integration (Classic), and then click Manage API Credentials.
If you have already generated an API signature, you’re all set.
- Under the username, password and signature, click View.
- Copy the details and paste them into the corresponding Live API fields in WooCommerce.
If you haven’t already generated an API signature go ahead and do that here, then follow the previous steps, as mentioned here in step 4.
- Click Save changes.
About the debug log
Now that the live and sandbox APIs are all ready to go, you can continue with the rest of the setup. After PayPal sandbox, you’ll see Debug log. You should leave this unchecked for your clients unless they start running into problems.
If it is enabled, sensitive information could be logged that hackers would love to get their hands on.
The URL structure is the same for all WooCommerce websites, so this file isn’t hard to find if it exists. If you do use it, be sure to delete it from the server when you’re done.
About IPN email notifications
IPN stands for Instant Payment Notification. When this is enabled, notifications are sent for new orders, refunds, chargebacks and cancelations.
Make sure this box is checked.
About the receiver email
This email address will have the admin email for the WordPress install filled in by default. Be sure to change this to the main PayPal Business account email address, which is used to validate IPN requests.
Setting up the PayPal identity token
Are you sick of IDs, passwords, signatures and all of those things yet? I know I am. There’s just one more.
I promise this is the last one.
As with the others, once you’ve entered it, you shouldn’t have to do it again. To get the PayPal Identity Token you’ll need to:
- Log into the PayPal account (if you’re not already logged in).
- In the top far-right corner, mouse over the username, and click then Account Settings.
- In the menu on the left, click Website Payments.
- Next to Website Preferences (in the main column), click Update.
- For Auto return for website payments, select On, and then enter a return URL in the field below it.
This is where customers will be sent after completing a purchase ,like the home page or a Thank You page.
- Click Save.
- For Payment data transfer, select On.
The identity token will display.
- Copy the identity token, paste it into the identity token field in WooCommerce, and then click Save Changes.
About the invoice prefix
By default, the prefix will be WC-. This is fine when only selling from one website. If your client has multiple online stores and wants to differentiate sales between websites, or just wants to customize things a bit you can change that prefix to anything you like.
The K.I.S.S. rule applies here.
About shipping details
It is a good idea to keep this box checked. PayPal offers seller protection, but the shipping address must match the billing address. Enabling this option allows only a single address which will be used for both billing and shipping. There will be no option for customers to enter a separate shipping address in WooCommerce checkout when this is enabled.
Pro tip: I’ve suggested to clients that if they want to take advantage of seller protection for the most part, but give customers the option to ship to a different address, they should use the Order Notes field on the checkout page.
This works surprisingly well. Just add a short notification in the top of the checkout page directing customers to do so. This also gives your clients a chance to review that order for potential fraud before processing.
About address override
WooCommerce recommends keeping this disabled. I would follow that advice unless you really know what you’re doing.
About payment action
You have a couple of options here. You can select Capture or Authorize. If Authorize is selected, the payment information will be sent to PayPal but won’t be processed until someone manually processes (captures) the payment.
If Capture is selected, the payment goes through at the time of the order automatically.
About the image URL
You can use a logo or other image that will be displayed on the PayPal checkout page for the website. The image looks best at 150×50 pixels. PayPal will resize the image, so make sure the image really is 150×50, unless you want a goofy looking resized logo representing your client’s business on PayPal.
Hey, I’ve seen it. It isn’t pretty.
Testing PayPal Standard on WooCommerce
Now everything should be ready, and you should do some testing. Start by creating a dummy product in WooCommerce and give it a price of, say, one dollar. You can set that product to private, so customers won’t see it on the store pages. You’ll be able to see it when you’re logged in.
You’ll need to set this as public during testing, though. Here’s how:
- From WordPress admin, go to Products, and then click Add New.
- Give the product a title like Test or something similar.
- Go to Product Data, and under the General tab, enter $1.00.
- From the right-hand menu under Publish, go next to Visibility, click the Edit link, and then select Private.
- Click Update.
You can fill in as much info as you like here, but you only really need what I’ve covered for basic testing purposes. You can view the product by clicking the “view product” link which now appears just above the title.
Let’s run through the whole setup
Temporarily set the product page visibility back to Public. You’ll want to open the product in a private browser window (incognito mode) so you’re not signed into the website while placing the test order. You might remember earlier when we created business and user sandbox accounts. This time we’ll be using the user sandbox account to create a test order.
When opening the business sandbox account popup window, you might have noticed a couple more tabs that we didn’t discuss. We’ll be using those now with our user sandbox account.
Under the Profile tab, you’ll see all of your user sandbox account information, like first and last name, email address etc. This is the info you’ll use to fill out your order checkout details. Make sure you update the user’s password here and make note of it. You’ll need it during checkout.
Under the Funding tab, you’ll see three available funding sources: bank account, credit card, and PayPal balance. You can use any of these as a payment method (they’re all fake), but if using the PayPal balance be sure that balance exceeds the amount of your test purchase.
Under the Settings tab, you can select the option to review sandbox payments before they’re completed.
Before placing your test order be sure you have sandbox mode enabled (WooCommerce > Settings > Payments > PayPal > Manage). Just place your order using the sandbox user account details from a private browser window.
When placing the order, you’ll know you have everything set up correctly if:
- Everything works.
- If you see sandbox.paypal.com in your browser’s URL bar.
Go ahead and finish placing the order. You can test the merchant return URL by clicking Return to Merchant after placing the order.
Now from the WordPress Admin dashboard, mouse over WooCommerce, and then click Orders. This will take you to an archive of orders that have been placed.
Click on the buyer’s name to review details for that order in WooCommerce.
If you’ve made it this far, congratulations!
Closing thoughts on setting up PayPal Standard on WooCommerce
The website is now ready to start taking payments online with PayPal in WooCommerce. Just go back and disable PayPal sandbox to start accepting real orders. You might want to set the test product page visibility back to private at this point too.
This will also give your clients a solid foundation with which to work from should they decide to upgrade to premium PayPal for WooCommerce extensions in the future.
Hopefully, PayPal doesn’t move their pages around again in the near future. At least for a time, this set of instructions will be complete and accurate. I hope this article saves you some time and frustration — and helps keep your eCommerce clients coming back for more.
Efficiently deliver better results
When you use The Hub from GoDaddy Pro, suddenly there’s more time in your day to focus on what matters most. Forget about juggling admin tasks. Reclaim your time and use it to make clients feel like the center of your universe.