Plugin Directory

Test out the new Plugin Directory and let us know what you think.

WordPress Simple Paypal Shopping Cart

Very easy to use Simple WordPress Paypal Shopping Cart Plugin. Great for selling products online in one click from your WordPress site.



  • Fixed an issue with the {payer_email} tag not working in the buyer notification email.


  • Added a new filter for the cart icon image (wspsc_cart_icon_image_src). It can be used to customize the cart icon image.
  • Added escaping for the cart link parameter.


  • Added a new email merge tag for phone number (when available). The new email tag is {phone}. Note that the phone number is an optional field on PayPal checkout page. So it may not be present if the customer doesn't enter a phone number during the checkout.
  • Added a new shortcode parameter (thumb_alt) for the product box shortcode. It can be used to specify an alt tag for the product thumbnail image.
  • Added url_decode in the cart link parameter. So the link works even when the URL contains foreign characters.


  • Minor update for backwards compatibility with an old shortcode using variation.



  • Minor update for backwards compatibility with an old shortcode.
  • WordPress 4.5 compatibility.


  • Added backwards compatibility for the old shortcodes. So the old add to cart button shortcodes will continue to work as usual.


  • Added an option in the settings to disable nonce check for the add to cart button. This is useful for some sites that are using caching. Otherwise 48 hour old cached pages will have stale nonce and the nonce security check will fail. If you are using a caching solution on your site and having issue with nonce security check failing, then enable this option from the settings.


  • Added more sanitization and validation on POST/GET/REQUEST data.


  • Added a new filter in the cart (wspsc_cart_extra_paypal_fields) that will allow you to add extra hidden fields for the PayPal cart checkout.
  • Deleted the local copy of the Spanish language file so the plugin loads the language file from translate.wordpress.org.
  • Deleted the local copy of the Italian language file so the plugin loads the language file from translate.wordpress.org.
  • Deleted the local copy of the Swedish language file so the plugin loads the language file from translate.wordpress.org.
  • Deleted the local copy of the Turkish language file so the plugin loads the language file from translate.wordpress.org.
  • Improved the add to cart price validation code against potential vulnerability.


  • Added a new text field in the settings - Cancel URL.
  • Debug log file has been renamed to "ipn_handle_debug.txt".
  • Added CSS class to the plain text add to cart button so it can be customized via custom CSS code.


  • Fixed an issue where post payment price validation would fail for a transaction with a discount coupon.


  • Added CSS classes to all the "tr" elements in the cart.
  • Added alt tag to all the images and icons in the cart.
  • Added Dutch Language translation to the plugin. The Turkish translation file was submitted by Boye Dorenbos.
  • Added a new email tag {address} that can be used in the notification email to include the buyers address.


  • Our plugin is being imported to translate.wordpress.org. Changed the plugin text domain so it can be imported into translate.wordpress.org.
  • Fixed an issue with an email shortcode not working in the buyer email body.



  • Added a class to the cart header image element.
  • Removed an extra
    tag from the cart output.
  • Plugin is now compatible with WordPress 4.3.
  • Added another extra check to the price validation code.


  • Updated constructor methods in classes with PHP 5 style constructors.


  • Removed "v" from the version number.
  • Added robust price validation checks.


  • Changed the input slug of "product" name to be more specific.


  • Added Turkish Language translation to the plugin. The Turkish translation file was submitted by Vural Pamir.
  • WordPress 4.2 compatibility


  • The cart stylesheet file now uses the 'wp_enqueue_scripts' hook
  • Added a new shortcode parameter (thumb_target) which can be used to specify a target URL for the product thumbnail image
  • Coupon codes are now case-insensitive.
  • Updated the Italian language file.


  • Added an email tag to include the coupon code used in the notification email.
  • Added an extra check to prevent a debug notice message from showing when the cart is reset.
  • WordPress 4.1 compatibility.


  • Added two new filters to allow dynamic modification of the buyer and seller notification email body (just before the email is sent).
  • Added a new filter so the orders menu viewing permission can be overridden by an addon.
  • Added Danish Language translation to the plugin. The Danish translation file was submitted by Steve Jorgensen.
  • Added a function to strip special characters from price parameter in the shortcode.


  • Added some new email tags to show Transaction ID, Purchase Amount and Purchase Date (check your email settings field for details).
  • Made some improvements to the PayPal IPN validation code.


  • Fixed a few notices in the settings menu when run in debug mode.
  • Fixed a warning notice on the front end when run in debug mode.


  • Added a new option so you can store your custom language file for this plugin in a folder outside the plugin's directory.
  • Added the following two new filters to allow customization of the add to cart button: wspsc_add_cart_button_form_attr wspsc_add_cart_submit_button_value
  • Added Text Domain and Domain Path values to the plugin header.
  • Added Norwegian language translation to the plugin. The Swedish translation file was submitted by Reidar F. Sivertsen.
  • Added some security checks a) to make sure that the payment is deposited to the email specified in the settings b) to block multiple payment notifications for the same transaction ID
  • Buyer's contact phone number is now also saved with each order (given you have enabled it).
  • Added the following new filter to allow customization of the product box shortcode: wspsc_product_box_thumbnail_code



  • Changed the permission on the orders menu so it is only available to admin users from the backend.
  • Made some enhancement around the PHP session_start function call.
  • Added an extra check to prevent direct access to the cart file.
  • Added expiry date field in the discount coupon. You can now create discount coupons with an expiry.


  • Added a new feature that allows you to show the product thumbnail image in the shopping cart. Use "show_thumbnail" parameter in the shopping cart shortcode for this.
  • Added Swedish language translation to the plugin. The Swedish translation file was submitted by Felicia.
  • Fixed a minor bug with the checkout page style feature.
  • Added a new filter for the item name field in the shopping cart.
  • Made some minor CSS improvements for the cart output.
  • The {product_details} email shortcode will now show the full amount of the item (instead of the individual item amount).


  • Added Hebrew Language translation to the plugin. The Hebrew translation file was submitted by Sagi Cooper.
  • Added extra condition to address the "Invalid argument supplied" error that a few users were getting.


  • Added a new feature to open the checkout page in a new tab/window when user clicks the checkout button.
  • Updated the Cart Orders menu icon to use a slightly better looking dashicon.
  • Added a new filter to allow modification of the custom field value. Filter name is wpspc_cart_custom_field_value
  • Added a new action hook after the PayPal IPN is processed. This will allow you to do extra post payment processing task for your orders. Hook name wpspc_paypal_ipn_processed
  • Made some improvements to some of the shopping cart icons (cart and delete item icons have been updated).
  • Cart output will work with a responsive theme.


  • Added Czech Language translation to the plugin. The Czech translation file was submitted by Tomas Sykora.
  • Added a new option/feature to specify a custom paypal checkout page style name. The plugin will use the custom checkout page style if you specify one.
  • Each order now also shows the shipping amount in the order managment interface.


  • Added a new feature that lets you (the site admin) configure a sale notification email for the admin. When your customer purchase a product, you get a notification email. Activate this feature from the "Email Settings" interface of the plugin.
  • Added Polish language translation to the plugin. The Polish langage translation file was submitted by Gregor Konrad.
  • Fixed a minor issue with custom button images that uses HTTPS URL.
  • Added more CSS classes in the shopping cart so you can apply CSS tweaks easily.


  • Fixed a minor bug in the new compact cart shortcode [wp_compact_cart]


  • Added a new feature to show a compact shopping cart. You can show the compact shopping cart anywhere on your site (example: sidebar, header etc).
  • Language translation strings updated. Translation instruction here - http://www.tipsandtricks-hq.com/ecommerce/translating-the-wp-simple-shopping-cart-plugin-2627
  • Added a new function for getting the total cart item quantity (wpspc_get_total_cart_qty).
  • Added a new function to get the sub total amount of the cart (wpspc_get_total_cart_sub_total).


  • Added an option to specify a custom button image for the add to cart buttons. You can use the "button_image" parameter in the shortcode to customize the add to cart button image.
  • Coupon code that is used in a transaciton will be saved with the order so you can see it in the back end.


  • WP 3.8 compatibility

