The Delete Product API enables you to remove products or specific product variants from your Fynd Commerce catalog. Deletions are processed asynchronously through the same batch processing system, allowing you to delete multiple products or variants in a single API request. Each deletion submission returns a trace_id for monitoring processing status.
Product deletions in Fynd Commerce support flexible removal options - you can delete entire products, specific product variants, or multiple products in bulk. The deletion scope is determined by the fields you include in the request payload.
- Product and variant deletions are permanent and cannot be undone. Ensure you have verified the products/variants to be deleted before submitting the request. Consider exporting product data before performing bulk deletions
- Deleting products that have active or recent orders may impact order fulfillment and reporting. Ensure all orders are fulfilled or canceled before deleting products
Request Type:
DELETE
Scheme:HTTPS
Endpoint:https://{{host}}/v3/catalog/product
Try out Fynd Konnect's Delete Product Endpoint
Common Request Headers
| Header | Mandatory | Description |
|---|---|---|
x-access-token | Yes | Access token used for authenticating API requests to Fynd Konnect |
Content-Type | Yes | application/json |
- Delete entire products that are discontinued or no longer sold
- Remove specific product variants that are out of stock permanently
- Bulk delete multiple products during catalog cleanup operations
- Remove products before catalog migration or restructuring
- Delete test products created during integration development
Array of products to delete
Product name
Product slug
Brand name
Brand UID
Item code
Include to delete specific sizes only; omit to delete the whole product
Template slug for the product being deleted
To delete an entire product:
- Include only:
slug,brand,item_code, andtemplate - Do NOT include the
sizesarray
To delete specific product variants:
- Include:
slug,brand,item_code,template, and thesizesarray - In the
sizesarray, specify only theprimary_identifierof variants to delete
Unique identifier for tracking the batch processing status. Use this with the Check Product Status endpoint
Total number of deletion requests submitted
Number of deletion requests accepted for processing (passed initial validation)
Number of deletion requests rejected due to validation errors
High-level status: SUCCESS (all accepted), PARTIAL (some failed), FAILED (all rejected)
Object containing validation error details for failed deletions (indexed by product position)
Processing stage: RUNNING (being processed), COMPLETED (finished), FAILED (stopped with errors)
Internal batch identifier for the processing job
Your company identifier in Fynd Commerce
UTC timestamp of the last status update
- Fynd Konnect [Sandbox]https://fyndkonnect.konnect.uat.fyndx1.de/v3/catalog/product
curl -i -X DELETE \
https://fyndkonnect.konnect.uat.fyndx1.de/v3/catalog/product \
-H 'Content-Type: application/json' \
-H 'x-access-token: YOUR_API_KEY_HERE' \
-d '{
"products": [
{
"name": "string",
"slug": "string",
"brand": "string",
"brand_uid": "string",
"item_code": "string",
"sizes": [
{
"primary_identifier": "string",
"size": "string",
"identifiers": [
{
"gtin_value": "string",
"gtin_type": "SKU",
"primary": true
}
]
}
]
}
],
"template": "string"
}'{
"trace_id": "a736437f4c389a5f-1760266316425",
"total": 1,
"success": 1,
"failed": 0,
"status": "SUCCESS",
"errors": {},
"stage": "RUNNING",
"batch_id": "68eb884c9955e2f2705c9819",
"company_id": 6900,
"last_updated_on": "2025-10-12T10:51:56.752438370Z"
}Delete a complete product with all its product variants:
Request Body:
{
"products": [
{
"slug": "air-coolers-12337390",
"brand": "Generic",
"item_code": "AIRCOOL"
}
],
"template": "air-care"
}Response:
{
"trace_id": "a736437f4c389a5f-1760266316425",
"total": 1,
"success": 1,
"failed": 0,
"status": "SUCCESS",
"errors": {},
"stage": "RUNNING",
"batch_id": "68eb884c9955e2f2705c9819",
"company_id": 6900,
"last_updated_on": "2025-10-12T10:51:56.752438370Z"
}Err: Product Not Found
- **Cause:** The combination of `slug`, `brand`, and `item_code` doesn't match any existing product. - **Solution:** Verify the product identifiers using the [Fetch Products](./get-products) endpoint before deletion.Err: Invalid Size Identifier
- **Cause:** The `primary_identifier` in the sizes array doesn't exist for the specified product - **Solution:** Fetch the product details to confirm available product variants and their identifiersErr: Last Size Deletion
- **Cause:** Attempting to delete the last remaining product variant of a product. - **Solution:** If deleting the last size, omit the `sizes` array to delete the entire product instead.- Verify before deleting: Use Fetch Products to confirm product details before deletion
- Export data first: Export product data before bulk deletions for backup purposes
- Test with single products: Start with single product deletions before scaling to bulk operations
- Track with
trace_id: Always save thetrace_idand monitor deletion status - Handle validation errors: Check the
errorsobject for details on failed deletions - Consider deactivation: For temporary removal, consider marking products inactive instead of deleting
- Delete in batches: For large-scale deletions, break into manageable batches of 50-100 products
- Coordinate with inventory: Ensure inventory is cleared or transferred before deleting products
- Check dependencies: Verify no active orders exist for products being deleted
- Document deletions: Maintain logs of deleted products for audit and compliance purposes
- To check deletion processing status, see Check Product Status
- To verify product deletion, see Fetch Products
- To create new products, see Create Product
- To update existing products, see Update Product
- For complete catalog management workflow, see Catalog Management Guide