Settlement reconciliation
Checks orders created in a window against what TikTok actually settled. The orders are the shop’s affiliate orders, the same set as Affiliate order lines, so orders with no creator attribution aren’t included. Each order gets a status: settled, partially_settled (settled rows plus a later unsettled row, such as an adjustment), unsettled, not_found, unknown, unchecked or error.
Per order you get stored (Growi’s synced view: SKU lines, units, gmv, settlement statuses, estimated and actual commission), settled (TikTok’s settlementAmount, revenueAmount, feeAndTaxAmount, shippingCostAmount, affiliateCommission and statementIds) and unsettled (TikTok’s estimates). For settled orders, mismatch compares the affiliate commission TikTok deducted at settlement with the commission reported on the affiliate order; against says whether that was the actual or estimated figure, and delta (settled minus stored) is flagged when it exceeds tolerance (default 0.01). summary counts the page by status. Amounts are exact decimal strings.
start_date and end_date are order-create days, YYYY-MM-DD, UTC, inclusive, at most 365 days apart. Orders are newest first. limit is up to 50 (default 25), and each order costs one TikTok call. Pass nextCursor back as cursor with the same window. sweptThrough shows how fresh the stored side is. When time runs out, truncated is true and some orders come back unchecked or unknown.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
First order-create day, YYYY-MM-DD, UTC, inclusive.
Last order-create day, YYYY-MM-DD, UTC, inclusive. At most 365 days after start_date.
Orders per page. Each order costs one TikTok call.
1 <= x <= 50nextCursor from the previous page, same window.
Absolute commission difference allowed before a settled order is a mismatch.
^\d{1,9}(\.\d{1,6})?$Use the TikTok Shop of this child brand (organization id) of your API key's organization
Response
{ window, basis: affiliate_orders.order_create_time_utc, sweptThrough, tolerance, currency, orders: [{ orderId, orderCreateTime, status, stored, settled, unsettled, mismatch, error }], summary: { orders, settled: { count, settlementAmount }, partiallySettled, unsettled: { count, estSettlementAmount }, notFound, unknown, unchecked, errors, mismatches }, nextCursor, truncated, truncatedReasons }