Reference · built on requestConnectorCommerce & orders

TikTok Shop

Orders, packages, cancellations, returns, and inventory from TikTok Shop through its Open API and webhooks.

About

TikTok Shop is the marketplace inside the TikTok app. A seller runs one shop per selling country, and each shop authorizes apps registered in the TikTok Shop developer console. The Open API at open-api.tiktokglobalshop.com groups endpoints by category and dated version, for example /order/202309/orders/search, and covers orders, fulfillment, logistics, products, returns, finance, and customer service.

Through Fibric, an operator subscribes a shop to webhook topics such as ORDER_STATUS_CHANGE and RETURN_STATUS_CHANGE, reconciles them against Get Order List, and proposes the next step: approve or reject a cancellation, decide a return, ship a package, or correct SKU inventory. You approve. The connector makes the call once and leaves a receipt.

This is a reference listing. It documents what Fibric would read from TikTok Shop and what it could propose, based on the vendor's published interfaces. Fibric builds it under a managed deployment when you request it; selecting it here installs nothing.

Inputs

  • Orders from Get Order List (POST /order/202309/orders/search), filtered by order_status, create_time, and update_time, in pages of up to 100
  • Order detail from Get Order Detail (GET /order/202507/orders), up to 50 ids per call, with addresses, payment, packages, and cancellation_initiator
  • Order status changes through the ORDER_STATUS_CHANGE webhook: UNPAID, ON_HOLD, AWAITING_SHIPMENT, AWAITING_COLLECTION, IN_TRANSIT, DELIVERED, COMPLETED, CANCEL
  • Cancellation requests through CANCELLATION_STATUS_CHANGE, with cancel_id, cancellations_role, and cancel_status
  • Return, refund, and replacement requests through RETURN_STATUS_CHANGE, plus Search Returns and Search Cancellations
  • Package combine and split events through PACKAGE_UPDATE, and address changes through RECIPIENT_ADDRESS_UPDATE
  • SELLER_DEAUTHORIZATION and UPCOMING_AUTHORIZATION_EXPIRATION, sent 30 days before an authorization lapses

Proposed actions

  • Target capability: propose approving or rejecting a buyer cancellation through Approve Cancellation (POST /return_refund/202309/cancellations/{cancel_id}/approve) or Reject Cancellation
  • Target capability: propose a return decision through Approve Return (POST /return_refund/202309/returns/{return_id}/approve) or Reject Return
  • Target capability: propose shipping a package through Ship Package (POST /fulfillment/202309/packages/{package_id}/ship) with a tracking number and shipping_provider_id
  • Target capability: propose a SKU quantity change through Update Inventory (POST /product/202309/products/{product_id}/inventory/update)

Proposed actions are target capabilities. Every action runs propose-first and needs a validated deployment and the appropriate permissions.

What you can build

  • Decide a cancellation before the window closes

    CANCELLATION_STATUS_CHANGE arrives with CANCELLATION_REQUEST_PENDING. The operator checks whether the package has shipped and proposes Approve Cancellation or Reject Cancellation for your approval.

    With Cancellation Window, Order Risk

  • Triage returns and replacements

    RETURN_STATUS_CHANGE carries return_type (REFUND, REPLACEMENT, RETURN_AND_REFUND) and the pending status. The operator gathers the order and proposes an approve or reject decision with the reason.

    With Returns Triage

  • Keep TikTok inventory in step with the warehouse

    When your stock system shows a SKU running out, the operator proposes an Update Inventory call for that product's SKUs so the shop stops overselling.

    With Oversell Watch, Channel Allocation

  • Catch orders stuck in AWAITING_SHIPMENT

    The operator polls Get Order List for orders that have sat in AWAITING_SHIPMENT and proposes Ship Package with the carrier tracking once a label exists.

    With Stalled Shipment, Tracking Sync

Requirements

  • A TikTok Shop seller account with an active shop, and a developer account in the TikTok Shop console that owns the app
  • The seller's authorization for the scopes the app needs, such as Order Information, Fulfillment Basic, and Product Modify
  • A refresh routine: access tokens expire after 7 days by default and the refresh token lasts as long as the authorization the seller granted
  • An HTTPS callback URL registered per webhook topic with Update Shop Webhook (PUT /event/202309/webhooks) or in the developer console
  • The shop_cipher for each authorized shop, required on shop-scoped calls and returned by Get Authorized Shops
Authentication
A TikTok Shop app with an app_key and app_secret; each seller authorizes it through an authorization link or the Seller Center App Store, and the resulting access token is sent in the x-tts-access-token header while every request is signed with HMAC-SHA256 using the app secret.

Limits

  • Rate limits are allocated dynamically per App ID and authorized shop, with no fixed published quota. Throttling arrives as HTTP 429 with business code 36009002.
  • TikTok's own guidance says not to treat webhooks as the only source of truth; the connector reconciles state by polling Get Order List.
  • While an app is still in development, live sellers cannot authorize it. Testing uses Seller Center development shops.
  • US and non-US markets use different authorization domains, and versions are dated per endpoint, so version pinning is per endpoint.

Access and pricing

Reference listing. Fibric builds the connector under a managed deployment when you request it. Your quote covers the build, capabilities, usage, and support.

Request TikTok Shop ↗

Questions and answers

How does TikTok Shop sign webhook deliveries?
The Authorization header carries a lowercase hex HMAC-SHA256 of the app_key concatenated with the raw request body, keyed with the app secret. It has no Bearer prefix. The connector computes it over the unmodified body and rejects a mismatch.
Which order statuses exist?
UNPAID, ON_HOLD, AWAITING_SHIPMENT, PARTIALLY_SHIPPING, AWAITING_COLLECTION, IN_TRANSIT, DELIVERED, COMPLETED, and CANCELLED. Get Order List filters on order_status, and ON_HOLD orders may still be cancelled by the buyer without seller approval.
How is the API versioned?
The version is part of the path, named for the year and month it launched, such as /order/202309/orders/search. Versions are assigned per API, so different endpoints can be on different versions at the same time.
Ask about TikTok Shop

Ask about the capabilities and requirements in this listing.

For project-specific requirements, contact Fibric.