WooCommerce

Description

WooCommerce is the world’s most popular open-source eCommerce solution.

Our core platform is free, flexible, and amplified by a global community. The freedom of open-source means you retain full ownership of your store’s content and data forever.

Whether you’re launching a business, taking brick-and-mortar retail online, or developing sites for clients, use WooCommerce for a store that powerfully blends content and commerce.

Built-in tools and popular integrations help you efficiently manage your business operations. Many services are free to add with a single click via the optional Setup Wizard.

Grow your business, add features, and monitor your store on the go

WooCommerce means business. Keep tabs on the performance metrics most important to you with WooCommerce Admin – a powerful, customizable central dashboard for your store.

Expand your audience across marketing and social channels with Google Ads, HubSpot, Mailchimp, and Facebook integrations. You can always check out the in-dashboard Marketing Hub for fresh ideas and tips to help you succeed.

Enhance store functionality with hundreds of free and paid extensions from the official WooCommerce Marketplace. Our developers vet each new extension and regularly review existing inventory to maintain Marketplace quality standards. We are actively looking for products that help store builders create successful stores.

Manage your store from anywhere with the free WooCommerce mobile app (Android and iOS). Spoiler alert: Keep an ear out for the slightly addictive “cha-ching” notification sound each time you make a new sale!

Own and control your store data – forever

With WooCommerce, your data belongs to you. Always.

If you opt to share usage data with us, you can feel confident knowing that it’s anonymized and kept secure. Choose to opt-out at any time without impacting your store.

Unlike hosted eCommerce solutions, WooCommerce store data is future-proof; should you wish to migrate to a different platform, you’re free to export all your content and take your site wherever you choose. No restrictions.

Why developers choose (and love) WooCommerce

Developers can use WooCommerce to create, customize, and scale a store to meet a client’s exact specifications, making enhancements through extensions or custom solutions.

  • Leverage hooks and filters to modify or create functionality.
  • Integrate virtually any service using a robust REST API and webhooks.
  • Design and build custom content blocks with React.
  • Inspect and modify any aspect of the core plugin code.
  • Speed up development with a lightning-fast CLI.

The core platform is tested rigorously and often, supported by a dedicated development team working across time zones. Comprehensive documentation is updated with each release, empowering you to build exactly the store required.

Be part of our growing international community

WooCommerce has a large, passionate community dedicated to helping merchants succeed, and it’s growing fast.

There are WooCommerce Meetups in locations around the world that you can attend for free and even get involved in running. These events are a great way to learn from others, share your expertise, and connect with like-minded folks.

WooCommerce also has a regular presence at WordCamps across the globe – we’d love to meet you.

Contribute and translate

WooCommerce is developed and supported by Automattic, the creators of WordPress.com and Jetpack. We also have hundreds of independent contributors, and there’s always room for more. Head to the WooCommerce GitHub Repository to find out how you can pitch in.

WooCommerce is translated into multiple languages, including Danish, Ukrainian, and Persian. Help localize WooCommerce even further by adding your locale – visit translate.wordpress.org.

Screenshots

Blocks

This plugin provides 16 blocks.

  • Filter Products by Attribute
  • Product Search
  • Hand-picked Products
  • Product Categories List
  • Products by Category
  • Featured Product
  • Reviews by Product
  • All Reviews
  • Reviews by Category
  • Products by Tag
  • Newest Products
  • On Sale Products
  • Featured Category
  • Active Product Filters
  • Best Selling Products
  • Filter Products by Price

Installation

Minimum Requirements

  • PHP 7.2 or greater is recommended
  • MySQL 5.6 or greater is recommended

Visit the WooCommerce server requirements documentation for a detailed list of server requirements.

Automatic installation

Automatic installation is the easiest option — WordPress will handles the file transfer, and you won’t need to leave your web browser. To do an automatic install of WooCommerce, log in to your WordPress dashboard, navigate to the Plugins menu, and click “Add New.”

In the search field type “WooCommerce,” then click “Search Plugins.” Once you’ve found us, you can view details about it such as the point release, rating, and description. Most importantly of course, you can install it by! Click “Install Now,” and WordPress will take it from there.

Manual installation

Manual installation method requires downloading the WooCommerce plugin and uploading it to your web server via your favorite FTP application. The WordPress codex contains instructions on how to do this here.

