# Lookup POS Codes v1.0

The POS Code Lookup endpoint retrieves the POS codes for a menu item and its option set items. The request can retrieve POS codes for a single menu item at a time.

Moved

This endpoint was previously in version 1.0 of the Menu API. The functionality is the same - it just has a new home here in the Order API.

# Request

GET /order-api/v1.0/pos/codes/{menuKey}/{menuVersion}/{menuItemKey}[?optionSetItemKeys]

# Path Parameters

A list of the supported path parameters is described below.

Name Required Type Description
menuKey true string The key for the menu.
menuVersion true string The version of the menu.
menuItemKey true string The key for the menu item that POS codes should be retrieved for.

# Query Parameters

A list of the supported query parameters is described below.

Name Required Type Description
optionSetItemKeys false string[] The option set items the customer may have selected for the item. Multiple values must be separated by a comma.

# Response

200
OK
Returns an array of MenuItemPosItem resources wrapped in an ApiListResponse envelope.

# Response Body

The endpoint returns our ApiListResponse envelope. The data property of the response will contain an array of MenuItemPosItem resources.

As you can see from the example response below, the response contains multiple prices and keys.

The price to use is the price on the MenuItemPosItem resource. This is the price for the item on the menu and must be used when sending the order to POS.

The POS code (also known as a POS PLU) that must be used when sending the order to POS is on the PosItem resource nested in the MenuItemPosItem resource.

The lines have been highlighted in the example below.

# Sample













 






 













 






 









{
    "message": "The operation succeeded! 2 records returned.",
    "notifications": [],
    "numberOfRecords": 2,
    "data": [
        {
            "key": 811000176,
            "menuKey": "ROCO-ZA-3",
            "menuVersion": 202004,
            "itemType": "Item",
            "name": "Classic Cheese Burger",
            "currency": "ZAR",
            "price": 64.00, // Use this price!
            "aggregated": false,
            "posItem": {
                "key": 24713,
                "pointOfSale": "Pilot",
                "dataSet": "PILOT_ROCO_STD_ZA",
                "dataSetVersion": "1200914",
                "code": "1204", // This is the POS code.
                "name": "Classic Cheese",
                "currency": "ZAR",
                "price": 67.00,
                "enabled": true
            }
        },
        {
            "key": 811000011,
            "menuKey": "ROCO-ZA-3",
            "menuVersion": 202004,
            "itemType": "Option",
            "name": "Beef 150g (Option)",
            "currency": "ZAR",
            "price": 0.00, // Use this price!
            "aggregated": false,
            "posItem": {
                "key": 24552,
                "pointOfSale": "Pilot",
                "dataSet": "PILOT_ROCO_STD_ZA",
                "dataSetVersion": "1200914",
                "code": "1216", // This is the POS code.
                "name": "150g  BEEF",
                "currency": "ZAR",
                "price": 0.01,
                "enabled": true
            }
        }
    ]
}

# Errors

The standard error responses apply.

404
Not Found
When the menu, menu version or menu item cannot be found.
400
Bad Request
When the option set items list is invalid or missing required option set items for the menu item.
400
Bad Request
When no POS codes could be matched to the menu item and option set items provided.