POST CMProductBulkUpdate?CMPackageId={CMPackageId}&CreateIfNotExists={CreateIfNotExists}
Request Information
URI Parameters
| Name | Type | Description | Additional information |
|---|---|---|---|
| CMPackageId | integer | ||
| CreateIfNotExists | boolean |
Body Parameters
Collection of CMProductBulkUpdateCommand| Name | Type | Description | Additional information |
|---|---|---|---|
| ProductID | integer |
Unique identifier for the product. Used to update an existing product. Auto generates if left blank |
None. |
| ProductType | string |
Required. Name of the product type category (e.g., Food, Beverage). |
Required |
| ProductGroup | string |
Required. Name of the product group within the product type. |
Required |
| ProductName | string |
Required. Primary display name of the product. |
Required |
| ProductName2 | string |
Must be provided; blank strings are accepted. Secondary display name of the product (e.g., alternative language). |
Required |
| PriceBand | string |
Required. Name of the price band this product belongs to. |
Required |
| PriceGroup | string |
Required. Name of the price group for pricing rules. |
Required |
| VATRate | string |
Required. VAT rate name applied to this product. |
Required |
| Measure | string |
Required. Name of the measure/portion size (e.g., Each, 330ml). |
Required |
| CostPricePerSKU | decimal number |
Cost price per stock keeping unit. |
None. |
| GrossSellPrice | decimal number |
Required. Gross selling price including VAT. |
Required |
| BarCode | string |
Product barcode. Must be provided; blank strings are accepted. This field can begin with leading zeros. |
Required |
| PLU | string |
Product's PLU number. Must be provided; blank strings are accepted. |
Required |
| PLU2 | string |
Secondary PLU number, mostly used for integrations. Must be provided; blank strings are accepted. |
Required |
| SKUName | string |
Must be provided; blank strings are accepted. Stock Keeping Unit name for inventory tracking. |
Required |
| BINNumber | string |
Must be provided; blank strings are accepted. Bin/location number for stock storage. Supports alphanumeric if enabled. |
Required |
| KPText | string |
Must be provided; blank strings are accepted. Text displayed on kitchen printer tickets. |
Required |
| CommissionPercentage | integer |
Commission percentage awarded for selling this product. |
None. |
| AllowZeroPrice | boolean |
Whether the product can be sold at zero price. |
None. |
| UseStandardVAT | boolean |
Whether to always use standard VAT rate regardless of sales area. |
None. |
| AwardCRMPoints | boolean |
Whether CRM loyalty points are awarded for this product. |
None. |
| ChargePerMinute | boolean |
Whether product is charged per minute (e.g., pool table, gaming). |
None. |
| ExcludeFromReceipt | boolean |
Whether to exclude this product from printed receipts. |
None. |
| PromptForDescription | boolean |
Whether to prompt staff for a description when selling. |
None. |
| SellByWeight | boolean |
Whether product is sold by weight using connected scales. |
None. |
| ServiceChargeExempt | boolean |
Whether product is exempt from service charge. |
None. |
| PrintToKPStandalone | boolean |
Whether to print to kitchen printer as standalone item. |
None. |
| IsMain | boolean |
Whether this is the main course. |
None. |
| ProductInfo | string |
Must be provided; blank strings are accepted. Additional product information or description text. |
Required |
| RezlynxCode | string |
Must be provided; blank strings are accepted. Integration code for PMS systems. |
Required |
| MeasureCostPricePerSKU | decimal number |
Cost price per SKU at the measure level. |
None. |
| ProhibitSalesWhenUnderStocked | boolean |
Whether to block sales when stock level is below set threshold. |
None. |
| IsUseBatchSales | boolean |
Whether product uses batch sales mode for kitchen preparation. |
None. |
| CookTimeSeconds | integer |
Time in seconds required to cook/prepare the product. |
None. |
| ShelfLifeSeconds | integer |
Shelf life in seconds after the product is produced. |
None. |
| IsDisplayAfterProduced | boolean |
Whether to display on KDS after production is complete. |
None. |
| IsBatchSalesProduceOnSale | boolean |
Whether batch sales items are produced immediately on sale. |
None. |
| AlcoholPercent | decimal number |
Alcohol by volume percentage for alcoholic products. |
None. |
| UnitVolume | decimal number |
Volume of the product unit in millilitres. |
None. |
| AllowDiscount | boolean |
Whether discounts can be applied to this product. |
None. |
| ItemCookCount | integer |
Number of items that can be cooked simultaneously. |
None. |
| SelfServiceFood | boolean |
Whether product is available for self-service food ordering. |
None. |
| SelfServiceDrink | boolean |
Whether product is available for self-service drink ordering. |
None. |
| IsChooseLater | boolean |
Whether customer can defer selection (choose later option). |
None. |
| KP1 | boolean |
Whether product is assigned to Kitchen Print Group 1. |
None. |
| KP2 | boolean |
Whether product is assigned to Kitchen Print Group 2. |
None. |
| KP3 | boolean |
Whether product is assigned to Kitchen Print Group 3. |
None. |
| KP4 | boolean |
Whether product is assigned to Kitchen Print Group 4. |
None. |
| KP5 | boolean |
Whether product is assigned to Kitchen Print Group 5. |
None. |
| KP6 | boolean |
Whether product is assigned to Kitchen Print Group 6. |
None. |
| KP7 | boolean |
Whether product is assigned to Kitchen Print Group 7. |
None. |
| KP8 | boolean |
Whether product is assigned to Kitchen Print Group 8. |
None. |
| KP9 | boolean |
Whether product is assigned to Kitchen Print Group 9. |
None. |
| KP10 | boolean |
Whether product is assigned to Kitchen Print Group 10. |
None. |
| KP11 | boolean |
Whether product is assigned to Kitchen Print Group 11. |
None. |
| KP12 | boolean |
Whether product is assigned to Kitchen Print Group 12. |
None. |
| KP13 | boolean |
Whether product is assigned to Kitchen Print Group 13. |
None. |
| KP14 | boolean |
Whether product is assigned to Kitchen Print Group 14. |
None. |
| KP15 | boolean |
Whether product is assigned to Kitchen Print Group 15. |
None. |
| KP16 | boolean |
Whether product is assigned to Kitchen Print Group 16. |
None. |
| HideMeasureShortNameFromReceipt | boolean |
Whether to hide the measure short name from printed receipts. |
None. |
| ThirdPartyCRMPointsValue | integer |
Points value for third-party CRM integrations. |
None. |
| ExtraReceiptText | string |
Must be provided; blank strings are accepted. Additional text to print on receipts for this product. |
Required |
| CRMPointsValue | decimal number |
CRM loyalty points value awarded for this product. |
None. |
| IsAvailableThroughTevalisAPI | boolean |
Whether product is available through the Tevalis API. |
None. |
| IsAlcohol | boolean |
Whether product is classified as alcoholic (for age verification). |
None. |
| CRMCode | string |
Must be provided; blank strings are accepted. CRM integration code for this product. |
Required |
| ReportCategory | string |
Report category name for sales reporting. |
None. |
| Region | string |
Must be provided; blank strings are accepted. Geographic region (typically for wines). |
Required |
| Vintage | string |
Must be provided; blank strings are accepted. Vintage year (typically for wines). |
Required |
| StockWarningLevel | decimal number |
Stock level at which to trigger a low stock warning. |
None. |
Request Formats
application/json, text/json
[
{
"ProductID": 1,
"ProductType": "sample string 1",
"ProductGroup": "sample string 2",
"ProductName": "sample string 3",
"ProductName2": "sample string 4",
"PriceBand": "sample string 5",
"PriceGroup": "sample string 6",
"VATRate": "sample string 7",
"Measure": "sample string 8",
"CostPricePerSKU": 1.0,
"GrossSellPrice": 1.0,
"BarCode": "sample string 9",
"PLU": "sample string 10",
"PLU2": "sample string 11",
"SKUName": "sample string 12",
"BINNumber": "sample string 13",
"KPText": "sample string 14",
"CommissionPercentage": 1,
"AllowZeroPrice": true,
"UseStandardVAT": true,
"AwardCRMPoints": true,
"ChargePerMinute": true,
"ExcludeFromReceipt": true,
"PromptForDescription": true,
"SellByWeight": true,
"ServiceChargeExempt": true,
"PrintToKPStandalone": true,
"IsMain": true,
"ProductInfo": "sample string 15",
"RezlynxCode": "sample string 16",
"MeasureCostPricePerSKU": 1.0,
"ProhibitSalesWhenUnderStocked": true,
"IsUseBatchSales": true,
"CookTimeSeconds": 1,
"ShelfLifeSeconds": 1,
"IsDisplayAfterProduced": true,
"IsBatchSalesProduceOnSale": true,
"AlcoholPercent": 1.0,
"UnitVolume": 1.0,
"AllowDiscount": true,
"ItemCookCount": 1,
"SelfServiceFood": true,
"SelfServiceDrink": true,
"IsChooseLater": true,
"KP1": true,
"KP2": true,
"KP3": true,
"KP4": true,
"KP5": true,
"KP6": true,
"KP7": true,
"KP8": true,
"KP9": true,
"KP10": true,
"KP11": true,
"KP12": true,
"KP13": true,
"KP14": true,
"KP15": true,
"KP16": true,
"HideMeasureShortNameFromReceipt": true,
"ThirdPartyCRMPointsValue": 1,
"ExtraReceiptText": "sample string 17",
"CRMPointsValue": 1.0,
"IsAvailableThroughTevalisAPI": true,
"IsAlcohol": true,
"CRMCode": "sample string 18",
"ReportCategory": "sample string 19",
"Region": "sample string 20",
"Vintage": "sample string 21",
"StockWarningLevel": 1.0
},
{
"ProductID": 1,
"ProductType": "sample string 1",
"ProductGroup": "sample string 2",
"ProductName": "sample string 3",
"ProductName2": "sample string 4",
"PriceBand": "sample string 5",
"PriceGroup": "sample string 6",
"VATRate": "sample string 7",
"Measure": "sample string 8",
"CostPricePerSKU": 1.0,
"GrossSellPrice": 1.0,
"BarCode": "sample string 9",
"PLU": "sample string 10",
"PLU2": "sample string 11",
"SKUName": "sample string 12",
"BINNumber": "sample string 13",
"KPText": "sample string 14",
"CommissionPercentage": 1,
"AllowZeroPrice": true,
"UseStandardVAT": true,
"AwardCRMPoints": true,
"ChargePerMinute": true,
"ExcludeFromReceipt": true,
"PromptForDescription": true,
"SellByWeight": true,
"ServiceChargeExempt": true,
"PrintToKPStandalone": true,
"IsMain": true,
"ProductInfo": "sample string 15",
"RezlynxCode": "sample string 16",
"MeasureCostPricePerSKU": 1.0,
"ProhibitSalesWhenUnderStocked": true,
"IsUseBatchSales": true,
"CookTimeSeconds": 1,
"ShelfLifeSeconds": 1,
"IsDisplayAfterProduced": true,
"IsBatchSalesProduceOnSale": true,
"AlcoholPercent": 1.0,
"UnitVolume": 1.0,
"AllowDiscount": true,
"ItemCookCount": 1,
"SelfServiceFood": true,
"SelfServiceDrink": true,
"IsChooseLater": true,
"KP1": true,
"KP2": true,
"KP3": true,
"KP4": true,
"KP5": true,
"KP6": true,
"KP7": true,
"KP8": true,
"KP9": true,
"KP10": true,
"KP11": true,
"KP12": true,
"KP13": true,
"KP14": true,
"KP15": true,
"KP16": true,
"HideMeasureShortNameFromReceipt": true,
"ThirdPartyCRMPointsValue": 1,
"ExtraReceiptText": "sample string 17",
"CRMPointsValue": 1.0,
"IsAvailableThroughTevalisAPI": true,
"IsAlcohol": true,
"CRMCode": "sample string 18",
"ReportCategory": "sample string 19",
"Region": "sample string 20",
"Vintage": "sample string 21",
"StockWarningLevel": 1.0
}
]
application/xml, text/xml
System.Xml.XmlDocument
application/x-www-form-urlencoded
Sample not available.
Response Information
Resource Description
Collection of PackageProductBulkUpdateCommand| Name | Type | Description | Additional information |
|---|---|---|---|
| RowNumber | integer |
None. |
|
| PackageID | integer |
Required |
|
| ProductID | integer |
Range: inclusive between 1 and 2147483647 |
|
| AddedProductID | integer |
None. |
|
| IsSameOptions | boolean |
None. |
|
| ModifiedBy | string |
Required |
|
| ProductType | string |
Required |
|
| ProductGroup | string |
Required |
|
| ProductName | string |
Required |
|
| CostPricePerSKU | decimal number |
Required Range: inclusive between 0 and 99999999.99 |
|
| SKUName | string |
Required |
|
| BINNumber | string |
Required Max length: 200 |
|
| KPText | string |
Required |
|
| CommissionPercentage | integer |
Required Range: inclusive between 0 and 100 |
|
| AllowZeroPrice | boolean |
Required |
|
| UseStandardVAT | boolean |
Required |
|
| AwardCRMPoints | boolean |
Required |
|
| ChargePerMinute | boolean |
Required |
|
| ExcludeFromReceipt | boolean |
Required |
|
| PromptForDescription | boolean |
Required |
|
| SellByWeight | boolean |
Required |
|
| PrintToKPStandalone | boolean |
Required |
|
| ProhibitSalesWhenUnderStocked | boolean |
Required |
|
| IsMain | boolean |
Required |
|
| ServiceChargeExempt | boolean |
Required |
|
| ProductInfo | string |
Required |
|
| IsUseBatchSales | boolean |
Required |
|
| CookTimeSeconds | integer |
Required Range: inclusive between 0 and 9999999 |
|
| ShelfLifeSeconds | integer |
Required Range: inclusive between 0 and 9999999 |
|
| IsDisplayAfterProduced | boolean |
Required |
|
| IsBatchSalesProduceOnSale | boolean |
Required |
|
| AlcoholPercent | decimal number |
Range: inclusive between 0 and 9999 |
|
| UnitVolume | decimal number |
Range: inclusive between 0 and 9999 |
|
| AllowDiscount | boolean |
None. |
|
| ItemCookCount | integer |
Range: inclusive between 0 and 9999 |
|
| SelfServiceDrink | boolean |
Required |
|
| SelfServiceFood | boolean |
Required |
|
| Measures | Collection of ProductMeasureBulkUpdateCommand |
None. |
|
| IsChooseLater | boolean |
Required |
|
| KP1 | boolean |
Required |
|
| KP2 | boolean |
Required |
|
| KP3 | boolean |
Required |
|
| KP4 | boolean |
Required |
|
| KP5 | boolean |
Required |
|
| KP6 | boolean |
Required |
|
| KP7 | boolean |
Required |
|
| KP8 | boolean |
Required |
|
| KP9 | boolean |
Required |
|
| KP10 | boolean |
Required |
|
| KP11 | boolean |
Required |
|
| KP12 | boolean |
Required |
|
| KP13 | boolean |
Required |
|
| KP14 | boolean |
Required |
|
| KP15 | boolean |
Required |
|
| KP16 | boolean |
Required |
|
| HideMeasureShortNameFromReceipt | boolean |
Required |
|
| RezlynxCode | string |
Required |
|
| ThirdPartyCRMPointsValue | integer |
Range: inclusive between 0 and 9999 |
|
| CRMPointsValue | decimal number |
None. |
|
| ExtraReceiptText | string |
Required |
|
| IsAvailableThroughTevalisApi | boolean |
Required |
|
| IsAlcohol | boolean |
Required |
|
| CRMCode | string |
Required |
|
| ProductName2 | string |
Required |
|
| ReportCategory | string |
Required |
|
| Region | string |
Required Max length: 100 |
|
| Vintage | string |
Required Max length: 100 |
|
| StockWarningLevel | decimal number |
Required Range: inclusive between 0 and 9999999 |
Response Formats
application/json, text/json
[
{
"RowNumber": 1,
"PackageID": 1,
"ProductID": 1,
"AddedProductID": 1,
"IsSameOptions": true,
"ModifiedBy": "sample string 2",
"ProductType": "sample string 3",
"ProductGroup": "sample string 4",
"ProductName": "sample string 5",
"CostPricePerSKU": 1.0,
"SKUName": "sample string 6",
"BINNumber": "sample string 7",
"KPText": "sample string 8",
"CommissionPercentage": 1,
"AllowZeroPrice": true,
"UseStandardVAT": true,
"AwardCRMPoints": true,
"ChargePerMinute": true,
"ExcludeFromReceipt": true,
"PromptForDescription": true,
"SellByWeight": true,
"PrintToKPStandalone": true,
"ProhibitSalesWhenUnderStocked": true,
"IsMain": true,
"ServiceChargeExempt": true,
"ProductInfo": "sample string 9",
"IsUseBatchSales": true,
"CookTimeSeconds": 10,
"ShelfLifeSeconds": 11,
"IsDisplayAfterProduced": true,
"IsBatchSalesProduceOnSale": true,
"AlcoholPercent": 1.0,
"UnitVolume": 1.0,
"AllowDiscount": true,
"ItemCookCount": 1,
"SelfServiceDrink": true,
"SelfServiceFood": true,
"Measures": [
{
"RowNumber": 1,
"PriceBand": "sample string 2",
"PriceGroup": "sample string 3",
"VATRate": "sample string 4",
"Measure": "sample string 5",
"GrossSellPrice": 1.0,
"BarCode": "sample string 6",
"PLU": "sample string 7",
"PLU2": "sample string 8",
"RezlynxCode": "sample string 9",
"MeasureCostPricePerSKU": 1.0
},
{
"RowNumber": 1,
"PriceBand": "sample string 2",
"PriceGroup": "sample string 3",
"VATRate": "sample string 4",
"Measure": "sample string 5",
"GrossSellPrice": 1.0,
"BarCode": "sample string 6",
"PLU": "sample string 7",
"PLU2": "sample string 8",
"RezlynxCode": "sample string 9",
"MeasureCostPricePerSKU": 1.0
}
],
"IsChooseLater": true,
"KP1": true,
"KP2": true,
"KP3": true,
"KP4": true,
"KP5": true,
"KP6": true,
"KP7": true,
"KP8": true,
"KP9": true,
"KP10": true,
"KP11": true,
"KP12": true,
"KP13": true,
"KP14": true,
"KP15": true,
"KP16": true,
"HideMeasureShortNameFromReceipt": true,
"RezlynxCode": "sample string 12",
"ThirdPartyCRMPointsValue": 1,
"CRMPointsValue": 1.0,
"ExtraReceiptText": "sample string 13",
"IsAvailableThroughTevalisApi": true,
"IsAlcohol": true,
"CRMCode": "sample string 14",
"ProductName2": "sample string 15",
"ReportCategory": "sample string 16",
"Region": "sample string 17",
"Vintage": "sample string 18",
"StockWarningLevel": 19.0
},
{
"RowNumber": 1,
"PackageID": 1,
"ProductID": 1,
"AddedProductID": 1,
"IsSameOptions": true,
"ModifiedBy": "sample string 2",
"ProductType": "sample string 3",
"ProductGroup": "sample string 4",
"ProductName": "sample string 5",
"CostPricePerSKU": 1.0,
"SKUName": "sample string 6",
"BINNumber": "sample string 7",
"KPText": "sample string 8",
"CommissionPercentage": 1,
"AllowZeroPrice": true,
"UseStandardVAT": true,
"AwardCRMPoints": true,
"ChargePerMinute": true,
"ExcludeFromReceipt": true,
"PromptForDescription": true,
"SellByWeight": true,
"PrintToKPStandalone": true,
"ProhibitSalesWhenUnderStocked": true,
"IsMain": true,
"ServiceChargeExempt": true,
"ProductInfo": "sample string 9",
"IsUseBatchSales": true,
"CookTimeSeconds": 10,
"ShelfLifeSeconds": 11,
"IsDisplayAfterProduced": true,
"IsBatchSalesProduceOnSale": true,
"AlcoholPercent": 1.0,
"UnitVolume": 1.0,
"AllowDiscount": true,
"ItemCookCount": 1,
"SelfServiceDrink": true,
"SelfServiceFood": true,
"Measures": [
{
"RowNumber": 1,
"PriceBand": "sample string 2",
"PriceGroup": "sample string 3",
"VATRate": "sample string 4",
"Measure": "sample string 5",
"GrossSellPrice": 1.0,
"BarCode": "sample string 6",
"PLU": "sample string 7",
"PLU2": "sample string 8",
"RezlynxCode": "sample string 9",
"MeasureCostPricePerSKU": 1.0
},
{
"RowNumber": 1,
"PriceBand": "sample string 2",
"PriceGroup": "sample string 3",
"VATRate": "sample string 4",
"Measure": "sample string 5",
"GrossSellPrice": 1.0,
"BarCode": "sample string 6",
"PLU": "sample string 7",
"PLU2": "sample string 8",
"RezlynxCode": "sample string 9",
"MeasureCostPricePerSKU": 1.0
}
],
"IsChooseLater": true,
"KP1": true,
"KP2": true,
"KP3": true,
"KP4": true,
"KP5": true,
"KP6": true,
"KP7": true,
"KP8": true,
"KP9": true,
"KP10": true,
"KP11": true,
"KP12": true,
"KP13": true,
"KP14": true,
"KP15": true,
"KP16": true,
"HideMeasureShortNameFromReceipt": true,
"RezlynxCode": "sample string 12",
"ThirdPartyCRMPointsValue": 1,
"CRMPointsValue": 1.0,
"ExtraReceiptText": "sample string 13",
"IsAvailableThroughTevalisApi": true,
"IsAlcohol": true,
"CRMCode": "sample string 14",
"ProductName2": "sample string 15",
"ReportCategory": "sample string 16",
"Region": "sample string 17",
"Vintage": "sample string 18",
"StockWarningLevel": 19.0
}
]
application/xml, text/xml
System.Xml.XmlDocument