Updating

Automatic updates should work smoothly, but we still recommend you back up your site.

If you encounter issues with the shop/category pages after an update, flush the permalinks by going to WordPress > Settings > Permalinks and hitting “Save.” That should return things to normal.

Sample data

WooCommerce comes with some sample data you can use to see how products look; import sample_products.xml via the WordPress importer. You can also use the core CSV importer or our CSV Import Suite extension to import sample_products.csv

FAQ

Where can I find WooCommerce documentation and user guides?

For help setting up and configuring WooCommerce, please refer to Getting Started and the New WooCommerce Store Owner Guide.

For extending or theming WooCommerce, see our codex, as well as the Plugin Developer Handbook.

Where can I get help or talk to other users about WooCommerce Core?

If you get stuck, you can ask for help in the WooCommerce Support Forum by following these guidelines, reach out via the WooCommerce Community Slack, or post in the WooCommerce Community group on Facebook.

Where can I get help for extensions I have purchased on WooCommerce.com?

For assistance with paid extensions from the WooCommerce.com Marketplace: first, review our self-service troubleshooting guide. If the problem persists, kindly log a support ticket via our helpdesk. Our dedicated Happiness Engineers aim to respond within 24 hours.

I’m having trouble logging in to WooCommerce.com – what now?

First, troubleshoot common login issues using this helpful step-by-step guide. Still not working? Get in touch with us.

Will WooCommerce work with my theme?

Yes! WooCommerce will work with any theme but may require some additional styling. If you’re looking for a theme featuring deep WooCommerce integration, we recommend Storefront.

How do I update WooCommerce?

We have a detailed guide on How To Update WooCommerce.

My site broke – what do I do?

Start by diagnosing the issue using our helpful troubleshooting guide.

If you noticed the error after updating a theme or plugin, there might be compatibility issues between it and WooCommerce. If the issue appeared after updating WooCommerce, there could be a conflict between WooCommerce and an outdated theme or plugin.

In both instances, we recommend running a conflict test using Health Check (which allows you to disable themes and plugins without affecting your visitors) or troubleshooting the issue using a staging site.

Where can I report bugs?

Report bugs on the WooCommerce GitHub repository. You can also notify us via our support forum – be sure to search the forums to confirm that the error has not already been reported.

Where can I request new features, themes, and extensions?

Request new features and extensions and vote on existing suggestions on our official ideas board. Our Product teams regularly review requests and consider them valuable for product planning.

WooCommerce is awesome! Can I contribute?

Yes, you can! Join in on our GitHub repository and follow the development blog to stay up-to-date with everything happening in the project.

Where can I find REST API documentation?

Extensive WooCommerce REST API Documentation is available on GitHub.

My question is not listed here. Where can I find more answers?

Check out Frequently Asked Questions for more.

Reviews

July 10, 2021
Guys! All in all the plugin is an amazing solution to transform your wordpress into a shop. But, seriously, you just need to implement this important functionality: filter should not show out of stock variations of variable products. Imagine you have a shoe store. User wants to buy only size 40 and still after filtering woocommerce shows all the items that have that variation even if it's out of stock. A lot of people with clothing, shoe and actually every store with variable products need this!!
July 9, 2021
This is one of the best shopping solutions not only for the wp platform but at all. I have experience with different CMS systems but woocommerce really the best.
July 9, 2021
Nice tool, if you have spent lots of time, money and learnd e-commerce needs and benefits. You need to buy plugins to run your shop. So be aware woocommerce basic is free, sure. That's like buying a car with an engine but without wheels, oil, fuel, key etc. You need money and time to run this tool. But if you spent money and time you maybe have a shop to sell things. Have fun Gitta
Read all 3,751 reviews

Contributors & Developers

“WooCommerce” has been translated into 65 locales. Thank you to the translators for their contributions.

Translate “WooCommerce” into your language.

Interested in development?

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

Changelog

5.5.0 2021-07-13