3.9.0 and 3.8.9


  • Added a discount coupon feature to the shopping cart. You can now configure discount coupon via the Simple cart settings -> Coupon/Discount menu
  • View link now shows the order details
  • fixed a bug where the shipping price wasn't properly showing for more than $1000
  • WordPress 3.7 compatibility


  • Changed a few function names and made them unique to reduce the chance of a function name conflict with another plugin.
  • Added a new option in the plugin so the purchased items of a transaction will be shown under orders menu
  • Payment notification will only be processed when the status is completed.


  • Updated the broken settings menu link
  • Updated the NextGen gallery integration to return $arg1 rather than $arg2


  • Added an email settings menu where the site admin can customize the buyer email that gets sent after a transaction
  • Also, added the following dynamic email tags for the email body field:

{first_name} First name of the buyer {last_name} Last name of the buyer {product_details} The item details of the purchased product (this will include the download link for digital items).


  • Fixing an issue that resulted from doing a commit when wordpress.org plugin repository was undergoing maintenance


  • Improved the settings menu interface with the new shortcode usage instruction.

Full changelog for all versions can be found at the following URL: http://www.tipsandtricks-hq.com/ecommerce/?p=319

Requires: 3.0 or higher
Compatible up to: 4.7.1
Last Updated: 2 months ago
Active Installs: 40,000+


4.6 out of 5 stars


10 of 21 support threads in the last two months have been marked resolved.

Got something to say? Need help?


Not enough data

1 person says it works.
0 people say it's broken.

100,2,2 100,1,1
100,5,5 100,1,1
100,1,1 100,7,7 100,3,3 100,2,2
100,5,5 100,7,7
100,5,5 0,1,0
100,1,1 100,3,3
100,2,2 100,1,1
100,2,2 100,5,5
0,1,0 86,7,6
0,1,0 50,2,1
50,8,4 100,2,2
100,2,2 100,1,1
100,2,2 100,1,1
100,3,3 75,4,3 100,1,1 100,1,1
100,1,1 100,3,3 100,1,1 100,1,1 100,2,2 100,2,2 100,2,2 0,1,0
100,3,3 100,4,4 67,3,2
100,1,1 100,5,5
100,5,5 100,4,4 100,5,5
100,6,6 100,4,4
100,4,4 100,4,4 100,5,5
100,1,1 100,5,5
100,5,5 100,7,7 100,6,6 100,8,8 100,6,6
100,4,4 100,5,5 100,1,1
100,5,5 83,6,5 100,5,5 100,5,5
100,1,1 100,5,5 100,1,1
100,8,8 100,1,1
100,5,5 100,5,5 88,8,7
100,5,5 100,5,5 100,5,5
78,9,7 100,6,6
100,5,5 100,6,6 100,5,5 100,4,4
100,3,3 100,5,5
100,5,5 100,3,3 100,6,6 80,5,4 100,1,1
100,5,5 100,2,2
100,1,1 100,7,7
100,6,6 100,5,5
100,3,3 100,5,5
100,4,4 100,5,5 100,5,5