Connect TikTok Shop to WooCommerce: Official Plugin vs Custom Integration
How to connect TikTok Shop to WooCommerce: the official plugin's setup and limits, plus when a custom API integration is the better choice.
Long Nguyen
Développeur fullstack · Ingénieur IA · Chercheur
Can you connect TikTok Shop to WooCommerce natively?
Yes, with limits. WooCommerce maintains an official TikTok extension that syncs your product catalog to TikTok Shop and brings TikTok orders back into your WooCommerce dashboard. It is the fastest way to connect TikTok Shop to WooCommerce, and for a small catalog sold in a supported market it is often all you need.
The limits matter more than the setup. Per WooCommerce's TikTok documentation, TikTok Shop orders are read-only inside WooCommerce and must be fulfilled in TikTok Seller Center. If your warehouse runs on WooCommerce order statuses, or you sell in a market the plugin does not cover, you are looking at a custom or third-party integration instead.
Three ways to connect TikTok Shop to WooCommerce
Every integration falls into one of three patterns. The right one depends on who owns fulfillment and how much control you need over the data.
| Approach | Best for | Main trade-off |
|---|---|---|
| Official TikTok for WooCommerce plugin | Small to mid catalogs, sellers happy to fulfill from TikTok Seller Center | Orders are read-only in WooCommerce; catalog rules are strict; regional availability is limited |
| Third-party multichannel sync app | Sellers already listing on several marketplaces who want one dashboard | Monthly fee, and your field mapping is limited to what the vendor exposes |
| Custom API integration | Custom websites, non-standard order flows, ERP/WMS in the loop, high SKU counts | You build and maintain it, including token refresh and API version changes |
A custom website is the same story as the third row. TikTok Shop does not care whether the other end is WooCommerce, Django or a hand-built store: it exposes an API, and something on your side has to call it. WooCommerce simply gives you a ready-made REST API on your half of the bridge.
How to connect TikTok Shop to WooCommerce with the official plugin
The plugin's setup path, as documented by WooCommerce, runs in this order:
- Install and activate the TikTok extension in WooCommerce.
- Connect and authorize your TikTok account.
- Select the TikTok Shop feature.
- Sync or create your TikTok account.
- Authorize TikTok For Business.
- Create or connect a TikTok For Business account.
- Upload your KYC verification documents.
- Provide warehouse information.
- Wait for TikTok's approval.
Your catalog only starts syncing after KYC and warehouse approval, so steps 7 to 9 are where the calendar time goes. Do them first if you are on a launch deadline.
Catalog rules that reject products
These are the catalog requirements WooCommerce lists. Audit your data against them before you connect, because they decide which products actually appear.
| Field | Requirement |
|---|---|
| Product name | Cannot contain non-English characters |
| Images | White background; at least 1, maximum 9 |
| Description | Required; limited to 10,000 characters |
The name rule is the one that surprises non-English stores. If your WooCommerce titles carry accented or localized text, expect a cleanup pass or a separate English title field.
Where the plugin is available
WooCommerce's launch announcement of states the TikTok Shop integration was available to merchants in the US and UK. The documentation still reads as US-centric. Regional availability changes, so confirm your market in the plugin's setup flow before you plan around it.
What syncs between TikTok Shop and WooCommerce, and what does not
| Data | Direction | Notes |
|---|---|---|
| Product catalog | WooCommerce to TikTok Shop | Starts after KYC and warehouse approval |
| Orders | TikTok Shop to WooCommerce | Read-only in WooCommerce: order detail, actions, items and custom fields cannot be edited |
| Fulfillment | Done in TikTok Seller Center | Orders ship through TikTok's own shipping solution and are fulfilled from the Orders tab |
Read the last two rows twice. Any workflow that depends on changing a WooCommerce order status to trigger shipping, invoicing or a warehouse export will not fire for TikTok orders the way it does for your website orders.
When the plugin is not enough
Move to a custom or third-party integration when one of these is true:
- Your warehouse, 3PL or ERP must receive TikTok orders and push back tracking numbers.
- You sell in a country the plugin does not support.
- Your product data does not fit the catalog rules without a rewrite, for example localized titles.
- You run a custom website rather than WooCommerce, or you want one order pipeline for TikTok Shop, your own store and other marketplaces.
Building this yourself means owning token refresh, retries and field mapping for as long as the integration lives. If you would rather hand that over, Netalith builds and maintains TikTok Shop API integrations for WooCommerce and custom stores.
How to connect TikTok Shop to WooCommerce or a custom website via API
A custom integration has two halves. Both need to be reliable, but only one of them is under your control.
The WooCommerce side
WooCommerce exposes a REST API under /wp-json/wc/v3. Per the WooCommerce REST API documentation, you authenticate over HTTPS with the consumer key as the username and the consumer secret as the password (HTTP Basic Auth), and the older OAuth 1.0a scheme is required when you are not on HTTPS. Generate keys under WooCommerce, Settings, Advanced, REST API, and give the key only the permission it needs: read for a reporting job, read/write for a sync worker.
Two features do most of the work:
- Webhooks push events such as
order.createdto your endpoint, and each delivery carries anX-WC-Webhook-Signatureheader you must verify. - Batch endpoints at
/wc/v3/{resource}/batchaccept many operations in one request, which is how you update stock for hundreds of SKUs without hammering the server. Plain list calls return 10 items by default, so passper_pagewhen you page through products.
The TikTok Shop side
TikTok Shop's Open API is documented in TikTok Shop Partner Center. In outline, you register an app there, each seller authorizes it, and your server then calls product, order and fulfillment endpoints on that seller's behalf. Request signing, token lifetimes and endpoint versions are the parts that change, so treat the current Partner Center documentation as the contract and do not copy values from old tutorials.
A minimal sync worker
The sketch below shows the shape of the loop: verify the WooCommerce webhook, then push a stock change to TikTok. The push_stock_to_tiktok function is a placeholder for the Partner Center call you implement against the current docs.
import base64, hashlib, hmac, requests
WC_BASE = 'https://shop.example.com/wp-json/wc/v3'
WC_AUTH = ('ck_your_consumer_key', 'cs_your_consumer_secret')
WEBHOOK_SECRET = b'your-webhook-secret'
def signature_is_valid(raw_body: bytes, header_value: str) -> bool:
digest = hmac.new(WEBHOOK_SECRET, raw_body, hashlib.sha256).digest()
expected = base64.b64encode(digest).decode()
return hmac.compare_digest(expected, header_value)
def set_woo_stock(updates):
# updates: [{'id': 123, 'stock_quantity': 8}, ...]
r = requests.post(f'{WC_BASE}/products/batch', auth=WC_AUTH,
json={'update': updates}, timeout=30)
r.raise_for_status()
return r.json()
def push_stock_to_tiktok(sku: str, qty: int):
# Call TikTok Shop's inventory endpoint here (Partner Center docs).
raise NotImplementedError
Verify the signature against the raw request body before you parse it. Parsing first and re-serializing changes the bytes and the check fails.
Design rules that prevent sync bugs
Most integration failures are data-model mistakes rather than API problems. These are the rules to settle before you write the first endpoint call.
| Rule | Why it matters |
|---|---|
| Map on SKU, never on title | Titles change and TikTok's English-only name rule may force a different title than your store shows |
| One system owns inventory | If both sides accept edits, a sale on one channel silently overwrites the other and you oversell |
| Import orders idempotently, keyed by the TikTok order ID | Webhooks retry, and a retry must never create a second order |
| Keep an explicit status map | TikTok, WooCommerce and your warehouse use different status vocabularies; write the mapping down instead of inferring it |
| Queue every outbound call and retry with backoff | Rate limits and short outages are normal, and a failed call must not lose the stock change |
| Handle cancellations and refunds as first-class events | They reverse stock, so skipping them causes drift that only shows up weeks later |
The practical order is: SKU mapping first, inventory ownership second, order import third, fulfillment write-back last. Teams that start with fulfillment write-back end up debugging it against a catalog that does not match.
Common problems after you connect TikTok Shop to WooCommerce
| Symptom | Likely cause | Fix |
|---|---|---|
| Products never appear on TikTok Shop | KYC or warehouse approval still pending | Finish steps 7 to 9 of the setup and wait for TikTok's approval |
| Individual products are rejected | Non-English characters in the name, non-white image backgrounds, missing image or description | Fix the data to the catalog rules above |
| You cannot edit or ship a TikTok order in WooCommerce | Orders are read-only there | Fulfill from the Orders tab in TikTok Seller Center, or build an integration that writes fulfillment back |
| Extension not offered for your country | Regional availability | Check the setup flow for your market; otherwise use a third-party sync or a custom API build |
Choosing your next step
If you sell a modest catalog in a supported market and can fulfill from Seller Center, install the official plugin and finish KYC and warehouse approval first. If your orders must flow through your own warehouse, ERP or custom website, plan a custom integration and settle the data rules above before you write code.
Not sure which path fits? Request a free quote and describe your store, your market and how you fulfill orders.
FAQ
Questions fréquentes
Can I connect TikTok Shop to WooCommerce without a plugin?
Yes. You can build a custom integration that calls the TikTok Shop Open API from your server and uses the WooCommerce REST API and webhooks on the store side. It gives you full control over order handling and fulfillment write-back, but you own token refresh, retries and API version changes.
Does the TikTok for WooCommerce plugin sync orders back to WooCommerce?
Yes, TikTok Shop orders sync into your WooCommerce dashboard, but they are read-only there. Fulfillment happens in TikTok Seller Center, through the Orders tab, using TikTok's own shipping solution.
Why is my WooCommerce product not showing on TikTok Shop?
Check that KYC and warehouse approval are complete, then check the catalog rules: no non-English characters in the product name, white-background images (1 to 9), and a description of up to 10,000 characters.
Can I connect TikTok Shop to a custom website that is not WooCommerce?
Yes. TikTok Shop integrates through its API, so any store with its own product, inventory and order data can connect. You build the same sync loop: map products by SKU, keep one system as the inventory owner, import orders idempotently and write fulfillment back.
Is the TikTok Shop integration for WooCommerce available in every country?
No. WooCommerce's launch announcement said it was available to merchants in the US and UK, and its documentation reads as US-centric. Availability changes, so confirm your market in the plugin's setup flow before planning around it.