WooCommerce

  • Performance – Set Geolocation fallback transients to expire in one day instead of one week. #29987
  • Enhancement – [Transparency] CLI command for viewing tracking data for your store. #30010
  • Enhancement – All settings pages can now be extended consistently with new sections and settings. Also, unit tests have been added. #27684
  • Enhancement – Set checkout fields value with the default defined value where form is not presented to the user. #29820
  • Tweak – Show legacy widget instance in Rest API. #30012
  • Tweak – No longer load PayPal Standard by default on new installs. #29971
  • Tweak – Rename Products, Products by Rating, and Recent Viewed Products widgets to Products list, Products by Rating list, and Recently Viewed Products list. #29941
  • Tweak – By default the postcode field will no longer be used, and the state field will become optional, for Curaçao. #29848
  • Tweak – Handle WP_Error while creating placeholder image during install. #29783
  • Tweak – Exclude block templates from showing up in product edit page. #30138
  • Fix – Allow block templates for WooCommerce pages. #30013
  • Fix – Download IDs are included in export CSV and imported when updating existing products to maintain download permissions. #29970
  • Fix – Fees added to an order from wp-admin are now calculated correctly the first time. #29945
  • Fix – Prevent caching of cart/checkout page when using Chrome browser. #29912
  • Fix – Invoice emails now contain payment link if the order needs payment, not just when the order is “pending”. #29833
  • Fix – Introduce meta to track stocks that refunded and restocked to properly handle stock recalculation. #29762
  • Fix – Resolved a console error that could occur when clicking Add Shipping Zone. #30015
  • Fix – Issue with Product Add-ons where multiple choice (images) setting would show false when hovering over image. #30096
  • Dev – Added an if condition block to check for new install before creating Zero and Reduced rate tax classes in class-wc-install.php. #29938
  • Dev – Product attributes lookup table usage when enabled. #29896
  • Dev – Set $woocommerce_loop name propriety to widget “Products”. #29847
  • Dev – Reduce the potential for errors when plugins implement REST API endpoints based on WooCommerce’s own products controller. #29835
  • Dev – Remove ABSPATH check in interfaces. #30124
  • Dev – Add ability to bulk update order status to cancelled. #30116
  • Dev – Register woocommerce.css in editor screens so it can be enqueued in the editor. #30093
  • Dev – Add Customize WooCommerce link for block-based themes. #30044

