If you’re running a WordPress site, there are several options available to add eCommerce functionality. However, many of these plugins may be overkill if you just need a simple shopping cart to sell a few items on your site or blog.
The WordPress Simple PayPal Shopping Cart from Tips and Tricks HQ is a free plugin that will let you easily sell items from your WordPress website, and can have you up and selling through PayPal within 30 minutes. You can sell shippable products, digital goods, and services using the plugin, as it can be used to insert purchase buttons anywhere shortcodes are accepted on your site.
With over 500,000 downloads from WordPress.org, it’s a fairly popular solution for shops that want to sell a few items, such as swag tee shirts, eBooks, or services via PayPal.
Table of Contents
- Overview & Costs
- Creating Products
- Customer Experience
- Payment & Shipping
- Code Review
- Other Comments
As we mentioned above, the plugin is entirely free. You can download it and install on your WordPress site, then begin to create purchase buttons, which are essentially what create your “products”. These are passed to PayPal with your pricing and any included fees, and then it’s up to you to fulfill and manage any purchases for your site.
When you install the plugin, it will add settings and a new menu for Cart Orders. The settings page is where you’ll want to head first for some quick tips on creating your shop.
There aren’t any other costs associated with using the plugin, but as it’s a free solution, support may be limited.
Even though the plugin is free, there’s tons of documentation available to help with shop setup. The setup guide pointed me in the right direction in terms of the settings I needed and a few methods on product creation or adding shipping fees. There are also some very helpful getting started videos I’d recommend checking out.
I started under Settings > WP Shopping Cart with WordPress Simple PayPal Shopping Cart’s general settings. Here I was able to add basic store information, such as my PayPal address, shipping fees (if needed), cart / product page URLs, and other options.
I ran through the basic settings in a few minutes, and then moved on to the email notification settings. You can create email notifications for both customers and site administrators to inform them of a completed order, and there are pre-filled templates to make setup for your notifications simple.
Finally, I checked out the discount options. I want to enable coupons or discounts in my store, so I opted to enable these and add a couple of discount codes. You can set discounts that will deduct a percentage of the cart total when used, as well as set an expiration date if needed.
These discounts will be applied to cart pricing before customers are sent to PayPal, so pricing on the cart and PayPal pages will include discounts applied by codes.
Once you’ve gone through these settings, that’s all there is to setup! You can then add purchase buttons in your pages, blog posts, or widgets.
The plugin doesn’t generate a product post type or product creation system, as it’s designed to only sell a few products quickly and easily from your blog. As such, you won’t be creating products with tons of options. Instead, all products will be created via shortcode.
Unfortunately, there’s no shortcode generator or library in the plugin, which means that this will be far more difficult if you have several products to add to your shop (and this is part of the reason I recommend it to sell just a few products). You’ll be creating shortcodes manually for each product you’d like to sell.
There are two major versions of product shortcodes that you can use with WordPress Simple PayPal Shopping Cart. One will just add a cart button for the product, so you can draft sales copy, add images or galleries, and design an entire sales page, then use the shortcode to add the “Add to Cart” button. The general form for this shortcode is:
[wp_cart_button name="Product Name" price="Price"]. This will create a button that sends that product name to PayPal with the price indicated. There are other attributes that we can add to this shortcode that we’ll discuss as we go, such as a shipping fee. Here’s an example of a product I’ve created:
[wp_cart_button name="WordPress Coffee Mug - Blue" price="12.00" shipping="1.99"]
Since there are no product or shop pages, the design of these pages will be entirely up to you. You can sell items directly within pages or posts, or create dedicated sales and shop pages for your items. For example, here’s a list-style shopping page I began to create using columns:
Note that the only thing being inserted by my shortcode is the “Add to cart” button. I’ve created the rest of the page on my own via shortcodes / CSS.
As you’ll have to create this structure, setup for shop pages may be time intensive. I’d recommend using this shortcode type if you’ve already got long-form copy or blog posts prepared, as it inserts the “Add to Cart” link to take care of the purchasing functionality.
The second version of a product shortcode you can use will create a product display box. This may be better for sites that will sell more than just a few products, or could be used to create a “shop” page as desired, then the previous shortcode can be used within content.
The product display box uses a shortcode that’s very similar to the previous one, but can add a description and thumbnail:
[wp_cart_display_product name="Product Name" price="Price" thumbnail="URL of the image" description="This is a short description of the product"]
Here’s an example of a product display box I’ve created via shortcode:
[wp_cart_display_product name="WP Mug Blue" price="12.00" thumbnail="/wp-content/uploads/2014/10/wp-blue-mug.jpg" description="This coffee mug magically increases your caffeine intake when used for your morning coffee. Or any coffee."]
I’ve also used the CSS tip provided to stack these boxes on the product page, which creates a grid-type layout for my products:
These two basic shortcodes can be used to create any simple product within your blog posts, pages, or a dedicated shop page.
If you need to sell more complex products, such as tee shirts, you can also add variations to both of these shortcodes. This will add a dropdown for the variation about the purchase button, though it can’t be used to change an image or influence price, and merely serves as an indicator for both you and the customer.
To do so, you’ll add an attribute to your shortcode in the form of
var1="Name|Option1|Option2" and so on. You can add more variant dropdowns by adding more variant attributes in the same way using
var3=, etc. Add as many options as needed, and you can use this for both versions of the product shortcode. Here’s an example with multiple variants:
[wp_cart_display_product name="WordPress Tee" price="13.99" thumbnail="/wp-content/uploads/2013/12/wp-gray-tee.png" description="Declare your open source CMS allegiance." var1="Color|Red|Gray|Black" var2="Size|Small|Medium|Large|XL"]
Digital products, such as file downloads or ebooks, can also be sold using WordPress Simple PayPal Shopping Cart. You’ll add one more attribute to either shortcode version:
file="file URL". This will deliver files to customers via the confirmation email, which will contain the download link for the item they purchased.
Here’s an example of a digital download product:
[wp_cart_display_product name="Welcome Back to 2nd Grade" price="9.49" file_url="/wp-content/downloads-056weio1846sxb/the-sign-cd.mp4" thumbnail="/wp-content/uploads/2014/03/the-sign.jpg" description="Welcome back to memories of when CDs first came out!"]
There are several different ways to set up products, which will be dictated by how you want to sell them. Once you’ve got products created in your pages or posts, you’ll want to add the cart / checkout. You can add this as a widget if desired:
You can also use the
[show_wp_shopping_cart] shortcode to create a dedicated page for this or show it on the same page as products. Now that settings have been configured, products have been added, and customers can check out, you’re ready to sell 🙂 .
As you’ll be setting up product pages, the customer experience will be entirely up to you. There’s no predefined cart or purchasing flow when using WordPress Simple PayPal Shopping Cart. Customers will be able to view products or pages you’ve set up, then add these products to the cart using your purchase buttons or display boxes.
They’ll be able to view the products they’ve added via the cart widget or the cart page (if you’ve created one).
However, I’d recommend that you enable the “Hide Shopping Cart Image” setting, as it doesn’t do much for the widget or cart page when used.
Customers will be able to complete purchases by clicking the PayPal buttons in this widget or on the cart page.
This will pass all products that they’ve added to the cart to PayPal, as well as any fees (such as shipping) and pricing. If you’ve created variations for a product, these will also be included and appended to the product name.
You can determine which page customers return to from PayPal in the settings. I’d recommend setting up a generic “Thank You” page for this purpose, as there’s no way to display purchase details or a customer account for order records.
The purchasing flow is simple, and many customers will be familiar with using PayPal for off-site purchases like this.
As the name of the plugin is “WordPress Simple PayPal Shopping Cart”, I’m sure you can guess at the payment options provided 😉 . You can process payments through your PayPal business account via PayPal Standard, and can also pass shipping costs to PayPal on a per-item or per-order basis (or use both an item fee and a base cart shipping fee to combine the two).
To accept payments using WordPress Simple PayPal Shopping Cart, you’ll have to enter your PayPal email address under the plugin settings, then setup your PayPal IPN to ensure that your store knows when an order is purchased. This will let PayPal send information back to your store to notify the plugin that the order has been completed, which will generate an order record.
You can also add shipping fees for your products and cart by including a
shipping="" attribute in your product shortcodes. When used, this signals that a shipping line item should be added.
Let’s go back to my earlier mug example:
[wp_cart_button name="WordPress Coffee Mug - Blue" price="12.00" shipping="1.99"]
This will add a $1.99 charge for shipping for each one of these products that’s purchased. You can do the same thing for any product you create, regardless of whether you use the simple shortcode or the product display box shortcode.
You can add a base shipping fee under the plugin settings, which will add a set fee to the cart as well. If I add a base fee of $3 for shipping, then someone buys my mug product as set above, they’ll be charged a total of $4.99 for shipping costs.
You can also use the base shipping as a simple flat rate per order. If the base rate is set at $3 and I set the shipping for all products to
shipping="0.001", then the base rate will be used (unless, of course, someone orders over 50 products at once and rounds the per-product rate to $0.01).
There’s no way pre-built method to integrate other shipping options into the shopping cart, so using order rates, item rates, or a combination of the two is the only solution available.
Simple order management capabilities are included in WordPress Simple PayPal Shopping Cart. When a customer places and order via PayPal and the PayPal IPN tells your site it’s been completed, and order record will be generated under the “Cart Orders” menu. This will include the basic customer information, as well as the product(s) orders and if any coupons were used:
You can manually create orders as well, which is helpful in case the PayPal IPN fails (as it sometimes does).
Other than order records, there are no other reports or order management options.
There are no paid extensions or upgrades for WordPress Simple PayPal Shopping Cart. It can be extended via custom code as needed, but this will require PHP knowledge on your part, or the help of a developer.
For example, I wanted to change my product details box thumbnails to open full-size in a lightbox rather than being static images. There are no add-ons available to change functionality, so I had to write a code snippet to do this myself.
WPSPSC does integrate with the WP Affiliates plugin from Tips and Tricks HQ, so you can pay out affiliates for referring customers to your site.
As mentioned previously, there’s lots of documentation available for help in setup, adding variations, changing buttons or product layout, and more.
During my testing, the plugin worked as expected without issue. The structure doesn’t follow WordPress code standards, and its use of sessions may not work with some hosts or caching plugins. However, there are no major issues in the way the plugin performs on your site, and you’ll want to be aware of caching to disable it as needed.
The plugin is useful for selling a few, simple products via PayPal. However, if you’ll need more complex order and product tracking, such as inventory management, then you’ll need to look for a different solution.
I did like that you can can use custom button text and images as needed, and can change the way products are sold throughout the site by using different product shortcodes. However, this did mean that my setup was quite intensive, and I wouldn’t want to make changes consistently.
Finally, I’d recommend that you use something like Amazon S3 and a single-use URL for file downloads rather than serving them right from your
/wp-content/ folder. However, if you’re going to put the work into protecting your download links, it might be wise to consider a different solution. While this may not be an issue with a couple of digital products, it’s something you should consider moving forward with your shop setup.
The fact that this plugin is free and provides the ability to add products and purchase items makes it a flexible solution for shops that sell a limited number of items. It’s especially useful for shops that sell services and virtual items, as well as the occasional shippable product.
- Free to download and install
- Can sell virtual and downloadable products
- Can sell physical, shipped products
- Set per-item or per-order shipping
- Can enable discount codes
- Settings / configuration is easy
- Includes basic order recors
- Can manually create orders
- Includes cart functionality to purchase more than one product
- Can create product variations
- No shortcode generator or product setup (manually add each product shortcode)
- Product / shop page design is on you
- Grid Layout requires minor CSS tweak
- Plain download links are used for files rather than an “encrypted” link
- No product inventory
- Order management: no statuses or notes
- No variation price changes
If you’ll be selling more than the occasional order or a limited product offering, then a more advanced eCommerce solution will probably be required. However, the plugin makes a good solution for a quick shop setup if only a few, mostly virtual products, are being created.