List products to TikTok Shop

This article describes how to list products to TikTok Shop (TTS) through the app, including the TTS-side prerequisites you must complete before listing, the fields TikTok requires, and how to resolve missing attributes when a listing fails. Use it alongside the TikTok Connector article, which covers the connector settings that control product push behavior.


Before you begin

Each TikTok Shop must be configured in TTS before the app can list products. Confirm the following items are set up in your TTS Seller Center:

  • Shop status: Shop is active.
  • Shop tax: Tax settings are filled in.
  • Pickup warehouse: A pickup warehouse is created.
  • Return warehouse: A return warehouse is created.
  • Delivery option: A default delivery option is selected.
  • Shipping template: At least one shipping template is created.
  • Bank account: Bank account information is filled in.
  • Contact info: Seller contact information is filled in.
  • Brand authorization: Branded products require valid brand authorization on TTS. The app does not create products in TTS for brands that are not authorized. See the Brand Authorization guide on TTS Academy for details.

Product quantity limits

To support new sellers with order fulfillment, TikTok Shop applies a probation period that limits daily orders and product uploads. Verify the current limits on TTS Academy before relying on these numbers - TikTok updates them periodically.

  • New individual sellers: limited to 100 orders per day.
  • New corporate sellers: limited to 200 orders per day.
  • All new sellers: limited to 100 product uploads per day.
  • After graduating from probation: no order limit; up to 1,000 product uploads per day.

How it works

Once the TTS prerequisites are complete, the app creates products on your TTS using the TikTok Create Product API. Each product is created either as a live listing or as a draft, depending on whether all required attributes are available.

TikTok product creation API call sequence

TikTok product creation API call sequence. Dashed boxes are conditional steps that run only when the product requires them.

The app performs the following sequence for each product:

  1. Calls Get Categories to retrieve the seller's available categories.
  2. Optionally calls Category Recommended to receive a recommended category ID based on the product name, description, and images.
  3. Calls Get Category Rule to retrieve the rules for the assigned category.
  4. Calls Get Attributes to retrieve the attributes required for the category.
  5. Calls Upload Image to upload product images and store the returned image IDs.
  6. Optionally calls Upload File to upload certificates or other supporting files when the category requires them.
  7. Optionally calls Get Brands to retrieve available brands and the authorization status when the product is branded.
  8. Calls Get Warehouse List to retrieve warehouse IDs for the seller.
  9. Calls Create Product to submit the product to TTS.

If all required fields are populated, the product is created as an active listing. If required fields are missing, the app attempts to create the product as a draft and raises an exception with the missing field details. If TTS rejects the draft as well, the exception captures the TTS error.

The connector setting Choose how Pipe17 handles missing Product attributes controls this behavior. With the default option, an exception is raised and the product is created as DRAFT in TTS. With the AI option, the app uses AI to derive missing attribute values from existing product data - see the TikTok Connector article for the SKU and attribute allow/block list settings that scope AI behavior.


Required product fields

The fields below are required for any product, regardless of category. Additional fields may be required based on the assigned TikTok category - see Receiving the TikTok category ID below.

  • Product name: TikTok recommends at least 40 characters to improve category assignment accuracy.
  • Description:
    • Must conform to HTML syntax.
    • Supports only these HTML tags: <p><img><ul><ol><li><br><strong><b><i><em><u>. Other tags are filtered out.
    • Tags cannot be nested.
    • Maximum 10,000 characters.
    • Maximum 30 inline images in the description body.
  • Images: 1 to 9 images in PNG, JPG, or JPEG format. File size up to 5 MB. Resolution between 300x300 px and 4000x4000 px.
  • Package weight
  • Price
  • Category ID: Assigned by TikTok based on product content. See the next section.

Receiving the TikTok category ID

TikTok assigns a category ID based on the product name, description, and images. Until the category ID is assigned, neither you nor the app knows which additional fields are required.

The app fetches the recommended category ID and the category rules first, then attempts to populate all required fields from the product data already in the app. Depending on the category, one or more of the following may be required:

  • Product certifications: Some categories are restricted and require seller approval and supporting certificates before the product can be listed.
  • Size chart: Required for categories such as apparel and footwear.
  • Package dimensions
  • Category-specific attributes: TTS returns a list of required attribute names per category.

