Till Management Help

Overview

Till Management in Procure Wizard allows users to create virtual representations of their till configuration. They can then manage various details of the tills such as location references, what menus can appear on the till, what dishes can be sold at what prices, along with many other details. This data can then be exported into various formats.

A 'Till' in Procure Wizard is a virtual grouping of physical tills. In a bar for example, there might be three physical tills - Till A, Till B and Till C. These three tills serve all the same items. In Procure Wizard a till would be set up, let's say 'Bar Till' and those three tills would be set as a reference to that 'virtual' till. You can see this in the data when calling the till end point. In the till's attributes there is a 'locationReference' field, this is an array of the referenced tills. In our three till example this would look something like: "locationReference": [till_a, till_b, till_c]. Typically each physical till will have a unique identifier associated with it. This is where in the Procure Wizard configuration you would tie the physical tills to the virtual one.

When configuring the virtual tills in Procure Wizard each till can have different menus (so ultimately different dishes). A real world example of this use would be a site that has a bar area and a restaurant. The bar might sell some food items such as light bites or snacks, while the restaurant has the full menu items. Both the bar and restaurant might have multiple physical tills where they can serve people. How this could be configured in Procure Wizard would be two tills created such as 'Bar Till' and 'Restaurant Till'. In both tills the 'locationReference' field would be updated to reference the multiple physical tills.

Concepts

To understand how Till Managment works in Procure Wizard, a user should also understand the concept of Procure Wizard products, dishes, recipes and menus.

Although in Procure Wizard a user can create and manage products, recipes, dishes and menus, in terms of Till Management data, only dishes appear on menus. When configuring a till in Procure Wizard a user must select the dish or menus to associate with the till.

A product is the lowest level item, which are placed in recipes or dishes. Products are the items that are purchased from suppliers. Even when a single product is sold to a customer a dish is still created in Procure Wizard to be attached to a menu, so it can be given a price and EPoS code. For example, for a bottle of beer a dish might be created 'Beer'. That dish could then be attached to two different menus in Procure Wizard, say an 'early bird menu' where the price is cheaper and a different EPoS code, and a standard drinks menu.

A dish can contain recipes and/or products. Recipes can contain other recipes and/or products. This allows users of Procure Wizard to manage their dishes more efficiently. For example a Procure Wizard user might create a recipe called 'Sauce'. This same sauce might be used in numerous dishes, but the sauce is never sold directly to a customer.

For more information regarding products, recipes, dishes and/or menus please visit their corresponding help pages.

Available Tills

A request can be made to a Till Management end point that will respond with a list of available tills. The tills dataset will not contain all till data due to the size. In order to get till configuration you must use the unique till IDs retrieved from the tills request.

To retrieve a list of available tills for the current authenticated user call the following end point...

https://api.procurewizard.com/v1.0/tills

The following examples(s) will make a request to retrieve a list of tills. For further technical view the tills end point technical reference here.


var http = new XMLHttpRequest();
var url = "https://api.procurewizard.com/v1.0/tills";
var token = "TOKEN";

http.open("POST", url, true);
http.setRequestHeader("Authorization", "Bearer " + token);

http.onreadystatechange = function () {
    if (http.readyState == 4 && http.status == 200) {
        console.log(http.responseText);

        var tills = JSON.parse(http.responseText);
    }
}
http.send(params);
                

Till Config

A request can be made to a specific till by using its unique ID. A request to an individual till will response with a much more comprehensive dataset. For further technical view the till end point technical reference here.

The following examples(s) will make a request to retrieve a till by its ID.


var http = new XMLHttpRequest();
var tillId = 12345;
var url = "https://api.procurewizard.com/v1.0/till/" + tillId;
var token = "TOKEN";

http.open("POST", url, true);
http.setRequestHeader("Authorization", "Bearer " + token);

http.onreadystatechange = function () {
    if (http.readyState == 4 && http.status == 200) {
        console.log(http.responseText);

        var till = JSON.parse(http.responseText);
        var name = till.data.attributes.name;
        var items = till.data.attributes.tillItems;

        console.log("Till: " + name);

        for (var i = 0; i < items.length; i++) {
            var dish = items[i].dish;

            console.log("Dish name: " + dish.name);
            console.log("Dish sale price: £" + dish.salePrice);
        }
    }
}
http.send(params);
                

End Points

For indepth technical documentation about all the specific Till Management API end points currently available please see the End Point Reference.