Quick answer

WooCommerce is a free WordPress plugin that turns any WordPress site into an online store. To use it in Kenya: get WordPress hosting, install WooCommerce, set your currency to KES, add an M-Pesa payment gateway plugin (Pesapal or IntaSend), add your products, and launch. If you also have a physical shop, connect WebpinnPOS to keep stock in sync.

What is WooCommerce and how does it work?

WooCommerce is the world's most widely used e-commerce plugin, built for WordPress. Unlike Shopify, which is a closed platform you subscribe to, WooCommerce is open-source software that installs on a WordPress site you host yourself. You own the code, the data, and the store entirely.

WooCommerce adds a product catalog, shopping cart, checkout, order management, and customer accounts to any WordPress site. Because WordPress has thousands of plugins and themes, you can extend WooCommerce with almost any functionality: advanced shipping rules, loyalty programs, subscription billing, bookings, and more.

The trade-off for this flexibility is responsibility. You manage your own hosting, keep WordPress and plugins updated, and handle security. For a merchant comfortable with basic website management, this is manageable. For a merchant who wants to focus entirely on selling rather than technology, the managed approach of Shopify may be preferable. This guide is for those who have chosen WooCommerce.

What you need to get started

Before you install WooCommerce, you need three things: a domain name, WordPress hosting, and an SSL certificate.

WordPress hosting options in Kenya

WooCommerce requires WordPress hosting with PHP 8.0 or higher and MySQL 5.7 or higher. Recommended hosts for Kenyan merchants:

HostBillingSuited for
Truehost KenyaKES: affordable entry plansNew stores, local support preference
WPWebHostKESWordPress-focused shared hosting
CloudwaysUSD: cloud-based managed hostingGrowing stores needing better performance
SiteGroundUSD: managed WordPress hostingMerchants wanting managed updates and backups

For a brand-new store with light traffic, a shared hosting plan from a local provider is sufficient. As your order volume and traffic grow, moving to managed or cloud hosting improves page speed, which directly affects your conversion rate.

Domain name

Register a domain through a registrar. A .co.ke domain costs around KES 1,000–1,500 per year and signals to Kenyan customers that you are a local business. You can also register a .com if you plan to sell beyond Kenya. Connect your domain to your hosting via DNS settings.

SSL certificate

SSL (the padlock in the browser address bar) is required for WooCommerce to process payments and is a Google ranking factor. Most reputable hosts include a free SSL certificate via Let's Encrypt. Enable it in your hosting control panel before installing WooCommerce.

Installing and configuring WooCommerce

  1. Install WordPress using your host's one-click installer (available on most cPanel hosts). Log in to your WordPress admin at yourdomain.co.ke/wp-admin.
  2. Go to Plugins then Add New. Search for "WooCommerce." Install and activate the plugin.
  3. The WooCommerce setup wizard launches. Enter your store address (Kenya), your industry, and product type.
  4. In WooCommerce then Settings then General, set Currency to Kenyan Shilling (KES). Set your selling locations to Kenya (and any other countries you ship to).
  5. In Settings then Taxes, enable taxes. Add a tax class for Kenya VAT at 16% for applicable products. Mark VAT-exempt products individually.

Setting up payments for Kenya

WooCommerce's default payment options (Stripe, PayPal) do not offer M-Pesa support for Kenya. You need a gateway plugin from a Kenya-compatible provider. The leading options are:

  • Pesapal, Supports M-Pesa, Visa, Mastercard, and Airtel Money. Install via the WordPress plugin directory. Widely used by Kenyan merchants.
  • IntaSend, Kenya-built gateway with M-Pesa STK Push and card support. Has a free WooCommerce plugin. Good developer documentation.
  • DPO Pay, Supports M-Pesa and multiple African payment methods. Useful if you plan to sell in other East African markets.

To set up a gateway: create a merchant account with your chosen provider, complete their KYC verification process (national ID, business certificate if applicable, bank account), install their plugin, enter your API credentials in WooCommerce then Settings then Payments, test in sandbox mode, and go live.

Before going live: Place a test order using your gateway's sandbox credentials. Walk through the full M-Pesa STK Push flow. Confirm the order appears as paid in WooCommerce, the stock decreases, and you receive an order notification email.

Adding products and going live

Go to Products then Add New. Enter the product name, description, price in KES, and stock quantity. Upload product photos. Set a SKU. This is important if you plan to connect a physical shop later, as the SKU is the matching key between your online and in-store systems.

For products with variations (sizes, colors), select "Variable product" and add your attributes. For example, a T-shirt with sizes S, M, L and colors Red, Blue: add Size and Color as attributes, generate all combinations, and set a price and stock count for each variation.

For a large catalog, use the WooCommerce CSV importer under Products then All Products then Import. Prepare a spreadsheet with columns for SKU, name, price, stock, and category. This is much faster than adding products one by one.

Before announcing your store, test the complete customer journey: browse a product, add to cart, proceed to checkout, select M-Pesa, complete the STK Push confirmation, and verify the order appears in your WooCommerce admin. Also test from a mobile device. Most Kenyan buyers will shop on mobile.

Connecting to a physical shop with WebpinnPOS

If you have a physical shop alongside your WooCommerce store, running inventory in two separate systems leads quickly to stock discrepancies. WebpinnPOS integrates with WooCommerce to keep stock synchronized in real time.

To connect: in your WordPress admin, go to WooCommerce then Settings then Advanced then REST API. Generate an API key with Read/Write permissions. Copy the Consumer Key and Consumer Secret. In your WebpinnPOS dashboard, go to Integrations then WooCommerce, enter your store URL and API keys, and run the initial product import.

After the import, every sale in your physical shop through WebpinnPOS immediately reduces your WooCommerce stock. Every online order reduces your WebpinnPOS stock. Your shop staff use WebpinnPOS for in-store sales, including M-Pesa STK Push. Your online customers use your WooCommerce checkout with Pesapal or IntaSend for M-Pesa. Both channels share one inventory pool.

Frequently asked questions

Already on WooCommerce? Sync it with your physical shop

WebpinnPOS connects to your WooCommerce store and keeps stock in sync in real time. Add M-Pesa STK Push at your counter.

Start Free Trial
14 days free. No credit card required.