Turn your WooCommerce catalogue into a valid Google Shopping feed
Connect a WooCommerce REST API key, and AiFeedOptimiser builds a Google Merchant Centre feed from your products - VAT-inclusive prices, live stock, 6-hour refresh and instant-sync webhooks.
No plugin install, no code changes.
No credit card required.

Create a read-only REST API key in WooCommerce, paste the URL, key and secret into AiFeedOptimiser, and get a public XML URL for Google Merchant Centre. Prices are emitted in GBP, stock is updated via webhooks, and missing required attributes block the feed before submission.
Set up in 5 steps
- 1
Create a REST API key in WooCommerce
WordPress admin → WooCommerce → Settings → Advanced → REST API → Add key. Permissions: Read. Copy the Consumer key and Consumer secret.
- 2
Add your WooCommerce store in AiFeedOptimiser
Dashboard → Add store → WooCommerce. Paste the site URL (e.g. https://yourstore.com), the consumer key and the consumer secret. AiFeedOptimiser runs a test query to /wp-json/wc/v3/products before saving.
- 3
Review the auto-mapped Google feed
AiFeedOptimiser maps title, description, price, image, availability, SKU, category, attributes and meta_data to Google attributes. Override any field from meta_data, attributes or static values.
- 4
Validate in the feed health dashboard
Check required-attribute coverage, title length, image availability and price formatting before submitting. Fix issues at the WooCommerce source rather than per-product inside Merchant Centre.
- 5
Submit the public XML URL to Merchant Centre
Copy /feeds/{storeId}/google-merchant.xml from the store detail page into Merchant Centre → Feeds → Add feed → Scheduled fetch, daily.
Need the exact steps from WooCommerce? WooCommerce's official REST API docs walk through creating keys and enabling the API.
How WooCommerce fields map to Google attributes
AiFeedOptimiser auto-detects this mapping the moment you connect the store. Every row can be overridden per store from the Field Mapping tab.
| Google attribute | WooCommerce source |
|---|---|
| id | woo-{product.id} |
| title | product.name |
| description | product.description (HTML stripped) |
| link | product.permalink |
| image_link | product.images[0].src |
| price | product.price (GBP, incl. 20% VAT) |
| sale_price | product.sale_price when product.price < product.regular_price |
| availability | product.stock_status → in_stock / out_of_stock |
| brand | product.attributes['brand'] or meta_data['brand'] |
| gtin | product.attributes['gtin'] or meta_data['gtin'] |
| mpn | product.attributes['mpn'] or meta_data['mpn'] |
| condition | Static 'new' (override via rules) |
WooCommerce-specific pitfalls to avoid
Plain permalinks block the REST API
Set WordPress permalinks to 'Post name' (Settings → Permalinks). The WooCommerce REST API returns 'rest_no_route' under plain permalinks.
GTIN/MPN stored in attributes or meta_data
Use a dedicated attribute or meta_data key for GTIN and MPN, then map it in AiFeedOptimiser's Field Mapping tab. Without them, Google disapproves new-product listings.
Prices excluding VAT on the store front-end
Set WooCommerce → Settings → Tax → 'Display prices in the shop: Including tax' for the United Kingdom, so the feed and landing page match.
HTTP instead of HTTPS
Submit the store with https:// and make sure the site forces SSL. Google Merchant Centre rejects product links served over HTTP.
Why UK WooCommerce merchants pick AiFeedOptimiser
10-minute setup
Create a REST API key, paste the URL + credentials, and get a feed URL. No plugin install, no code changes.
Instant sync webhooks
WooCommerce product.update events invalidate the feed snapshot immediately, so Google always fetches fresh data.
Blocks bad feeds
Feeds missing required Google attributes return 422 with a human-readable reason - no silent disapprovals.
AI title rewrites
Optional Gemini-powered title and description optimisation with Google's front-loaded keyword pattern.
Frequently asked questions
- Where do I create WooCommerce REST API keys?
- WordPress admin → WooCommerce → Settings → Advanced → REST API → Add key. Give the key 'Read' permissions (Write is not needed) and copy the Consumer key and Consumer secret into AiFeedOptimiser.
- What if the REST API returns 'rest_no_route' during the test?
- That almost always means WordPress permalinks are set to 'Plain'. Switch to 'Post name' (Settings → Permalinks) and retest. The WooCommerce REST API requires pretty permalinks to be enabled.
- Does AiFeedOptimiser handle WooCommerce variable products?
- WooCommerce variables are not expanded by default. AiFeedOptimiser submits each parent product as a single item. If you need variant-level feeds, export the product file as a CSV with one row per variation and choose CSV upload instead.
- How is UK VAT handled?
- WooCommerce's regular_price and sale_price are passed through as-is. Ensure your WooCommerce tax settings are set to display prices inclusive of 20% VAT for the United Kingdom, so the feed and landing page match Merchant Centre.
- How fast do stock and price changes reach Google?
- Snapshots refresh every 6 hours automatically. With the WooCommerce webhook enabled in the Instant Sync tab, product update events invalidate the cache immediately, so the next Google fetch sees the new state.
- Can I filter out products or append values to titles?
- Yes. Field mapping supports WooCommerce attributes, meta_data keys and static values, and the Rules engine can exclude, replace or append across the whole catalogue based on categories, tags, stock status or custom attributes.
Related reading
Ship a WooCommerce Google feed today
Connect WooCommerce, review the auto-mapping, and paste the feed URL into Merchant Centre. 14-day free trial. From £25/month, incl. VAT.
