Skip to main content

What is WooCommerce?

WooCommerce is a customizable, open-source ecommerce platform built on WordPress. It powers millions of online stores worldwide and provides a robust framework for developers to create extensions, themes, and custom integrations.

For Extension Developers

Build powerful extensions using WooCommerce’s extensive hook system and APIs.

For Theme Developers

Create beautiful, customized storefronts with classic or block themes.

For API Integrations

Integrate with products, orders, and customers via the REST API.

For Contributors

Contribute to the WooCommerce core codebase and help improve the platform.

What You Can Build

WooCommerce’s flexible architecture enables developers to:

Extensions

  • Payment Gateways: Integrate custom payment methods using the Payment Gateway API
  • Shipping Methods: Add custom shipping options and integrations
  • Product Add-ons: Extend product functionality with custom fields and options
  • Marketing Tools: Build integrations for email marketing, analytics, and more
  • Inventory Management: Create custom inventory and warehouse management solutions

Themes

  • Custom Storefronts: Design unique shopping experiences
  • Classic Themes: Build with traditional PHP templates and hooks
  • Block Themes: Create modern FSE (Full Site Editing) themes
  • Mobile-Optimized Designs: Responsive themes for all devices

Integrations

  • Headless Commerce: Build decoupled frontends using the Store API
  • Third-Party Services: Connect to CRMs, ERPs, and other business tools
  • Custom Analytics: Create specialized reporting and data visualization
  • Multi-Channel Sales: Integrate with marketplaces and sales channels

Developer Ecosystem

WooCommerce has a thriving developer ecosystem with:
  • 9,000+ extensions available on the WooCommerce Marketplace
  • Active community on Slack with thousands of developers
  • Regular releases with new features and improvements
  • Comprehensive APIs for deep integrations

Architecture Overview

WooCommerce is built as a WordPress plugin with a modern monorepo structure:

Key Technologies

  • Backend: PHP 7.4+, WordPress hooks system, PSR-4 autoloading
  • Frontend: React, TypeScript, Gutenberg blocks
  • APIs: REST API, Store API, PHP class APIs
  • Build Tools: PNPM, Webpack, Composer

Getting Started

1

Set up your development environment

Install Node.js, PNPM, PHP, and Composer. Clone the WooCommerce monorepo.
2

Build the project

Build all packages and plugins in the monorepo.
3

Choose your path

Community Resources

WooCommerce Slack

Join the community for help, discussions, and announcements.

Developer Blog

Stay updated with development news and tutorials.

GitHub Repository

Browse source code, report issues, and submit pull requests.

Code Reference

Complete reference for WooCommerce classes and functions.

Documentation Structure

This documentation is organized into several sections:

Documentation Tab

  • Getting Started: Setup, quickstart, and project overview
  • Core Concepts: Architecture, monorepo, modern vs legacy code
  • Extension Development: Build extensions using hooks and APIs
  • Theme Development: Create custom storefronts
  • Block Development: Extend WooCommerce with Gutenberg blocks
  • Features: Payment gateways, shipping, analytics, HPOS, and more

API Reference Tab

  • REST API: Complete endpoint reference for products, orders, customers
  • Store API: Unauthenticated endpoints for headless commerce
  • PHP APIs: Payment Gateway, Shipping Method, and Payment Token APIs

Contributing Tab

  • Contribution Guide: How to contribute code and documentation
  • Coding Standards: PHP and JavaScript style requirements
  • Testing: PHPUnit, Jest, and E2E testing guidelines
  • Git Workflow: Branching, commits, and pull request process

Support

This documentation is for developers. If you’re a merchant or store owner, visit woocommerce.com for merchant-facing documentation.

For Developers

  • Community Slack: Ask questions in developer channels
  • GitHub Discussions: Community Q&A and discussions
  • Stack Overflow: Tag questions with woocommerce

For Merchants

Next Steps

Ready to start building? Choose your path:

Quickstart Guide

Get up and running in minutes

Development Environment

Set up your local environment

Project Structure

Understand the monorepo