WooCommerce

Description

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:

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:

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

“WooCommerce” has been translated into 55 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.

Screenshots

Blocks

This plugin provides 17 blocks.

woocommerce/price-filter
Filter Products by Price
woocommerce/attribute-filter
Filter Products by Attribute
woocommerce/active-filters
Active Product Filters
woocommerce/product-search
Product Search
woocommerce/featured-category
Featured Category
woocommerce/product-categories
Product Categories List
woocommerce/handpicked-products
Hand-picked Products
woocommerce/product-category
Products by Category
woocommerce/product-best-sellers
Best Selling Products
woocommerce/all-products
All Products
woocommerce/product-tag
Products by Tag
woocommerce/featured-product
Featured Product
woocommerce/product-on-sale
On Sale Products
woocommerce/reviews-by-product
Reviews by Product
woocommerce/all-reviews
All Reviews
woocommerce/reviews-by-category
Reviews by Category
woocommerce/product-new
Newest Products

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 our user guide

For extending or theming WooCommerce, see our codex.

Where can I get support or talk to other users?

If you get stuck, you can ask for help in the WooCommerce Plugin Forum.

For help with paid extensions from WooCommerce.com, use our helpdesk.

Will WooCommerce work with my theme?

Yes! WooCommerce will work with any theme, but may require some styling. Please see our codex for help. If you’re looking for a theme with built in WooCommerce integration we recommend Storefront.

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

You can vote on and request new features and extensions on our WooIdeas board

Where can I report bugs or contribute to the project?

Report bugs on the WooCommerce GitHub repository. You can also report them in our support forum.

Where can I find the REST API documentation?

You can find the documentation of our REST API on the WooCommerce REST API Docs.

WooCommerce is awesome! Can I contribute?

Yes you can! Join in on our GitHub repository.

Reviews

March 26, 2020
Why do you publish an update which causes so much harm?!?! Would be nice if you can provide the previous version.
March 25, 2020
Very low performance after update. I thought they add admin plugin to main plugin because fixing low performance of the first one.
March 23, 2020
Please developers who set up webshops! Don't rely on Woocommerce because you will be disappointed with the way templates work. Because Woocommerce uses a custom page template, most themes will put that behind a paywall. Leaving you only allowed to edit the blog and page template, and not the product page. Also they use a hierarchy so you have to edit the order of meta details. I have never seen such a poorly written plugin before. PLEASE STAY ALERT DON'T DOWNLOAD IF YOU ARE NOT SURE WHAT YOU ARE DOING!!
Read all 3,524 reviews

Contributors & Developers

“WooCommerce” has been translated into 60 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

4.0.1 – 2020-03-18

WooCommerce
* Enhancement – Update Action Scheduler to 3.1.4. #25966
* Enhancement – Bump Woocommerce Admin dependency to version 1.0.2. #25961
* Enhancement – Update dependency woocommerce/woocommerce-admin to v1.0.3 #25975
* Fix – Add usage_count meta before using it in a query. #25882
* Fix – Corrected argument type validation in plugin installer API. #25858
* Fix – Use standard admin_url function instead of absolute path. #25884
* Fix – Reverted the performance optimization made to variation saving. #25950
* Fix – Send dummy params to evaluate_cost method to detect validation errors. #25946
* Fix – Made the package shipping check more permissive. #25916
* Fix – Fix admin notes table does not exist errors when upgrading to 4.0.x. #25891

WooCommerce Admin
* Enhancement – Onboarding: business step: add Google Ads extension install.
* Tweak – create database tables on an earlier hook to avoid conflicts with core WooCommerce.
* Fix – Add Report Extension Example: Add default props to ReportFilters.
* Fix – Product report sorting by SKU when some products don’t have SKUs.
* Fix – type warning on install timestamp in PHP 7.4.
* Fix – PHP error when WooCommerce core is Network Active on Multisites.
* Fix – missing database table errors on WooCommerce upgrade.
* Fix – undefined const WC_ADMIN_VERSION_NUMBER when WP < 5.3
* Fix – Made the admin note loading more resilient to prevent failures when loading notes with invalid content_data. #3926
* Fix – Removed replace_actionscheduler_store_class function. #3936
* Fix – Rename Google Shopping image asset. #3931
* Fix – Fix calling protected has_satisfied_dependencies on outdated plugin. #3938
* Dev – Add Changelog script.
* Dev – Fix failing tests after WC core merge.
* Dev – Bump WooCommerce tested up to tag.
* Dev – Update prestart script so readme.txt stable tag is updated.

Action Scheduler
* Fix – Re-create tables if needed on Scheduled Actions screen load. #492
* Fix – Add null action check on Scheduled Actions screen list rows. #493
* Fix – Fix context on ignored action log message. #481
* Fix – Restore scheduled action row and bulk action processing on WooCommerce Status screen. #487
* Fix – Include logs table re-create missed in #492. #495
* Fix – Ensure valid table name in save action. #498

