product.statusChanged

product.statusChanged

This event is triggered when a product's sales status changes in a restaurant.

Opening or closing the product for sale, enabling or disabling it for a specific order type (Table / Delivery / Takeaway), and assigning the product to a branch or removing it from a branch all trigger this event.

Payload Structure

{
  "eventId": "9c1f0a2d-4b7e-4c1a-9f52-1d8e6b3a7c04",
  "webhookEventType": "product.statusChanged",
  "eventTimeUtc": "2025-10-21T11:59:50.1855135Z",
  "data": {
    "productId": 2230902,
    "productName": "Sushi Set",
    "productCode": "SUS-001",
    "isProductSalable": true,
    "orderTypes": [
      { "orderType": 1, "orderTypeName": "Masa siparişi", "isActive": false },
      { "orderType": 3, "orderTypeName": "Paket servis", "isActive": true },
      { "orderType": 5, "orderTypeName": "Gel-Al siparişi", "isActive": true }
    ]
  },
  "restaurantIdentity": "3edc2d46-bfc0-44d1-b701-f18e56306aed"
}

Data Fields

FieldTypeDescription
productIdnumberProduct ID
productNamestringProduct name
productCodestringProduct code
isProductSalablebooleanWhether the product is open for sale in the restaurant. When false, it cannot be sold regardless of order type
orderTypesarrayCurrent status per order type

orderTypes Fields

FieldTypeDescription
orderTypenumberOrder type. 1 Table, 3 Delivery, 5 Takeaway
orderTypeNamestringName of the order type
isActivebooleanWhether the product is open for sale for this order type

Usage

The payload contains the full current status of the product, not only the field that changed. This allows you to reflect the product's current sales status directly, without making an additional request.

When the product is removed from the restaurant or closed for sale, isProductSalable becomes false and every order type in the orderTypes list is returned with isActive: false.