Connect your WordPress WooCommerce store to OmniOrders in minutes. Sync products, orders, and inventory automatically across both platforms with no manual updates required.
---
title: WooCommerce Integration
description: Connect your WordPress WooCommerce store to OmniOrders in minutes. Sync products, orders, and inventory automatically across both platforms with no manual updates required.
---
<div style="background: linear-gradient(135deg, #96588A 0%, #7A4670 100%); border-radius: 12px; padding: 2.5rem 2rem; margin-bottom: 2rem; color: white; display: flex; align-items: center; gap: 1.5rem;">
<IconWoocommerce style="width: 80px; height: 80px; flex-shrink: 0; color: white;" />
<div>
<p style="font-size: 2rem; font-weight: 700; line-height: 1.2; margin: 0 0 0.5rem 0; color: white;">WooCommerce Integration</p>
<p style="font-size: 1.125rem; margin: 0; opacity: 0.95;">
Connect your WordPress WooCommerce store and sync everything automatically
</p>
</div>
</div>
Connect your WooCommerce store to OmniOrders and manage everything from one place. Your products, orders, and inventory will sync automatically—no more manual updates or switching between platforms.
<SupademoEmbed demoId="cmms3919v4fr1f8nqn2myit0e" />
:::tip[Quick Setup]
Most stores connect in under 5 minutes. You'll need WordPress admin access and WooCommerce REST API credentials to get started.
:::
---
## Why Connect WooCommerce?
**Connecting your WooCommerce store to OmniOrders means new orders flow in automatically, inventory levels stay in sync across all your channels, and fulfillment updates push back to WooCommerce the moment they happen — no manual imports, no overselling, and no switching between platforms.**
<CardGrid>
<IconCard title="Auto Sync Orders" icon="refresh-cw">
New orders flow directly into OmniOrders as they come in—no delays or manual imports needed.
</IconCard>
<IconCard title="Real-Time Inventory" icon="package">
Stock levels update automatically across WooCommerce and all your other channels. This prevents
overselling.
</IconCard>
<IconCard title="Product Updates" icon="box">
Add or edit products in one place and changes sync everywhere instantly.
</IconCard>
<IconCard title="Tracking Updates" icon="truck">
Shipping info and tracking numbers automatically update in WooCommerce when orders ship.
</IconCard>
</CardGrid>
---
## Before You Start
Gather these items before connecting—they make setup faster and smoother:
<CardGrid>
<IconCard title="WordPress Admin Access" icon="shield-check">
You need **administrator** permissions in your WordPress site. Only admins can create API keys and manage WooCommerce settings. Check your role under **Users** in the WordPress admin.
</IconCard>
<IconCard title="Your Store URL" icon="globe">
Your WooCommerce store URL (e.g., `https://yourstore.com`). Use the full URL including `https://`. Find it in your WordPress **Settings** → **General**.
</IconCard>
<IconCard title="Products Ready to Sync" icon="check-circle">
Create at least one product with inventory enabled in WooCommerce before connecting. This lets you verify the sync works correctly right after setup.
</IconCard>
</CardGrid>
---
## Connect Your WooCommerce Store
<SupademoEmbed demoId="cmms3u95s4gdaf8nqveyijl2y" />
<Steps>
1. **Go to Integrations**
In OmniOrders, click **Integrations** in the main menu, then click **Add Integration**
2. **Select WooCommerce**
Find WooCommerce in the list and click **Connect**
3. **Create API Credentials**
In your WordPress admin:
- Go to **WooCommerce** → **Settings** → **Advanced** → **REST API**
- Click **Add Key**
- Description: `OmniOrders`
- User: Select your admin user
- Permissions: **Read/Write**
- Click **Generate API Key**
- Copy the **Consumer Key** and **Consumer Secret** (the secret is shown only once)
4. **Enter Credentials**
Back in OmniOrders, enter:
- **Store URL**: Your full store URL (e.g., `https://yourstore.com`)
- **Consumer Key**: Paste from WooCommerce
- **Consumer Secret**: Paste from WooCommerce
:::note[What We Access]
OmniOrders only requests access to products, orders, and inventory—we never access customer payment info.
:::
5. **Configure Settings**
Choose what to sync:
- **Products**: Sync your product catalog
- **Orders**: Import new orders automatically
- **Inventory**: Keep stock levels in sync
- **Fulfillment**: Send tracking info back to WooCommerce
6. **Start Sync**
Click **Start Sync** to begin importing your data. This may take a few minutes depending on your store size.
</Steps>
:::tip[First Sync]
The first sync imports your existing products and recent orders. After that, everything updates in real-time.
:::
---
## What Gets Synced?
**The WooCommerce integration syncs products (names, SKUs, variants, images, pricing, inventory quantities), orders (line items, customer addresses, notes, payment and fulfillment status), and inventory updates — bidirectionally, so changes in either WooCommerce or OmniOrders reflect on both sides in real time.**
### Products
- Product names and descriptions
- SKUs and barcodes
- Variants (sizes, colors, etc.)
- Images and pricing
- Inventory quantities
### Orders
- Order details and line items
- Customer shipping addresses
- Order notes and metadata
- Payment status
- Fulfillment status
### Inventory
- Stock levels by location
- Inventory updates (both directions)
- Low stock alerts
### Fulfillment
- Tracking numbers
- Carrier information
- Shipment status updates
---
## Managing Your Connection
### View Sync Status
Check if everything is syncing correctly:
1. Go to **Integrations** → **WooCommerce**
2. View the sync dashboard showing:
- Last sync time
- Products synced
- Orders synced
- Any errors or warnings
### Pause Syncing
Need to temporarily stop syncing?
1. Open your WooCommerce integration settings
2. Toggle **Sync Active** to OFF
3. Syncing stops immediately (you can resume anytime)
### Update Settings
Change what syncs:
1. Click **Settings** on your WooCommerce integration
2. Toggle any sync option on/off
3. Click **Save Changes**
---
## Common Questions
<CardGrid>
<IconCard title="How often does it sync?" icon="clock">
Orders sync instantly when created. Products and inventory sync every 5 minutes or when you make
changes.
</IconCard>
<IconCard title="Can I sync multiple stores?" icon="store">
Yes! Connect as many WooCommerce stores as you need. Each store syncs independently.
</IconCard>
<IconCard title="What about existing orders?" icon="history">
We import orders from the last 30 days during initial setup. Older orders can be imported on
request.
</IconCard>
<IconCard title="Is my data secure?" icon="lock">
Absolutely. We use secure REST API authentication and encrypt all data in transit and at rest.
</IconCard>
</CardGrid>
---
## Troubleshooting
### Orders Not Syncing
**Problem**: New WooCommerce orders aren't appearing in OmniOrders
**Solutions**:
- Check that **Order Sync** is enabled in integration settings
- Verify the order status—only paid orders sync by default
- Look for error messages in the sync log
- Ensure WooCommerce REST API is enabled (WooCommerce 3.5+)
- Try clicking **Force Sync** to trigger a manual refresh
### Inventory Not Updating
**Problem**: Stock changes in WooCommerce don't update in OmniOrders (or vice versa)
**Solutions**:
- Confirm **Inventory Sync** is turned on
- Check if products are mapped correctly (same SKU in both systems)
- Verify "Manage stock" is enabled for the product in WooCommerce
- Allow up to 5 minutes for updates to sync
### Connection Expired
**Problem**: WooCommerce integration shows "Connection Expired" or "Authentication Failed" error
**Solutions**:
- Regenerate your API key in WooCommerce (Settings → Advanced → REST API)
- Update the new Consumer Key and Secret in OmniOrders
- Ensure your store URL uses HTTPS (required for REST API)
- No data is lost—syncing resumes immediately after reconnecting
### Duplicate Products
**Problem**: Products appear twice after connecting WooCommerce
**Solutions**:
- Go to **Products** and use **Merge Duplicates** tool
- In the future, ensure products aren't created in both systems before connecting
- Use SKU matching to prevent duplicates
---
## Best Practices
### For New Users
1. **Start Small**: Connect your store and let the initial sync complete before making changes
2. **Test First**: Create a test order in WooCommerce and verify it appears in OmniOrders
3. **Map Locations**: If you have multiple warehouses, map them to WooCommerce locations for accurate inventory
### For Multi-Channel Sellers
1. **Centralize Inventory**: Let OmniOrders be your source of truth for stock levels
2. **Use SKUs**: Keep SKUs consistent across all platforms for automatic matching
3. **Set Buffer Stock**: Configure safety stock levels to prevent overselling across channels
### For Order Fulfillment
1. **Enable Auto-Fulfillment**: Let OmniOrders automatically fulfill orders when ready
2. **Sync Tracking**: Turn on tracking sync so customers get updates in WooCommerce
3. **Use Order Statuses**: Map WooCommerce order statuses to your OmniOrders workflow
---
## Need More Help?
<CardGrid>
<IconCard title="Contact Support" icon="message-circle">
Our team is here to help with setup, troubleshooting, or any questions. [Get Support
→](mailto:[email protected])
</IconCard>
<IconCard title="WooCommerce REST API Docs" icon="book">
Learn more about the WooCommerce REST API. [View Docs
→](https://woocommerce.github.io/woocommerce-rest-api-docs/)
</IconCard>
<IconCard title="More Integrations" icon="layout-grid">
Explore other platforms and integration options. [View Integrations
→](/integrations/overview/)
</IconCard>
</CardGrid>
---
:::tip[Pro Tip]
Enable SSL (HTTPS) on your WooCommerce store before connecting—the REST API requires a secure connection.
:::