4.0.0 – 2020-03-10

  • Enhancement – Included information about packages in the System Status Report. #25584
  • Enhancement – New WooCommerce Admin. #25011
  • Enhancement – Update dependency woocommerce/woocommerce-blocks to v2.5.12 #25587
  • Enhancement – Updated Action Scheduler to 3.0.1. #25566
  • Enhancement – Update dependency woocommerce/woocommerce-admin to v0.25.1. #25620
  • Enhancement – Update dependency woocommerce/woocommerce-blocks to v2.5.13. #25696
  • Enhancement – Added the WC Admin enabled db update notice. #25736
  • Enhancement – Update Action Scheduler to version 3.1.1. #25745
  • Enhancement – Update dependency woocommerce/woocommerce-blocks to v2.5.14. #25807
  • Enhancement – Update dependency woocommerce/woocommerce-admin to v1.0. #25822
  • Enhancement – Update dependency woocommerce/action-scheduler to v3.1.2. #25859
  • Performance – Improved the client-side preparation for variation saving. #25382
  • Tweak – Enhance order details and payment summary. #25504
  • Tweak – Increase new onboarding group test to 50%. #25501
  • Tweak – Increased range and precision for min_price and max_price in the product meta lookup table. #25253
  • Tweak – Move action scheduler to external via composer. #25404
  • Tweak – Only update the customer IP address when order gets created from admin. #25137
  • Tweak – Remove WooCommerce Admin install alert. #25502
  • Tweak – Removed WC Admin from the Setup Wizard if it’s already active. #25562
  • Tweak – Set email header table width to 100% for full width. #25294
  • Tweak – Simplified MaxMind integration title. #25522
  • Tweak – Update ‘Country’ to ‘Country / Region’ label. #25530
  • Tweak – WooCommerce.com plugins auto-install and update improvement. #25532
  • Fix – Add missing closing tag. #25319
  • Fix – Added validation to the cost field for flat rate shipping. #24919
  • Fix – Address in shipping calculator malformed for Canada. #25149
  • Fix – Adjusted package shipping rates to only be visible when a full address is entered. #25128
  • Fix – Check for WooCommerce Admin feature plugin class before adding install notice. #25395
  • Fix – Corrected the performance issues caused by the Cash-On-Delivery plugin’s initialization process. #25512
  • Fix – Duplicate webhook deliveries. #25183
  • Fix – Fix fatal error that would occur when calling the WC_Payment_Gateways::set_current_gateway() function and there is no WC session. #25322
  • Fix – Fixed adding multiple items to cart from any product listing page. #24818
  • Fix – Fixed get_discount function return type. #25567
  • Fix – Fixed possible multiple is_vat_exempt order meta in order creation. #25426
  • Fix – Fixed wrong context help for translators. #25496
  • Fix – Make WC_Shipping::is package shippable less strict. #25386
  • Fix – Prevent undefined wp_delete_user() error while removing inactive accounts. #25489
  • Fix – Removed constants and autoloader from the uninstall script. #25589
  • Fix – Removed the lowercase conversion for product search terms that caused incorrect results to case sensitive searches. #25314
  • Fix – Restored the default behavior of “Shipping destination” option. #25571
  • Fix – Set image CSS on emails to be max-width: 100% so that they don’t break the email template. #24764
  • Fix – Setup wizard shipping setup verification logic correction. #25540
  • Fix – Fixed typo in label. #25645
  • Fix – Added the missing “bestRating” and “worstRating” params to structured schema data. #25667
  • Fix – Replaced deprecated Jetpack::is_staging_site call. #25670
  • Fix – Avoid Automattic\Jetpack\Constants in main woocommerce class. #25697
  • Fix – Change the namespace of the WC Admin Package class and update WC Admin package. #25701
  • Fix – Unmark completed AS migration during the update to make sure AS migration happens. #25707
  • Fix – configure Jetpack plugin before trying to connect/register. #25742
  • Fix – Check configure exists before calling to support older JP versions. #25747
  • Fix – Prevent edited attribute notice being hidden by new dashboard. #25757
  • Fix – Corrected the cache invalidation behavior of order item CRUD actions. #25734
  • Fix – Don’t show duplicated update notifications on Woo Screens. #25828
  • Fix – Escape MaxMind database URL. #25682
  • Fix – System status report should correctly identify inactive package. #25830
  • Dev – Added support for placeholder attribute in quantity inputs. #25418
  • Dev – Added tax_status and tax_class columns to the product meta data lookup table. #25428
  • Dev – Introduced woocommerce_top_rated_widget_args filter. #25320
  • Dev – Introduced woocommerce_admin_process_variation_object hook. #24929
  • Dev – Added actions before and after grouped product list to allow adding custom rows. #25093
  • Dev – Added filter to tweak whether a product has enough stock while attempting to pay for an order. #25230
  • Dev – Added the automattic/jetpack-constants package and replace PHP constant definition checks with it. #25516
  • Dev – Added a triggerHandler called checkout_place_order_success on a successful order during the checkout process. #25289
  • Dev – Allow filtering of default meta value inside WC_Data::get_meta even if meta key not found. #24066
  • Dev – Includes Emogrifier composer package instead of including into includes/libraries. #25525
  • Dev – Introduce WC_Countries::get_vat_countries for returning a list of countries that uses VAT and refactor WC_Countries::get_european_union_countries with backward compatibility and deprecation to remove the VAT functionality from there. Brexit, remove GB from WC_Countries::get_european_union_countries. #24943
  • Dev – Introduced woocommerce_download_product_filepath filter. #25485
  • Dev – Introduced woocommerce_email_content_type filter. #25405
  • Dev – Updated woocommerce_email_from_name and woocommerce_email_from_address filter arguments to include wp_email() default data. #25405
  • Dev – Introduced woocommerce_shortcode_products_query_results filter. #25573
  • Dev – Removed hash_equals() polyfill as it was no longer needed. #25474
  • Dev – Removed unused .order-actions CSS. #25581
  • Dev – Applies woocommerce_maxmind_geolocation_database_path in MaxMind database migration. #25681
  • Dev – Support both .data() and .dataset for formdata in add to cart requests. #25726

See changelog for all versions.