**WooCommerce Admin – 2.4.0 **

  • Add – SlotFill to Abbreviated Notification panel #7091
  • Add – Consume remote payment methods on frontend #6867
  • Add – Extend payment gateways REST endpoint #6919
  • Add – Add remote payment gateway recommendations initial docs #6962
  • Add – Add loading placeholders for payment gateways task #7123
  • Add – Note date range logic for GivingFeedback, and InsightFirstSale note. #6969
  • Add – Add transient notices feature #6809
  • Add – Add transformers in remote inbox notifications #6948
  • Add – Add Mercado Pago as default fallback payment gateway #7043
  • Add – Add in Razorpay as default fallback payment gateway #7096
  • Add – Get post install scripts from gateway and enqueue in client #6967
  • Add – Add eWAY as default fallback gateway #7108
  • Add – Free extension list powered by remote config #6952
  • Add – Add PayPal to fallback payment gateways #7001
  • Add – Add a data store for WC Payments REST APIs #6918
  • Add – Progressive setup checklist copy and call to action buttons. #6956
  • Add – Add Paystack as fallback gateway #7025
  • Add – Add Square as default fallback gateway #7107
  • Add – Add COD method to default payment gateway recommendations #7057
  • Add – Add BACS as default fallback payment gateway #7073
  • Add – A/B test of progressive checklist features. #7089
  • Add – Add payment gateway return URL and action #7095
  • Add – Add Mollie to the default payment gateways. #7092
  • Add – Show task and activity notifications in the Inbox panel #7017
  • Add – Adding WCPay payment configuration defaults. #7097
  • Add – Create onboarding package to house refactored WCPay card and relevant components #7058
  • Dev – Add Jetpack Backup admin note #6738
  • Dev – Reduce the specificity and complexity of the ReportError component #6846
  • Dev – Converting component to TypeScript. #6981
  • Dev – Update package-lock to fix versioning of local packages. #6843
  • Dev – Use rule processing for remote payment methods #6830
  • Dev – Update E2E jest config, so it correctly creates screenshots on failure. #6858
  • Dev – Fixed storybook build script #6875
  • Dev – Removed allowed keys list for adding woocommerce_meta data. #6889 🎉 @xristos3490
  • Dev – Delete all products when running product import tests, unskip previously skipped test. #6905
  • Dev – Add payment method selector to onboarding store #6921
  • Dev – Add disabled prop to SelectControl #6902
  • Dev – Add filter variation to tracks data in products analytics. #6913
  • Dev – Offload remote inbox notifications engine run using action-scheduler. #6995
  • Dev – Add source param support for notes query. #6979
  • Dev – Remove the use of Dashicons and replace with @wordpress/icons or gridicons. #7020
  • Dev – Refactor inbox panel components and moved to experimental package. #7006
  • Dev – Business features uncheck creative mail by default #7139
  • Dev – Remove support for IE11. #7112
  • Dev – Drop styling support for IE11. #7137
  • Dev – Remove react-docgen docs in favor of Storybook #7055
  • Enhancement – Add expand/collapse to extendable task list. #6910
  • Enhancement – Add task hierarchy support to extended task list. #6916
  • Enhancement – Add remind me later option to task list. #6923
  • Enhancement – Enable Remote Free Extensions List #7144
  • Enhancement – Adding Slotfills for remote payments and SettingsForm component. #6932
  • Fix – Update the wordpress/babel-preset to avoid crashes in WP5.8 beta2 #7202
  • Fix – Add fallback for the select/dispatch data-controls for older WP versions #7204
  • Fix – RemoteFreeExtension hide bundle when all of its plugins are not visible #7182
  • Fix – Issue where summary stats were not showing in Analytics > Stock. #7161
  • Fix – Rule Processing Transformer to handle dotNotation default value #7009
  • Fix – Remove Navigation’s uneeded SlotFill context #6832
  • Fix – Report filters expecting specific ordering. #6847
  • Fix – Render bug with report comparison mode selections. #6862
  • Fix – Throw exception if the data store cannot be loaded when trying to use notes. #6771
  • Fix – Autocompleter for custom Search in FilterPicker #6880
  • Fix – Get currency from CurrencyContext #6723
  • Fix – Correct the left position of transient notices when the new nav is used. #6914
  • Fix – Exclude WC Shipping for store that are only offering downloadable products #6917
  • Fix – SelectControl focus and de-focus bug #6906
  • Fix – Multiple preload tag output bug. #6998
  • Fix – Call existing filters for leaderboards in analytics. #6626
  • Fix – Set target to blank for the external links #6999
  • Fix style regression with the Chart header. #7002
  • Fix styling of the advanced filter operator selection. #7005
  • Fix – Deprecated warnings from select control @wordpress/data-controls. #7007
  • Fix – Bug with Orders Report coupon exclusion filter. #7021
  • Fix – Show Google Listing and Ads in installed marketing extensions section. #7029
  • Fix – Notices not dissapearing. #7077
  • Fix – Keyboard accessibility on the free features tab. #7149
  • Fix – Fix error handling when remote free extension API returns empty array. #7147
  • Fix – Transformer casing is incorrect and creates an error on case-sensitive systems #7104
  • Fix – Preventing redundant notices when installing plugins via payments task list. #7026
  • Fix – Autocompleter for custom Search in CompareFilter #6911
  • Fix – Add target to the button to open it in a new tab #7110
  • Fix – Make Search accept synchronous autocompleter.options. #6884
  • Fix – Set autoload to false for all remote inbox notifications options. #7060
  • Fix – Fix and refactor explat polling to use setTimeout. #7274
  • Fix – Update the wordpress/babel-preset to avoid crashes in WP5.8 beta2 #7202
  • Fix – Add fallback for the select/dispatch data-controls for older WP versions #7204
  • Fix – The use of gridicons for Analytics section controls. #7237
  • Fix – WordPress 5.8 compatibility UI fixes #7255
  • Fix – CurrencyFactory constructor to use proper function #7261
  • Tweak – Setup checklist copy revert. #7015
  • Tweak – Revert Card component removal #7167
  • Update – Task list component with new Experimental Task list. #6849
  • Update – Optimize payment gateway resolution #7124
  • Update – Experimental task list import to the experimental package. #6950
  • Update – Redirect to WC Home after setting up a payment method #6891
  • Update – Hook up payments gateway data store #7038
  • Update – Update remote payment docs gateway methods #7079
  • Update – Remove original business step flow #7103
  • Update – WooCommerce Shipping copy on onboarding steps #7148

