P&L

Order-level P&L detail

Changed on

One row per order x SKU with its fee breakdown, filterable by order source, settled state, product or SKU — the same filters applied by hand to the Seller Center export. Unsettled lines are included by default and their amounts still move.

post/pnl/orders

Request

  • Base URL
    https://api.reacherapp.com/public/v1
  • URL
    https://api.reacherapp.com/public/v1/pnl/orders
  • Auth
    API key in header x-api-key and API key in header x-shop-id

Request body

start_datestring date nullable

Inclusive paid-date window start.

end_datestring date nullable

Inclusive paid-date window end.

order_source'Video' | 'Product card' | 'Live' nullable

Filter by TikTok's own order-source value.

settledboolean nullable

True = only settled orders, False = only unsettled. Unsettled amounts still move as TikTok settles them.

product_idstring nullable

Filter to one product.

sku_idstring nullable

Filter to one SKU.

limitinteger

Page size.

offsetinteger

Page offset.

Response

Successful Response

shop_idinteger required
seller_idstring required
totalinteger required
limitinteger required
offsetinteger required
selected_fieldsstring[]

The fee columns every row in this page carries, in canonical order. Echoed once per page, not per row: it is provenance for the projection you asked for, so an absent key can be read as 'not requested' rather than 'no data'.

Changes

    • info

      added the optional property // to the response with the status

    • breaking

      the / response's property type changed from string to no type for status

    • info

      added the optional property to the response with the status

    • info

      added subschema #1 subschema #2 to the / response property anyOf list for the response status

    • info

      response property total deprecated