WooCommerce: Channel analysis for shipping & fulfilment developers
Published in
5 min readOct 21, 2019
Channel Overview
- WooCommerce is a free Open Source extension of the WordPress CMS — leveraging all WordPress technologies and customers, and expanding to support eCommerce activities. It also has its own suite of Shipping extensions/plugins available and compatible.
- WooCommerce takes 40% revenue share for marketplace extensions pre-tax, which they strongly push for be billed annually directly through WooCommerce. In fact, they say they are not considering subscription models at this stage. All payments made within 30 days of the end of the month.
- WooCommerce provides limited support for account issues, refunds, coupons, escalations and live-chat — but all email/other support would need to be covered by the integrator, or by diverting customers to their verified expert SI pool. They specifically note that WooCommerce Marketplace plugins need to fully cover support, documentation (aligning with their standards) and sales aspects of this channel — or find someone to cover those for us.
- Huge range of vs globally — along with a specific WooExpert SI partner program covering many key regions. In particular, incentives exist for WooCommerce SI’s
Market Assessment
- WooCommerce has the largest market size (31.87%) and share (24%), and good growth (13.6% for the first half of 2017). Leader across most of the market, only losing the ENT segment to Magento 1. Often seen as SMB/SOHO product, but strong everywhere
- Even with the largest customer base, WooCommerce is still seeing strong YOY growth with 13.6% growth recorded in the first half of 2017
- 60% of customers are US based, with 8% UK, and the next 25% of customers within the Western Europe zone
Shipping & Fulfilment Competition
- WooCommerce doesn’t have as much Shipping extension competition as Shopify, and the competitors are of a lower capability.
- Bundled WooCommerce Shipping app (via Jetpack Shipping) that supports USPS only — customers pushed towards that solution through the installation process:
- Shipstation and Shipping Easy are advertised as a WooCommerce Partners
- Large number of shipping apps — including direct postal services for USPS, FedEx, Australia Post, Canada Post, Royal Mail, Purolator, NZ Post, Colissiom, and SAPO — and aggregators including Shipwire, Shippo, ShippingEasy, and Stamps also all have apps.
- UPS, USPS, FedEx, Canada Post, and Australia Post solutions are paid extensions — but they are developed and supported by WooCommerce themselves.
Technical Compatibility
- WooCommerce plugins are simply WordPress plugins and need to built using those standards/tools. WooCommerce plug-in dev handbook here, and here. Extensions have specific design patterns and are built in PHP
- WordPress exposes a set of core APIs that can be used by plugin developers for manipulation of store data, along with in-built hooks functionality or the webhooks API — WooCommerce extends that into their own REST API. There are Node, and PHP official libraries to support REST API interaction.
- WooCommerce have a developer wiki
- Wordpress discourages the use of embedded SaaS Apps, and has guidelines requesting plugin providers either use APIs — and requests we push to our site (#8 here). This limits embedded apps hosted elsewhere, requiring those apps use API calls like this example or have the plugin link out to our app — then within their app establish a connection back to the WooCommerce API and establish hooks, keeping both applications largely separate.
- An MVP plugin would need to be a PHP (5.6 or later) file submitted here, with three basic functions: activation, deactivation, uninstallation all required for the base plugin — after which the iFrame method can support the rest of the functionality.
- There is a 14 day review and release activity between plugin submission, and appearing on the market.
- Authentication available via REST API key passed in headers — merchant needs to generate and store within the extension
Commercial Analysis
- WooCommerce retains 40% of the revenue share, paid monthly within 30 days of the end of the calendar month. No support is provided, only marketing and promotion using “commercially reasonable efforts”
- WooCommerce is only considering submissions for extensions which annually bill at this stage.
- In return for the rev share, WooCommerce will conduct marketing and promotional activities using “commercially reasonable efforts”
- Some revenue reporting tools are included for marketplace extension partners.
- Free open-source product with a high base of SMALL customers with low pricing appetite for expensive apps. That said, the largest market segment for WooCommerce are merchants in the $1–10m GMV bracket and would have appetite for a $99 plan.
Legal & Commercial Analysis
- WooCommerce and WordPress are both free, open-source software under GPL 3.0 license.
- Plugins can choose their own license method — but our plug-in must be compatible with the same GL open source license as Wordpress
- WooCommerce and WordPress comply with necessary GDPR requirements.
- App developers need to comply with the WooCommerce developer agreement, which sets out the commercial terms regarding revenue and includes restrictions like: “Agreement is in effect, we have exclusive rights to sell the Products, and you agree not to offer the Products for sale on any other site, without our approval”
Support Analysis
- WooCommerce doesn’t provide any customer support as part of the revenue share, as detailed in its developer agreement
- There are some extensions listed as ‘Supported by WooCommerce’ on their store. These fall under their default support policy and are supported by WooCommerce.
References
- https://woocommerce.com/marketplace-developer-agreement
- https://docs.woocommerce.com/document/marketplace-overview/
- https://docs.woocommerce.com/document/marketplace-overview/#section-4
- https://docs.woocommerce.com/document/marketplace-support-guidelines/
- https://woocommerce.com/customizations/?_ga=2.178564387.62857347.1562130063-1936712023.1561701469&_gac=1.212069664.1562130063.EAIaIQobChMI0f7u0fqX4wIVwhqPCh2FdgCREAAYASAAEgLE8PD_BwE
- https://docs.woocommerce.com/document/marketplace-support-guidelines/
- https://docs.woocommerce.com/document/writing-documentation/
- https://woocommerce.com/experts/
- https://hollerwp.com/woocommerce-statistics/
- https://www.shopping-cart-migration.com/carts-reviews/woocommerce/woocommerce-statistics-2017-rise-fall
- https://enlyft.com/tech/products/woocommerce
- https://www.similartech.com/technologies/woocommerce
- https://trends.builtwith.com/shop/WooCommerce-Checkout
- https://woocommerce.com/partners/
- https://woocommerce.com/product-category/woocommerce-extensions/shipping-methods/
- https://docs.woocommerce.com/document/create-a-plugin/
- https://developer.wordpress.org/plugins/intro/
- https://developer.wordpress.org/plugins/plugin-basics/including-a-software-license/
- https://docs.woocommerce.com/document/create-a-plugin/
- https://make.wordpress.org/core/handbook/best-practices/core-apis/
- https://adambrown.info/p/wp_hooks
- https://woocommerce.github.io/woocommerce-rest-api-docs/#webhooks
- https://woocommerce.github.io/woocommerce-rest-api-docs/#introduction
- https://www.npmjs.com/package/woocommerce-api
- https://packagist.org/packages/automattic/woocommerce
- https://docs.woocommerce.com/wc-apidocs/hook-docs.html
- https://www.cloudways.com/blog/create-woocommerce-custom-shipping-method-plugin/
- https://github.com/woocommerce/woocommerce/wiki
- https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/
- https://www.freecodecamp.org/news/how-to-create-a-wordpress-plugin-for-your-web-app-5c31733f3a9d/
- https://docs.woocommerce.com/document/introduction-to-hooks-actions-and-filters/
- https://woocommerce.github.io/woocommerce-rest-api-docs/#introduction
- https://developer.wordpress.org/plugins/plugin-basics/
- https://developer.wordpress.org/plugins/wordpress-org/plugin-developer-faq/#how-long-does-it-take-to-get-a-plugin-approved
- https://woocommerce.github.io/woocommerce-rest-api-docs/#authentication-over-https
- https://woocommerce.com/marketplace-developer-agreement/?_ga=2.3907895.62857347.1562130063-1936712023.1561701469&_gac=1.212428064.1562130063.EAIaIQobChMI0f7u0fqX4wIVwhqPCh2FdgCREAAYASAAEgLE8PD_BwE
- https://woocommerce.com/marketplace-developer-agreement/
- https://woocommerce.com/marketplace-developer-agreement/?_ga=2.3907895.62857347.1562130063-1936712023.1561701469&_gac=1.212428064.1562130063.EAIaIQobChMI0f7u0fqX4wIVwhqPCh2FdgCREAAYASAAEgLE8PD_BwE
- https://docs.woocommerce.com/document/marketplace-manage-reporting/
- https://enlyft.com/tech/products/woocommerce
- https://developer.wordpress.org/plugins/plugin-basics/including-a-software-license/
- https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/
- https://woocommerce.com/gdpr/
- https://en.support.wordpress.com/your-site-and-the-gdpr/
- https://developer.wordpress.org/plugins/wordpress-org/detailed-plugin-guidelines/
- https://woocommerce.com/marketplace-developer-agreement/?_ga=2.3907895.62857347.1562130063-1936712023.1561701469&_gac=1.212428064.1562130063.EAIaIQobChMI0f7u0fqX4wIVwhqPCh2FdgCREAAYASAAEgLE8PD_BwE
- https://woocommerce.com/support-policy/