** WooCommerce Blocks Package – 5.2.0 & 5.3.0 & 5.3.1 & 5.3.2 **

  • Enhancement – Hide legacy widgets with a feature-complete block equivalent from the widget area block inserter. #4237
  • Enhancement – Provide block transforms for legacy widgets with a feature-complete block equivalent. #4292
  • Enhancement – Hide the All Products Block from the Customizer Widget Areas until full support is achieved. #4225
  • Enhancement – Improved accessibility and styling of the controls of several of ours blocks. #4100
  • Enhancement – Fix duplicate react keys in ProductDetails component. #4187
  • Fix – Fix a bug in which Cart Widget didn’t update when adding items from the All Products block. #4291
  • Fix – Fix an issue where an attempt to add an out-of-stock product to the cart was made when clicking the “Read more” button. #4265
  • Fix – Fix Product Categories List block display in Site Editor #4335.
  • Fix – Make links in the Product Categories List block unclickable in the editor #4339.
  • Fix – Fix rating stars not being shown in the Site Editor #4345.

** WooCommerce Blocks Feature Plugin – 5.2.0 & 5.3.0 & 5.3.1 & 5.3.2 **

  • Enhancement – Added a key prop to each CartTotalItem within usePaymentMethodInterface. (4240)
  • Enhancement – Sync customer data during checkout with draft orders. (4197)
  • Enhancement – Update the display of the sidebar/order summary in the Cart and Checkout blocks. (4180)
  • Enhancement – Hide the Cart and Checkout blocks from the new block-based widget editor. (4303)
  • Fix – Hide tax breakdown if the total amount of tax to be paid is 0. (4262)
  • Fix – Prevent Coupon code panel from appearing in stores were coupons are disabled. (4202)
  • Fix – For payment methods, only use canMakePayment in the frontend (not the editor) context. (4188)
  • Fix – Fix sending of confirmation emails for orders when no payment is needed. (4186)
  • Fix – Stopped a warning being shown when using WooCommerce Force Sells and adding a product with a Synced Force Sell to the cart. (4182)
  • Fix – Fix some missing translations from the Cart and Checkout blocks. (4295)
  • Fix – Fix the flickering of the Proceed to Checkout button on quantity update in the Cart Block. (4293)
  • Fix – Remove the ability to filter snackbar notices. #4398
  • Fix – Fix a display issue when itemized taxes are enabled, but no products in the cart are taxable. (4284)
  • Compatibility – Add the ability for extensions to register callbacks to be executed by Blocks when the cart/extensions endpoint is hit. Extensions can now tell Blocks they need to do some server-side processing which will update the cart. (4298)
  • Tweak – Add couponName filter to allow extensions to modify how coupons are displayed in the Cart and Checkout summary. (4166)
  • Tweak – Add Slot in the Discounts section of the cart sidebar to allow third party extensions to render their own components there. (4248)

** ActionScheduler 3.2.0 & 3.2.1 **

  • Fix – Add “no ordering” option to as_next_scheduled_action().
  • Fix – Add secondary scheduled date checks when claiming actions (DBStore) | #634.
  • Fix – Add secondary scheduled date checks when claiming actions (wpPostStore) | #634.
  • Fix – Adds a new index to the action table, reducing the potential for deadlocks (props: @glagonikas).
  • Fix – Fix unit tests infrastructure and adapt tests to PHP 8.
  • Fix – Identify in-use data store.
  • Fix – Improve test_migration_is_scheduled.
  • Fix – PHP notice on list table.
  • Fix – Speed up clean up and batch selects.
  • Fix – Update pending dependencies.
  • Fix – [PHP 8.0] Only pass action arg values through to do_action_ref_array().
  • Fix – [PHP 8] Set the PHP version to 7.1 in composer.json for PHP 8 compatibility.
  • Fix – add is_initialized() to docs.
  • Fix – fix file permissions.
  • Fix – fixes #664 by replacing __ with esc_html__.
  • Fix – Add extra safety/account for different versions of AS and different loading patterns. #714
  • Fix – Handle hidden columns (Tools → Scheduled Actions) | #600.

See changelog for all versions.