WooCommerce is a powerful, extendable eCommerce plugin that helps you sell anything. Beautifully.
|Author:||Automattic (profile at wordpress.org)|
|WordPress version required:||4.9|
|WordPress version tested:||5.2.4|
|Added to WordPress repository:||27-09-2011|
|Total downloads:||79 056 566|
|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
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?
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?
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.
3.8.0 – 2019-01-10
- Enhancement – Show error message in “My Account – view order” if order does not exist. #24435
- Enhancement – Add support to allow connect and install for in-app purchase flow. #24451
- Enhancement – Declared support to Unicode CLDR. #24564
- Enhancement – Declared support for PHP 7.4 in CI by removing PHP 7.4 from list of allowed failures. #24668
- Enhancement – Update the recommended PHP version to 7.0 and the recommended WP version to 5.0. #24730
- Enhancement – Change On Boarding Wizard to opt out of usage tracking by default. #24680
- Enhancement – Add
Available on backordermessage for products available on backorder. #24559
- Tweak – Hide Vietnam’s state field. #24158
- Tweak – Better wording when no downloads are available on My Account > Downloads. #24172
- Tweak – Only consider orders created via checkout to hold stock. #24159
- Tweak – Stop to load order data twice in “View order” screen on “My Account” page. #24437
- Tweak – Prevent PHP warnings in tracker if order doesn’t have a created date yet. #24441
- Tweak – Use
wc_get_checkout_url()to get checkout URL. #24544
- Tweak – Maintain value of select fields in credit card form. #24720
- Tweak – Prevent filter per category while exporting product variations. #24517
- Tweak – Better wording for subtotal of items in cart and review order. #24440
- Tweak – Prevent new lines in product quantity in checkout details. #24311
- Tweak – Add a tooltip in the “Coupon expity date” field. #24749
- Tweak – CSS styling changes for WP 5.3. #24832
- Template – Moved HTML for displaying product price filter widget to a new template
product price filter widget. #23384
- Accessibility – Make $subtext color darker. #24739
- Dev – Consistent register/login submit button css class names. Preserve old class names as well for backwards compatibility. #23701
- Dev – Added woocommerce_disable_password_change_notification filter, set to false by default. #24154
- Dev – Add filter
woocommerce_cart_product_cannot_be_purchased_messageto filter notice content when an item is removed from cart, or when a product cannot be purchased. #24176
- Dev – Prevent fatal error if trying to run
- Dev – Add woocommerce_get_zone_criteria filter hook to add custom criteria for matching zone ID. #24199
- Dev – Fire actions
woocommerce_trash_product_variationappropriately when deleting or trashing product variations. #24239
- Dev – In filter
- Dev – Introduced woocommerce_prevent_adjust_line_item_product_stock filter. #24279
- Dev – Introduced
woocommerce_logout_default_redirect_urlfilter to allow custom default URL. #24282
- Dev – Added woocommerce_sort_fees_callback filter. #24280
- Dev – Remove deprecated i18n/states directory. #24364
- Dev – Add filter
woocommerce_shipping_show_shipping_calculatorfor showing shipping calculator. #24375
- Dev – Corrected UG states location. #24388
- Dev – Remove deprecations notices with PHP 7.4 by changing parameter order for
- Dev – Add “$this` param to email filter for additional_content added in 3.7. #24399
- Dev – Add
woocommerce_product_import_process_item_datafilter to allow modifying a row before importing. #24412
- Dev – Fixed warnings when error_get_last() returns null. #24442
- Dev – Use brackets instead of braces to avoid deprecation notice in PHP 7.4. #24460
- Dev – Implement Puppeteer’s architecture for running E2E tests locally. #24479
- Dev – Remove call to get_magic_quotes_runtime() as it is deprecated as of PHP 7.4. #24485
- Dev – Return value of
- Dev – Remove Selenium e2e tests & add Puppeteer new product e2e test. #24513
- Dev – Add a filter
woocommerce_ajax_add_order_item_validationto allow validations in
- Dev – Use
wc_get_page_permalink( 'cart' )because former has a filter
woocommerce_get_cart_urlto allow customization. #24530
- Dev – New
woocommerce_product_after_tabsaction hook added. #24694
- Dev – Enable append hashes on custom events (like ajax requests) #24665
- Dev – Introduced
- Dev – WC_Abstract_Order::recalculate_coupons() is public now. #24740
- Dev – Added ‘applied_coupon’ trigger to checkout.js. #24406
- Dev – Introduced woocommerce_output_cart_shortcode_content filter. #24738
- Dev – Add WPML compatibility to the geolocation URL. #24722
- Dev – Validate server requirements in WCCCOM Site Installer endpoints. #24690
- Dev – Introduced woocommerce_payment_token_class filter. #24542
- Dev – Add support for post type count to system status report. #24536
- Dev – Check for max discount to be -ve to prevent overwriting refunded fee amount. #24341
- Dev: Add filter woocommerce_european_union_countries to the method WC_Countries::get_european_union_countries(). #24741
- Dev – Allow WC_Product_Query sort products by include order. #24294
- Dev – Removed duplicated include of WC_Admin_Importers. #24751
- Dev – Refactor minimum requirement notice to use constant for easier changes in the future. #24830
- Fix – Clean products transients when term is removed. #23991
- Fix – Only add the image node to structured data if product has image. #24191
- Fix – Product attribute terms endpoint in legacy REST API v3 by converting
attribute_idto int. #24203
- Fix – Prevent duplicate processing/stock reduction when IPN or PDT notifications are enabled by checking if order is not already in
- Fix – Position of ID section in mobile rows actions when displaying the list of products in the admin. #24277
- Fix – Endpoints URLs to follow slashes preferences from WordPress permalinks. #24283
- Fix – Ensure that postcode validation doesn’t return any whitespace on beginning and end of a postcode. #24284
- Fix – Shipping classes sort under products alphabetically. #24291
- Fix – Shipping rates layout in admin settings. #24327
- Fix – Retain the focus on the select box when product variation is changed. #24339
- Fix – Prevent PHP notice in WC_Order_Item_Data_Store::get_order_item_type() when there is no entry in the database for the order item ID passed. #24353
- Fix – Add translation in class-wc-shipping.php for matching zone message. #24366
- Fix – Previewing email template. #24380
- Fix – Check if order exist before generate hash for downloads. #24384
- Fix – Ensure WC_Product_Data_Store_CPT::is_existing_sku() return boolean. #24385
- Fix –
function_existscheck for wc_hex_is_light(). #24391
- Fix – Removed Emoji from default additional email content due problem on some database that doesn’t allow Emojis. #24450
- Fix – Fixed escaping on an attribute in
- Fix – Add translation for image alt attribute text in multiple places. #24467, #24468, #24469
- Fix – Uneven padding in the input field with class “location-input” in on boarding wizard. #24476
- Fix – Duplicate id in pages settings. #24478
- Fix – Use
esc_html_efor escaping an attribute in multiple places. #24481, #24520, #24521, #24522, #24523, #24524
- Fix – Use
esc_html__in escaping attributes string. #24525, #24529
- Fix – Typo fix in payment captured error message. #24501
- Fix – Documentation URL in failed order email content. #24535
- Fix – “Add to cart” links in feed. #24545
- Fix – Escaping in Storefront banner. #24546
- Fix – Use
wp_kses_postto allow certain html tags in extensions page. #24589
- Fix – Escape
$prefixin item download links. #24601
- Fix – Use
esc_htmlin multiple places for proper escaping. #24613, #24614
- Fix – Use
esc_attrin multiple places for proper escaping. #24616
- Fix – Use
_ein multiple places for proper escaping. #24615, #24618, #24630
- Fix – Use
esc_htmlfor proper escaping and some typo fixes. #24639
- Fix – Add no-store and remove max-age header (no longer needed). #24652
- Fix – Use correct meta value for
downloadablecolumn in product lookup table regenerate function. #24681
- Fix – Admin sub-menus becoming unaligned when scrolling down in the orders page when there are no orders. #24688
- Fix – OWB country and sell in person alignment. #24700
- Fix – Domain replacement script now replaces both double and single quoted
- Fix – Convert
current_user_idto string in some places to prevent unnecessary session database updates. #24016
- Fix – Fixed description of failed order emails. #24737
- Fix – Fixed Photoswipe styles. #24296
- Fix – Also consider refunded item when updating order and adjusting stocks. #24745
- Fix – Handle 0 attribute value for variations correctly. #24750
- Fix – Fixed spaces in form fields of External Products. #24295
- Fix – Removed links to downloadable products from refund emails. #24952
- Localization – Add Zambia’s Provinces to the list of states. #24307
- Localization – Adaptation of the order of last name and first name and addresses in Japan. #24336
- Localization – Fixed Namibian dollar symbol. #24438
- Localization – Change localization tag
- Localization – Fixed missing US Minor Outlying Islands states. #24826
- Security – Add an exit after the redirect when checking author archive capabilities for customers.
- Security – Ensure 404 pages with single product urls cannot be exploited using Open Redirect.