Get a free website with any plan

See how
WORDPRESS

Setting up your first WooCommerce store, start to first sale

IN SHORT

WooCommerce setup takes five minutes, but a real first sale takes more: add products with real inventory data, connect a live payment gateway like Stripe or PayPal (not just Cash on delivery), and set up shipping zones with rates that match what you actually charge.

Installing WooCommerce takes five minutes. Getting to your first real order takes a bit more: products need real inventory data, payments need a live gateway (not just "Cash on delivery"), and shipping needs rates that match what you actually charge. This walks through each step in order, so you land on a store that's actually ready to sell.

If you're setting this up on an existing WordPress site rather than a fresh install, the same steps apply, skip the parts you've already done.

Install WooCommerce

From wp-admin, go to Plugins → Add New, search "WooCommerce," and install and activate it. The setup wizard launches automatically and asks for your store address, industry, and whether you want sample products. Answer honestly, you can change all of it later in WooCommerce → Settings.

WooCommerce needs a few permalink and page settings to work right. The wizard creates a Shop, Cart, Checkout, and My Account page automatically, don't delete these or checkout will break. If your permalinks ever look wrong (product pages 404, for example), go to Settings → Permalinks and click Save once to flush the rewrite rules.

Your store runs on the same caching stack every Flashcloud WordPress install gets: LiteSpeed Web Server with LSCache, and Redis object caching for database-heavy queries like product lookups. Cart and checkout pages are excluded from page caching automatically, so you don't need to configure exceptions yourself. The details are in Running a WooCommerce store, worth a read before you go live.

Add your first products

Go to Products → Add new. For each product you need at minimum:

  • A title and description.
  • A product image (and gallery images if you have them). Product photos are usually the heaviest assets on a store's pages, keep them reasonably sized before uploading.
  • A price, and a sale price if you're running a discount.
  • A SKU, if you track inventory by code.
  • Stock status: track quantity, or only mark in stock / out of stock.
  • Product type: simple, variable (size/color options), grouped, or external/affiliate.

For a variable product (say, a T-shirt in three sizes and two colors), set up Attributes first (Size, Color), check "used for variations," then go to the Variations tab to set price and stock per combination.

Organize products into Categories as you go. It's much easier than reorganizing fifty products later, and it drives your shop page navigation.

Connect a payment gateway

This is the step that turns a product catalog into a store. Go to WooCommerce → Settings → Payments. WooCommerce ships with a few options built in, and both of the common ones follow the same basic pattern:

  • Stripe (via the official WooCommerce Stripe Gateway plugin): install the plugin, then connect your Stripe account by API key or one-click OAuth from the Payments settings screen. You'll need a live Stripe account with your bank details added before you can accept real charges.
  • PayPal (via WooCommerce PayPal Payments): similar flow, install the plugin, connect your PayPal business account, enable it under Payments.

Both let customers pay by card without leaving your site, and both handle card data themselves; you never see or store raw card numbers, which is the practical PCI compliance answer for most small stores. Your job is keeping WordPress, WooCommerce, and the gateway plugin updated, not handling card data directly. See Updating WordPress safely for a process that won't break checkout mid-update.

Test mode matters here. Both Stripe and PayPal gateways have a sandbox/test mode toggle in their settings, use it while you're setting up so you can run fake transactions without touching real money, then switch to live keys when you're ready to launch.

Don't leave "Direct bank transfer" or "Check payments" as your only enabled method unless that's genuinely how you want to get paid. They're enabled by default and confuse customers who expect to pay by card immediately.

Set up shipping

Go to WooCommerce → Settings → Shipping. Shipping is organized into zones, geographic regions with their own rates. Create a zone (e.g., "United States"), then add one or more shipping methods to it:

  • Flat rate: one price regardless of cart contents. Simplest option, good starting point.
  • Free shipping: usually conditional on a minimum order amount, set that in the method's options.
  • Local pickup: if you offer it.

If you sell internationally, add a separate zone per region or country with its own rates, since a flat domestic rate rarely makes sense for international orders. For physical products, set weight and dimensions on each product under the Shipping tab, this matters if you later switch to a live-rate carrier plugin (USPS, UPS, etc.) that calculates cost by package size.

Place a test order

Before you announce the store, walk through checkout yourself, ideally on a staging copy so a test order doesn't create a fake entry in your live order history and inventory counts. See Using WordPress staging for how to spin one up.

Run through the full flow:

  1. Add a product to the cart, adjust quantity, confirm the cart total is right.
  2. Go to checkout, fill in a real shipping address, confirm the correct shipping zone and rate apply.
  3. Pay with a test card (Stripe's test mode has published test card numbers for this) or a PayPal sandbox account.
  4. Confirm you land on an order confirmation page and receive an order confirmation email.
  5. Check WooCommerce → Orders to confirm the order appears with the right details.

If email confirmations don't arrive, check your site's outgoing mail setup, WordPress's default mail function is unreliable for transactional email at volume, and most stores benefit from an SMTP plugin routing through a dedicated mail service.

Once a real order lands, back it up. Store databases change with every order, so recent restore points actually matter here, not just as a formality. Your account has daily automatic backups with 30-day retention already running; see Backing up your WordPress site for how to add more granular, application-aware backups on top of that.

When to contact support

If checkout won't complete, a gateway won't connect, or you're seeing errors you can't trace to a plugin conflict, open a ticket from the portal under Support → New ticket, or use live chat. You'll reach a real person, not a bot, and they can look at server-level logs you don't have access to from wp-admin.

Common questions

Why does my WooCommerce checkout page look broken?

Your permalinks probably need flushing. Go to Settings, then Permalinks, and click Save once to regenerate the rewrite rules, this usually fixes 404s on product pages too.

Do I have to accept card payments?

Not technically, but you shouldn't leave Direct bank transfer or Check payments as your only option. They're enabled by default and confuse customers who expect to pay by card immediately, so connect Stripe or PayPal Payments instead.

How do I test an order without charging a real card?

Turn on the sandbox or test mode toggle in your Stripe or PayPal gateway settings. This lets you run fake transactions with published test card numbers, then you switch to live keys when you're ready to launch.

Why didn't I get an order confirmation email?

Check your site's outgoing mail setup first, WordPress's default mail function is unreliable for transactional email at volume. Most stores fix this with an SMTP plugin routing through a dedicated mail service.

Will WooCommerce slow down my site?

No, Flashcloud WordPress hosting runs LiteSpeed with LSCache and Redis object caching for database-heavy queries like product lookups, and cart and checkout pages are excluded from page caching automatically so you don't need to configure exceptions.

CAN'T FIND IT?

Real humans answer fast.

Hosting with us? Open a ticket and a real person replies - no scripts, no upsells. Still choosing a host? The same team is included with every plan, from day one.