If any of these are missing, the listing falls back to draft status and an exception is raised.


Resolve missing attributes

When the app cannot populate a required attribute from existing product data, you have two options.

Use custom fields

Standard fields like price, image, and description come from the sales channel where the product was originally pulled into the app. Non-standard fields - such as certifications, size charts, or category-specific attributes - can be supplied through customFields on the product.

customFields is an array of objects with name and value string properties. Set the name to the required TTS attribute or certificate name, and the value to the corresponding value. For certificates, the value is the URL to the certificate file.

"customFields": [
  {
    "name": "Name of the Authenticator/Agency",
    "value": "Seller's in-house authentication services"
  },
  {
    "name": "Certificate of Authenticity",
    "value": "https://somewebsite.com/certification_doc.pdf"
  }
]

To populate customFields automatically from your sales channel, configure product mapping on the integration that pulls products into the app.

Bulk export and import

For bulk fixes, use the Products listing page to export and re-import incomplete products as a CSV.

Before you begin, enable Prepare for Product Push to TikTok on the TikTok connector. This setting captures errors and missing attributes on each product, which is what populates the export.

To resolve missing attributes in bulk:

  1. Navigate to the Products listing page.
  2. Click Export Products and select Export Incomplete Products.
  1. Open the resulting CSV. Each row contains columns for the missing fields with placeholder text.
  2. Replace the placeholder text with correct values and save the file.
  3. On the Products listing page, click Import CSV and upload the updated file.

Once the products have all required attributes, the app publishes them to TTS as active listings.


Special cases

Hazmat attributes

All products listed on TikTok Shop must include valid hazmat attributes where applicable. Per federal regulations, hazmat products must be properly labelled, classified, stored, fulfilled, and transported. Listings missing required hazmat data are blocked at creation and may reduce your LSR.

The connector setting Safe Update for TikTok Product Push mitigates this risk for product updates. When enabled, the app pushes only the price update if hazmat data is missing, instead of a full update that could trigger review or delisting. When disabled, full updates are pushed and missing hazmat data may cause the listing to be reviewed or delisted. This setting applies only to updates of existing listings, not to new product creation.

Some hazmat attribute values may also require supporting certificates. Provide these through customFields as described in Resolve missing attributes.

Pre-owned products

Review the TikTok Shop Pre-Owned Products Policy before listing pre-owned items.

The app treats pre-owned products as inventory of 1. When the product is sold, the app deactivates the listing instead of updating inventory to 0. Once sold, inventory cannot be restored to 1 - to relist, you must create a new product.


Troubleshooting

  • Product is created as a draft in TTS instead of active
    The app could not populate one or more category-required fields. Open the product in the app, review the exception details, and supply the missing values either by configuring product mapping on the source channel or by using the Export Incomplete Products / Import CSV workflow.
  • Product creation fails entirely with a TTS error
    TTS rejected both the active and the draft creation attempts. Review the exception on the product for the error details returned by TTS. Common causes include unsupported HTML in the description, image dimensions outside the 300x300 to 4000x4000 px range, missing brand authorization, or category-restricted products without the required certificates.
  • Branded product is not listed
    Confirm the brand has valid authorization in TTS. The app does not create products for unauthorized brands. See the Brand Authorization guide on TTS Academy.
  • Product update caused the listing to be reviewed or delisted
    This commonly results from missing hazmat data on a full update. Enable Safe Update for TikTok Product Push so price-only updates are sent when hazmat information is missing.
  • Export Incomplete Products CSV is empty or missing columns
    Confirm Prepare for Product Push to TikTok is enabled on the connector. Without this setting, the app does not capture the per-product errors that populate the export.
  • Pre-owned product cannot be relisted after a sale
    This is by design. Once a pre-owned product is sold, the app deactivates the listing and inventory cannot be restored. Create a new product to relist.

Need Help?

If you need additional assistance:

We're here to help you succeed with your operations.

Was this article helpful?
0 out of 0 found this helpful

Comments

0 comments

Article is closed for comments.

Have more questions?
Submit a request
Share it, if you like it.