WooCommerce is a powerful, extendable eCommerce plugin that helps you sell anything. Beautifully.
|Author:||Automattic (profile at wordpress.org)|
|WordPress version required:||5.5|
|WordPress version tested:||5.7.1|
|Added to WordPress repository:||27-09-2011|
|Total downloads:||133 164 539|
|Active installs:||5 000 000+|
Click to start download
WooCommerce is a flexible, open-source eCommerce solution built on WordPress. Whether you’re launching a business, taking an existing brick and mortar store online, or designing sites for clients you can get started quickly and build exactly the store you want.
Activate the free WooCommerce plugin on a new or existing WordPress site, follow the optional guided tour, and set up a new store in minutes with:
- Product, Cart, and Checkout pages
- Secure payments by credit card and alternatives
- Configurable shipping options, including flat rates and label printing
- Integrate content and commerce across your site via modular blocks
- Automated tax calculations
- Google Analytics, MailChimp, and Facebook integration
- Central store dashboard with key metrics, and more.
Beyond the basics, WooCommerce is fully customizable and extendable:
- Choose a design to suit your brand and industry.
- Enhance your store with free and paid extensions: add features and integrate with local and global eCommerce web services.
- Inspect and modify any aspect of the core plugin code.
- Leverage hooks and filters to modify functions.
- Build on top of the REST API and webhooks.
Open-source freedoms mean full ownership of content and data forever – plus the expertise of a friendly global community.
WooCommerce is built to allow store managers to run an eCommerce site themselves, no web developer needed. There is also a free WooCommerce mobile app (Android and iOS) for store management on the go.
WooCommerce is developed and supported by Automattic, the creators of Jetpack and WordPress.com, along with independent contributors. The official extension marketplace is on WooCommerce.com.
From subscriptions to gym classes to luxury cars
With WooCommerce, you can sell both physical and digital goods in all shapes and sizes, offer product variations, complex configurations, and instant downloads to shoppers; and even sell affiliate goods from online marketplaces.
And those are just the out-of-the-box options. With paid extensions, you can extend your WooCommerce store to take bookings, offer memberships, set up recurring payments by subscription, create dynamic pricing rules, and much more.
Start a monthly wine subscription box, offer a discount on yoga mats to members who’ve attended 10+ classes, offer configurable hampers or personalized jewelry – it’s all possible with WooCommerce.
Comprehensive payment options
WooCommerce comes bundled with the ability to accept major credit cards, alternative payment methods, BACS (bank transfers), and cash on delivery.
For additional options, WooCommerce also integrates with more than 140 region-specific gateways including popular choices like Stripe, PayPal, Square and Amazon Pay. Apple Pay and Google Pay are also supported.
Search for your payment service provider of choice on the official marketplace.
Ship locally and globally
Shipping with WooCommerce is highly configurable. Adjust the built-in settings to offer free shipping or flat rate shipping, limit your shipments to specific countries by setting up shipping zones, or open your store up to the world.
Official extensions connect you with hundreds of local and international carriers – including Royal Mail, FedEx, and Australia Post – and let you integrate with inventory management and fulfilment providers.
There are also extensions available to add delivery and shipping options and support strategies like buy-one-get-one free, free gifts, and add-ons. WooCommerce Shipping supports real-time calculations and printing labels at home.
Design your store with themes and blocks
WooCommerce store design starts with a theme of your choice. There are hundreds of free and paid themes available, including Storefront by Automattic — it’s free to all stores and you can choose to have it installed for you during the guided setup.
Storefront offers deep WooCommerce integration and prioritizes speed and uptime. You can add your brand and define your style by customizing Storefront yourself or adding one of several industry-themed Storefront child themes.
Personalize your store’s design even more with WooCommerce Blocks (available in WooCommerce 3.6 and above) — use them to add selections of or single products to any page, for a seamless blending of commerce into content.
Customize your store with extensions
The easiest way to add features and functionality to a WooCommerce store is with an extension:
- Sell anything – Subscriptions, Memberships, Bookings, Product Bundles, and more.
- Make your store, your way – Product Add-Ons, Checkout Field Editor, Additional Variation Images, and more.
- Customize your shipping options – Table Rate Shipping, Shipment Tracking, live rates from top carriers, and more.
- Find your audience, market to them your way – Google Product Feed, LiveChat, Amazon/eBay marketplace integration, and more.
- Drive sales – Dynamic Pricing, Smart Coupons, Google Ads, and more.
There are hundreds of official extensions reviewed by WooCommerce developers available on the WooCommerce.com marketplace, and many in the WordPress.org repository and on the wider web.
Control your data forever
WooCommerce gives you complete control – from taxes to stock levels to customer accounts. Add and remove extensions, change your store’s design, and switch themes or hosts or payment service providers, all as you please.
In a world increasingly aware of the importance of data protection, WooCommerce gives you full ownership over what is tracked and stored. If you opt to share usage data with us, your data is anonymized and kept secure. At any stage, you can opt out of all forms of tracking while still enjoying all of WooCommerce’s capabilities.
With WooCommerce, your data belongs to you. One of the risks of using a hosted eCommerce platform the risk of losing your store if the provider closes. WooCommerce store data is future-proof — you’re are free to export all your content and take your site wherever you choose.
Why developers like WooCommerce
WooCommerce was originally created with developers in mind. Built with a REST API, it integrates with virtually any service. Store data can be accessed anywhere, anytime, 100% securely.
WooCommerce allows developers to easily create, modify, and scale a store that meets client’s specifications, and to make enhancements either with extensions or with customs solution.
No matter the size of the store you want to build, WooCommerce has a robust framework that supports stores from basic to enterprise – with content and commerce in a single, central location.
WooCommerce is audited by a dedicated team of developers who work across time zones to identify and patch any and all discovered bugs. There is comprehensive, easily-accessible documentation that is updated with each release. With our docs, you’ll learn how to create the site your client needs.
Join our growing community
WooCommerce is one of the fastest-growing eCommerce communities. We’re proud that the helpfulness of the community and wealth of resources available online are frequently cited as reasons our users love it.
There are 80+ WooCommerce Meetups taking place in cities across the world that you can attend for free and even get involved in running. WooCommerce also has a regular presence at WordCamps across the globe – and we’d love to meet you.
If you’re interested in contributing to WooCommerce we’ve got more than 350 contributors, and there’s always room for more. Head to the WooCommerce GitHub Repository to find out how you can pitch in.
WooCommerce is currently 100% translated into 24 languages, including Danish, Ukrainian, and Persian. If you’re interested in helping to localize WooCommerce by adding your local language, visit translate.wordpress.org.
Contributors & Developers
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.
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.
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.
We have a detailed guide on How To Update WooCommerce.
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.
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.
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.
Extensive WooCommerce REST API Documentation is available on GitHub.
Check out Frequently Asked Questions for more.
- Fix – Can’t grant permission for download from order details page. #29691
- Update – WooCommerce Blocks package 4.7.2. #29660
WooCommerce Blocks – 4.7.2
- Fix – Check if Cart and Checkout are registered before removing payment methods. (4056)
- Add – Filter woocommerce_product_recount_terms to allow/prevent recounting of product terms. #29281
- Add – Result return array to the checkout_place_order_success callback to allow 3rd party to manipulate results. #29232
- Dev – Fix miscellaneous typos in docblocks. #29285
- Dev – Added woocommerce_ajax_order_items_removed hook. #29241
- Dev – Fix usage of docker-compose (wc-e2e) commands in e2e tests when running them within WSL2. #29207
- Dev – Fixes to documentation of WC_Shipping_Rate. #29117
- Dev – Add tracks event when a user clicks on the links of the WooCommerce Status widget. #29109
- Dev – Track the number of installations of WooCommerce Payments via that extensions banner for stores that have opted in to tracking. #29052
- Dev – Added woocommerce_ajax_order_items_removed hook. #28936
- Dev – Add tracking of woocommerce_admin_disabled usage. #28535
- Enhancement – Add support for the low stock threshold for variations. #29345
- Enhancement – Clean up of major version update compatibility warnings. #29200
- Enhancement – Add a new dashboard widget to promote users to finish onboarding tasks. #29174
- Enhancement – Update the Woo widget net sales link and logic to use the new analytics page and data. #29149
- Enhancement – Added the body class woocommerce-shop to the shop page, so that it can be targeted via CSS. (#28724). #29051
- Enhancement – Make sure downloadable file paths are properly recognized for strengthened security. #28699
- Enhancement – Delay the registration of data exporters and erasers to avoid multiple language files from being loaded. #28078
- Fix – Offsets not calculated correctly sometimes on select2 dropdowns causing usability issues. #29397
- Fix – Handle errors in fault installations of PHP Intl. #29391
- Fix – Cart page calculate shipping fields not showing correct fields based on location. #29282
- Fix – Product categories widget item count not always showing the correct number. #29281
- Fix – Updated include/rest-api/Controllers/Version3/class-wc-rest-shipping-zone-methods-controller.php to include a item schema function which appends support for order and class type values. #29218
- Fix – Check if variation_id if belongs to the parent product while adding products to the cart. #29208
- Fix – Reduce the number of ajax calls used when Geolocation (with Page Caching Enabled) mode is enabled. #29182
- Fix – Don’t display the coupon form on checkouts requiring the customer to be logged in to checkout. #29151
- Fix – If coupon_lines are specified within a REST API order update, return an error if coupon item IDs are also specified. #29146
- Fix – Avoids duplicating the word ‘(optional)’ in the context of the Billing Address 2 field. #29136
- Fix – PHP notice when checking out. #29133
- Fix – Remove duplicate containers from the single and archive product pages. #29121
- Fix – Wrong taxonomy caching in term and product attributes controllers. #29115
- Fix – Make the parameters of the refund creation REST API behave as documented. #29099
- Fix – Shipping methods with similar names could cause shipping method not selectable in order page. #29049
- Fix – WC_Countries::get_formatted_address() not returning full name in correct order in some languages. #29008
- Fix – add validation of the posted country codes on checkout. #28849
- Fix – Correctly display pagination arrows on RTL languages. #28523
- Fix – Invalid refund amount error on $0 refund when number of decimals is equal to 0. #27277
- Fix – “Sale” badge misaligned on products when displaying 1 item per row. #29425
- Fix – Revert a replacement of wp_redirect to wp_safe_redirect in WC_Checkout::process_order_payment that caused issues in the default PayPal interface. #29459
- Fix – Don’t remove existing coupons from order when an invalid REST API request for updating coupons is submitted. #29474
- Fix – Wrong logic for including or excluding the payments step in the list of completed tasks in the onboarding wizard. #29518
- Fix – Error when loading the admin dashboard while the admin package was disabled. #29613
- Fix – “” is not a valid country code” error when no billing/shipping country specified (e.g. when using PayPal checkout). #29606
- Fix – Sanitize tax class and display errors in admin while creating tax classes.
- Fix – Check if a verified product owner is required before placing a review.
- Fix – Make product name escaping consistent in the front-end.
- Tweak – Added the Mercado Pago logo into the assets/images folder in order to use it in the payments setup task. #29365
- Tweak – Update the contributor guidelines. #29150
- Tweak – Introduced phone number input validation. #27242
- Tweak – Escape short description.
- Update – WooCommerce Admin package 2.1.5. #29577
- Update – WooCommerce Blocks package 4.7.0. #29406
WooCommerce Admin – 2.1.0 & 2.1.1 & 2.1.2 & 2.1.3 & 2.1.4 & 2.1.5
- Add – Add navigation intro modal. #6367
- Add – CES track settings tab on updating settings #6368
- Add – Core settings redirection to new settings pages #6091
- Add – Favorites tooltip to the navigation #6312
- Add – Favoriting extensions client UI #6287
- Add – Remove CES actions for adding and editing a product and editing an order #6355
- Add – Settings client pages #6092
- Add – Settings feature and pages #6089
- Dev – Add filter to allow enabling the WP toolbar within the new navigation. #6371
- Dev – Add navigation favorites data store #6275
- Dev – Add unit tests to Navigation’s Container component. #6344
- Dev – Allow highlight tooltip to use body tag as parent. #6309
- Dev – Change
homeUrlon navigation site title #6240
- Dev – Fix the react state update error on homescreen. #6320
- Dev – Refactor head and body heights #6247
- Dev – Remove Google fonts and material icons. #6343
- Dev – Use box sizing and padding to fix nav and admin menu styling #6335
- Enhancement – Move capability checks to client #6365
- Enhancement – Move favorited menu items to primary menu #6290
- Enhancement – Navigation: Add test to container component #6344
- Enhancement – override wpbody styles when nav present #6354
- Feature – Increase target audience for business feature step. #6508
- Fix – Add check for navigating being enabled. #6462
- Fix – Add customer name column to CSV export #6556
- Fix – Add guard to “Deactivate Plugin” note handlers to prevent fatal error. #6532
- Fix – Adding New Zealand and Ireland to selective bundle option, previously missed. #6649
- Fix – Broken link anchors to online documentation. #6455
- Fix – Check if tax was successfully added before displaying notice #6229
- Fix – Correct a bug where the JP connection flow would not happen when installing JP in the OBW. #6521
- Fix – Crash of Analytics > Settings page when Gutenberg is installed. #6540
- Fix – Display” option fails to collapse upon invoking “Help” option #6233
- Fix – Email notes now are turned off by default #6324
- Fix – Empty nav menu #6366
- Fix – Enqueue scripts called incorrectly in php unit tests #6358
- Fix – Hide tooltip in welcome modal #6142
- Fix – Recommended Payment Banner missing in Safari #6375
- Fix – Removal of core settings pages #6328
- Fix – Removed @woocommerce/components/card from OBW #6374
- Fix – Reset Navigation submenu before making Flyout #6396
- Fix – Restore missing Correct the Klarna slug #6440
- Fix – Top bar slightly overlaps wp-admin navigation on mobile #6292
- Fix – update single column home screen width to 680px #6297
- Fix – Update timing of InboxPanel state changes for the unread indicator #6246
- Tweak – Enqueue beta features scripts on enqueue_scripts action instead of filter #6358
- Tweak – Move admin menu manipulation from admin_head to admin_menu #6310
- Tweak – Navigation: Migrate methods to
- Tweak – New Settings: Turn off in dev mode #6348
- Tweak – Order and styles updates to nav footer #6373
- Tweak – Remove categories without menu items #6329
- Tweak – Set international country feature flag off
- Tweak – Set
is_deletedfrom the database when instantiating a
- Tweak – Update inline documentation for navigation Screen class #6173
- Tweak – Updates to copy and punctuation to be more conversational and consistent. #6298
WooCommerce Blocks – 4.5.0 & 4.6.0 & 4.7.0 & 4.7.1
- Enhancement – Login links on the checkout should use the account page. (3844)
- Enhancement – Prevent checkout linking to trashed terms and policy pages. (3843)
- Enhancement – Improved nonce logic by moving nonces to cart routes only. (3812)
- Enhancement – If coupons become invalid between applying to a cart and checking out, show the user a notice when the order is placed. (3810)
- Enhancement – Improve design of cart and checkout sidebars. (3797)
- Enhancement – Improve error displayed to customers when an item’s stock status changes during checkout. (3703)
- Enhancement – Dev – Block Checkout will now respect custom address locales and custom country states via core filter hooks. (3662)
- Enhancement – Update checkout block payment methods UI. (3439)
- Enhancement – StoreAPI: Inject Order and Cart Controllers into Routes. (3871)
- Enhancement – Update Panel component class names to follow guidelines. More info can be found in our theming docs: https://github.com/woocommerce/woocommerce-gutenberg-products-block/blob/18dd54f07262b4d1dcf15561624617f824fcdc22/docs/theming/class-names-update-460.md. (3860)
- Enhancement – Refactor block type registration to support 3rd party integrations.
- Enhancement – A new configuration property is available to registered payment methods for additional logic handling of saved payment method tokens. (3961)
- Enhancement – Provided billing data to payment method extensions so they can decide if payment is possible. (3922)
- Enhancement – Prevent errant payment methods from keeping Cart and Checkout blocks from loading. (3920)
- Fix block elements that don’t play well with dark backgrounds. (3887)
- Fix – JS warning if two cart products share the same name. (3814)
- Fix – Align place order button to the right of the block. (3803)
- Fix – Ensure special characters are displayed properly in the Cart sidebar. (3721)
- Fix – Bug where the total price of items did not include tax in the cart and checkout blocks. (3851)
- Fix – Handle out-of-stock product visibility setting in All Products block. (3859)
- Fix – Show cart item subtotal instead of total in Cart and Checkout blocks (#3905)
- Fix – Fix button styles in Twenty Nineteen theme. (3862)
- Fix – Return correct sale/regular prices for variable products in the Store API. (3854)
- Fix – Remove shadows from text buttons and gradient background from selects in some themes. (3846)
- Fix – Hide Browse Shop link in cart block empty state when there is no shop page. (3845)
- Fix – Remove extra padding from payment methods with no description. (3952)
- Fix – “save payment” checkbox not showing for payment methods. (3950)
- Fix – Cart preview when shipping rates are set to be hidden until an address is entered. (3946)
- Fix – Sync cart item quantity if its Implicitly changed. (3907)
- Fix – FSE not being visible when WC Blocks was enabled. (3898)
- Fix – Ensure sale badges have a uniform height in the Cart block. (3897)
- Note – Internally, this release has modified how
AbstractBlock(the base class for all of our blocks) functions, and how it loads assets.
AbstractBlockis internal to this project and does not seem like something that would ever need to be extended by 3rd parties, but note if you are doing so for whatever reason, your implementation would need to be updated to match. (3829)