Marketplaces / TikTok Marketplace Integration v2 / TikTok - Product management / TikTok Deactivate Product

TikTok Deactivate Product

Version Date Created / Updated Notes
v1.0 20.06.2024 Hristiyan Georgiev TikTok has new API version and updates. The scope was also updated to the latest changes
v1.1 30/09/2024 Hristiyan Added logic for the trigger
v1.2 24.06.2025 Bogomil Add limit for number of ids

Deactivate Product

We are not able to deactivate products in following statuses: draft, frozen and deleted products cannot be deactivated.

Deactivate Product function is used to stop a product from being “available” to the end buyer but without removing the product from the Marketplace. It is generally used to send a “deactivation” to ensure the product is not being sold anymore.

  • Important: For TikTok, “Deactivate“ API call will deactivate the product and all its variant! ( Will be covered within the stock update cron!!!) and if all the variants of the products are with zero stock, we will send deactivation call.

    End item flag will send only 0 stock

Respectively, if the product status is “deactivated“, and we push positive stock to the product, the status will be still “deactivated“. In order to push product back on “Active”, first we need to call “Activate Product“ call and then to send stock updates;

API Call: POST /product/202309/products/deactivate

API Docs: https://partner.tiktokshop.com/docv2/page/6509de450fcef602bf1d087c?external_id=6509de450fcef602bf1d087c#Back To Top

<v1.1> The trigger for this call in order to deactivate product, we should have following statuses on all variants of product:

Product Account > Product status = Product Published;

Product Account > Listing Status = Inactive Product Account TikTok > TikTok Product Status = Activated (new field)

If we have a variation and not all products of the variation meet the above criteria, we just skip the product and not send it at all.

Once we have successfully sent the deactivation, we should change the Product Account TikTok > TikTok Product Status = Deactivated across all variants.

</v1.1>

We need to pass the shop_cipher as query property which was obtained with the Get Authorised Shops call found here TikTok - Authentication & Database structure

Example Call:

{
  "product_ids": [
    "1729592969712207008"
  ]
}

Mapping :

Integration Field Integration Notes Integration required Hemi Mapping Hemi Notes
product_ids string Yes Product Account > Channel Item ID <v1.2>

Please note we can send at most 20 ids in the payload </1.2> |

We will deactivate only if all variants into variations are with 0 stock.

Example Response:

{
  "code": 0,
  "data": {
    "errors": [
      {
        "code": 12052003,
        "detail": {
          "product_id": "1729382588639839583"
        },
        "message": "The current product status can not be deactiate"
      }
    ]
  },
  "message": "Success",
  "request_id": "202203070749000101890810281E8C70B7"
}

The successfull response will be with code : 0 and message : Success . If we receive a different code than 0, this means there was an error and we need to store the error. We want to store the error message as per the abstraction Product Listing general requirements

Code Message
12019120 product ids exceed limit
12052048 You can't edit other sellers' products.
12052700 seller is inactived
12052703 Invalid seller tax number
12052900 System error, try again later
12052901 product status invalid
Is this article helpful?
0 0 0