🧾Tickets

This page provides a description of the available API routes for managing tickets.

Before you dive into the tickets API reference, it's a great idea to check out some articles that talk about different ticket states, the math used in tickets.

Additionally, if you plan to both read and edit tickets, don't miss the article on how tickets work with users' permissions.

API methods

Get tickets

GET http://{server-address}/tickets

Returns all customers that matches query parameters. Result is of type QueryResult<Ticket>.

Query Parameters

NameTypeDescription

IsClosed

bool

Option to retrieve only closed or only opened tickets, if value is specified. Supports NData syntax.

HasCustomer

bool

Only tickets with non-empty Customer field are returned, if value is set to true. Tickets with Customer field set to null are returned, if value is set to false. Supports NData syntax.

HasDiscount

bool

Only tickets with non-zero discount amount are returned, if value is set to true. Tickets with zero discount amount are returned, if value is set to false. Supports NData syntax.

HasNegativeItem

bool

Only tickets with at least one item with negative total price are returned, if value is set to true. Tickets with positive items only are returned, if value is set to false. Supports NData syntax.

HasReturnedItem

bool

Only tickets with at least one item with type equal to negative are returned, if value is set to true. Tickets with non-negative items only are returned, if value is set to false. Supports NData syntax.

Id

string

Supports NData syntax. Allows to filter based on id property.

ExternalId

string

Supports NData syntax. Allows to filter based on externalId property.

Name

string

Supports NData syntax. Allows filter based on by name property.

DeviceName

string[]

One or multiple comma separated values can be specified. If ticket is opened, value of originDeviceName property is compared. When closed, closeInfo.deviceName property is compared. Supports NData syntax.

PurchaseType

TicketPurchaseType

Supports NData syntax. Allows to filter based on purchaseType property.

OriginDeviceName

string

Supports NData syntax. Allows to filter based on originDeviceName property.

CurrencyLabel

string

Supports NData syntax. Allows to filter based on currencyLabel property.

DiscountRate

decimal

Supports NData syntax. Allows to filter based on discountRate property.

OpenDate

DateTime

Supports NData syntax. Allows to filter based on openDate property.

CloseDate

DateTime

Supports NData syntax. Allows to filter based on closeDate property.

CloseInfoDeviceName

string

Supports NData syntax. Allows to filter based on closeInfo.deviceName property.

CloseInfoFiscalName

string

Supports NData syntax. Allows to filter based on closeInfo.fiscalName property.

CloseInfoNumber

int

Supports NData syntax. Allows to filter based on closeInfo.number property.

CloseInfoDailySalesReportNumber

int

Supports NData syntax. Allows to filter based on closeInfo.dailySalesReportNumber property.

CloseInfoFiscalMemorySerialNumber

string

Supports NData syntax. Allows to filter based on closeInfo.fiscalMemorySerialNumber property.

LocationTableName

string

Supports NData syntax. Allows to filter based on location.tableName property.

LocationZoneName

string

Supports NData syntax. Allows to filter based on location.zoneName property.

CustomerCardSerialNumber

string

Supports NData syntax. Allows to filter based on customer.cardSerialNumber property.

EmployeeUserName

string

Supports NData syntax. Allows to filter based on employee.userName property.

ItemPluCode

int

Supports NData syntax. Allows to filter based on plu.code property in items collection.

ItemPluStockName

string

Supports NData syntax. Allows to filter based on plu.stockName property in items collection.

$skip

int

Pagination property. Describing number of records to skip from beginning of result collection.

$take

int

Pagination property. Maximum count of items to be returned.

$sort

string[]

Comma separated list of property names. Please see NData syntax.

$count

bool

If set to true, response will not contain items collection. Use to get resource count, not the resources themselves.

Headers

NameTypeDescription

Authorization*

string

Authorization header with authorization token.

{
    "items":
    [
        {
            "id": "635f70e1fa3dab15784a0b45",
            "externalId": null,
            "state": "Closed",
            "type": "CashRegister",
            "name": "7",
            "openDate": "2022-10-31T06:53:20.76Z",
            "issueDate": null,
            "closeDate": "2022-10-31T07:05:43Z",
            "closeInfo":
            {
                "eKasa": null,
                "dailySalesReportNumber": 123,
                "number": 3,
                "fiscalMemorySerialNumber": "347...005",
                "fiscalName": "eKasa",
                "deviceName": "P01"
            },
            "purchaseType": "WalkIn",
            "location":
            {
                "zoneName": "Bar",
                "tableName": "B7"
            },
            "customer":
            {
                "id": null,
                "externalId": null,
                "cardSerialNumber": "customer-card-serial-number",
                "firstName": null,
                "lastName": null,
                "fullName": "John Doe",
                "gender": null,
                "birthDate": null,
                "address": null,
                "deliveryAddress": null,
                "isCompany": false,
                "company": null,
                "phone": null,
                "email": null,
                "creditRate": null,
                "meta":
                {}
            },
            "originDeviceName": "P01",
            "employee":
            {
                "name": "Mr. Waiter",
                "userName": "1",
                "featureName": null
            },
            "items":
            [
                {
                    "id": 1,
                    "externalId": null,
                    "type": "Positive",
                    "plu":
                    {
                        "name": "Cappucino",
                        "description": null,
                        "stockName": "S01",
                        "code": 9,
                        "articleCategoryLabel": "KAV",
                        "vatInfo":
                        {
                            "category": 1,
                            "rate": 20.0
                        },
                        "isDiscountAllowed": true,
                        "isPriceFixed": true,
                        "isSplittable": true,
                        "orderEndpointNames":
                        [
                            "Bar"
                        ],
                        "type": "Recipe",
                        "specialRegulation": null,
                        "isCashbackAllowed": true
                    },
                    "comment": null,
                    "unitPrice":
                    {
                        "amount": 2.083333,
                        "currencyLabel": "EUR"
                    },
                    "quantity":
                    {
                        "amount": 1.0,
                        "unit": "ks"
                    },
                    "discountRate": 0.0,
                    "referenceFiscalTicketId": null,
                    "voucherNumber": null,
                    "isQuantityFixed": false,
                    "courseNumber": null
                },
                {
                    "id": 2,
                    "externalId": null,
                    "type": "Positive",
                    "plu":
                    {
                        "name": "Espresso Doppio",
                        "description": null,
                        "stockName": "S01",
                        "code": 7,
                        "articleCategoryLabel": "KAV",
                        "vatInfo":
                        {
                            "category": 1,
                            "rate": 20.0
                        },
                        "isDiscountAllowed": true,
                        "isPriceFixed": true,
                        "isSplittable": true,
                        "orderEndpointNames":
                        [
                            "Bar"
                        ],
                        "type": "Recipe",
                        "specialRegulation": null,
                        "isCashbackAllowed": true
                    },
                    "comment": null,
                    "unitPrice":
                    {
                        "amount": 2.166667,
                        "currencyLabel": "EUR"
                    },
                    "quantity":
                    {
                        "amount": 1.0,
                        "unit": "ks"
                    },
                    "discountRate": 0.0,
                    "referenceFiscalTicketId": null,
                    "voucherNumber": null,
                    "isQuantityFixed": false,
                    "courseNumber": null
                },
                {
                    "id": 3,
                    "externalId": null,
                    "type": "Positive",
                    "plu":
                    {
                        "name": "Espresso",
                        "description": null,
                        "stockName": "S01",
                        "code": 1,
                        "articleCategoryLabel": "KAV",
                        "vatInfo":
                        {
                            "category": 1,
                            "rate": 20.0
                        },
                        "isDiscountAllowed": true,
                        "isPriceFixed": true,
                        "isSplittable": true,
                        "orderEndpointNames":
                        [
                            "Bar"
                        ],
                        "type": "Recipe",
                        "specialRegulation": null,
                        "isCashbackAllowed": true
                    },
                    "comment": null,
                    "unitPrice":
                    {
                        "amount": 1.416667,
                        "currencyLabel": "EUR"
                    },
                    "quantity":
                    {
                        "amount": 1.0,
                        "unit": "ks"
                    },
                    "discountRate": 0.0,
                    "referenceFiscalTicketId": null,
                    "voucherNumber": null,
                    "isQuantityFixed": false,
                    "courseNumber": null
                },
                {
                    "id": 4,
                    "externalId": null,
                    "type": "Positive",
                    "plu":
                    {
                        "name": "Mlieko",
                        "description": null,
                        "stockName": "S01",
                        "code": 49,
                        "articleCategoryLabel": "KAV",
                        "vatInfo":
                        {
                            "category": 1,
                            "rate": 20.0
                        },
                        "isDiscountAllowed": true,
                        "isPriceFixed": true,
                        "isSplittable": true,
                        "orderEndpointNames":
                        [
                            "Bar"
                        ],
                        "type": "Recipe",
                        "specialRegulation": null,
                        "isCashbackAllowed": true
                    },
                    "comment": null,
                    "unitPrice":
                    {
                        "amount": 0.25,
                        "currencyLabel": "EUR"
                    },
                    "quantity":
                    {
                        "amount": 1.0,
                        "unit": "ks"
                    },
                    "discountRate": 0.0,
                    "referenceFiscalTicketId": null,
                    "voucherNumber": null,
                    "isQuantityFixed": false,
                    "courseNumber": null
                }
            ],
            "payments":
            [
                {
                    "paymentType":
                    {
                        "number": 2,
                        "description": "KreditnΓ‘ karta",
                        "isChangeable": false,
                        "category": "CreditCard"
                    },
                    "amount":
                    {
                        "amount": 6.73,
                        "currencyLabel": "EUR",
                        "domesticCurrencyLabel": "EUR",
                        "exchangeRate": 1.0
                    }
                }
            ],
            "currencyLabel": "EUR",
            "discountRate": 5.0,
            "roundingAmount":
            {
                "amount": 0.0,
                "currencyLabel": "EUR"
            },
            "invoiceNumber": null,
            "paragonNumber": null,
            "isParagon": false,
            "_v": 2
        }
    ],
    "count": 1,
    "totalCount": 258773
}

Get ticket

GET http://{server-address}/tickets/{id}

Result is of type Ticket.

Query Parameters

NameTypeDescription

id*

string

Unique ticket identifier

Headers

NameTypeDescription

Authorization*

string

Authorization header with authorization token.

{
    "id": "635f70e1fa3dab15784a0b45",
    "externalId": null,
    "state": "Closed",
    "type": "CashRegister",
    "name": "7",
    "openDate": "2022-10-31T06:53:20.76Z",
    "issueDate": null,
    "closeDate": "2022-10-31T07:05:43Z",
    "closeInfo":
    {
        "eKasa": null,
        "dailySalesReportNumber": 123,
        "number": 3,
        "fiscalMemorySerialNumber": "347...005",
        "fiscalName": "eKasa",
        "deviceName": "P01"
    },
    "purchaseType": "WalkIn",
    "location":
    {
        "zoneName": "Bar",
        "tableName": "B7"
    },
    "customer":
    {
        "id": null,
        "externalId": null,
        "cardSerialNumber": "customer-card-serial-number",
        "firstName": null,
        "lastName": null,
        "fullName": "John Doe",
        "gender": null,
        "birthDate": null,
        "address": null,
        "deliveryAddress": null,
        "isCompany": false,
        "company": null,
        "phone": null,
        "email": null,
        "creditRate": null,
        "meta":
        {}
    },
    "originDeviceName": "P01",
    "employee":
    {
        "name": "Mr. Waiter",
        "userName": "1",
        "featureName": null
    },
    "items":
    [
        {
            "id": 1,
            "externalId": null,
            "type": "Positive",
            "plu":
            {
                "name": "Cappucino",
                "description": null,
                "stockName": "S01",
                "code": 9,
                "articleCategoryLabel": "KAV",
                "vatInfo":
                {
                    "category": 1,
                    "rate": 20.0
                },
                "isDiscountAllowed": true,
                "isPriceFixed": true,
                "isSplittable": true,
                "orderEndpointNames":
                [
                    "Bar"
                ],
                "type": "Recipe",
                "specialRegulation": null,
                "isCashbackAllowed": true
            },
            "comment": null,
            "unitPrice":
            {
                "amount": 2.083333,
                "currencyLabel": "EUR"
            },
            "quantity":
            {
                "amount": 1.0,
                "unit": "ks"
            },
            "discountRate": 0.0,
            "referenceFiscalTicketId": null,
            "voucherNumber": null,
            "isQuantityFixed": false,
            "courseNumber": null
        },
        {
            "id": 2,
            "externalId": null,
            "type": "Positive",
            "plu":
            {
                "name": "Espresso Doppio",
                "description": null,
                "stockName": "S01",
                "code": 7,
                "articleCategoryLabel": "KAV",
                "vatInfo":
                {
                    "category": 1,
                    "rate": 20.0
                },
                "isDiscountAllowed": true,
                "isPriceFixed": true,
                "isSplittable": true,
                "orderEndpointNames":
                [
                    "Bar"
                ],
                "type": "Recipe",
                "specialRegulation": null,
                "isCashbackAllowed": true
            },
            "comment": null,
            "unitPrice":
            {
                "amount": 2.166667,
                "currencyLabel": "EUR"
            },
            "quantity":
            {
                "amount": 1.0,
                "unit": "ks"
            },
            "discountRate": 0.0,
            "referenceFiscalTicketId": null,
            "voucherNumber": null,
            "isQuantityFixed": false,
            "courseNumber": null
        },
        {
            "id": 3,
            "externalId": null,
            "type": "Positive",
            "plu":
            {
                "name": "Espresso",
                "description": null,
                "stockName": "S01",
                "code": 1,
                "articleCategoryLabel": "KAV",
                "vatInfo":
                {
                    "category": 1,
                    "rate": 20.0
                },
                "isDiscountAllowed": true,
                "isPriceFixed": true,
                "isSplittable": true,
                "orderEndpointNames":
                [
                    "Bar"
                ],
                "type": "Recipe",
                "specialRegulation": null,
                "isCashbackAllowed": true
            },
            "comment": null,
            "unitPrice":
            {
                "amount": 1.416667,
                "currencyLabel": "EUR"
            },
            "quantity":
            {
                "amount": 1.0,
                "unit": "ks"
            },
            "discountRate": 0.0,
            "referenceFiscalTicketId": null,
            "voucherNumber": null,
            "isQuantityFixed": false,
            "courseNumber": null
        },
        {
            "id": 4,
            "externalId": null,
            "type": "Positive",
            "plu":
            {
                "name": "Mlieko",
                "description": null,
                "stockName": "S01",
                "code": 49,
                "articleCategoryLabel": "KAV",
                "vatInfo":
                {
                    "category": 1,
                    "rate": 20.0
                },
                "isDiscountAllowed": true,
                "isPriceFixed": true,
                "isSplittable": true,
                "orderEndpointNames":
                [
                    "Bar"
                ],
                "type": "Recipe",
                "specialRegulation": null,
                "isCashbackAllowed": true
            },
            "comment": null,
            "unitPrice":
            {
                "amount": 0.25,
                "currencyLabel": "EUR"
            },
            "quantity":
            {
                "amount": 1.0,
                "unit": "ks"
            },
            "discountRate": 0.0,
            "referenceFiscalTicketId": null,
            "voucherNumber": null,
            "isQuantityFixed": false,
            "courseNumber": null
        }
    ],
    "payments":
    [
        {
            "paymentType":
            {
                "number": 2,
                "description": "KreditnΓ‘ karta",
                "isChangeable": false,
                "category": "CreditCard"
            },
            "amount":
            {
                "amount": 6.73,
                "currencyLabel": "EUR",
                "domesticCurrencyLabel": "EUR",
                "exchangeRate": 1.0
            }
        }
    ],
    "currencyLabel": "EUR",
    "discountRate": 5.0,
    "roundingAmount":
    {
        "amount": 0.0,
        "currencyLabel": "EUR"
    },
    "invoiceNumber": null,
    "paragonNumber": null,
    "isParagon": false,
    "_v": 2
}

Create ticket

POST http://{server-address}/tickets

Creates new opened ticket. Result is of type Ticket.

Required rights

Please see User rights required for creating and modifying ticket section.

Required environments

Sale environment required.

Headers

NameTypeDescription

Authorization*

string

Authorization header with authorization token.

Request Body

NameTypeDescription

(body)*

Ticket

Model to create

{
    "id": "635f70e1fa3dab15784a0b45",
    "externalId": null,
    "state": "Open",
    "type": "CashRegister",
    "name": "7",
    "openDate": "2022-10-31T06:53:20.76Z",
    "issueDate": null,
    "closeDate": null,
    "closeInfo": null,
    "purchaseType": "WalkIn",
    "location":
    {
        "zoneName": "Bar",
        "tableName": "B7"
    },
    "customer":
    {
        "id": null,
        "externalId": null,
        "cardSerialNumber": "customer-card-serial-number",
        "firstName": null,
        "lastName": null,
        "fullName": "John Doe",
        "gender": null,
        "birthDate": null,
        "address": null,
        "deliveryAddress": null,
        "isCompany": false,
        "company": null,
        "phone": null,
        "email": null,
        "creditRate": null,
        "meta":
        {}
    },
    "originDeviceName": "P01",
    "employee":
    {
        "name": "Mr. Waiter",
        "userName": "1",
        "featureName": null
    },
    "items":
    [
        {
            "id": 1,
            "externalId": null,
            "type": "Positive",
            "plu":
            {
                "name": "Cappucino",
                "description": null,
                "stockName": "S01",
                "code": 9,
                "articleCategoryLabel": "KAV",
                "vatInfo":
                {
                    "category": 1,
                    "rate": 20.0
                },
                "isDiscountAllowed": true,
                "isPriceFixed": true,
                "isSplittable": true,
                "orderEndpointNames":
                [
                    "Bar"
                ],
                "type": "Recipe",
                "specialRegulation": null,
                "isCashbackAllowed": true
            },
            "comment": null,
            "unitPrice":
            {
                "amount": 2.083333,
                "currencyLabel": "EUR"
            },
            "quantity":
            {
                "amount": 1.0,
                "unit": "ks"
            },
            "discountRate": 0.0,
            "referenceFiscalTicketId": null,
            "voucherNumber": null,
            "isQuantityFixed": false,
            "courseNumber": null
        },
        {
            "id": 2,
            "externalId": null,
            "type": "Positive",
            "plu":
            {
                "name": "Espresso Doppio",
                "description": null,
                "stockName": "S01",
                "code": 7,
                "articleCategoryLabel": "KAV",
                "vatInfo":
                {
                    "category": 1,
                    "rate": 20.0
                },
                "isDiscountAllowed": true,
                "isPriceFixed": true,
                "isSplittable": true,
                "orderEndpointNames":
                [
                    "Bar"
                ],
                "type": "Recipe",
                "specialRegulation": null,
                "isCashbackAllowed": true
            },
            "comment": null,
            "unitPrice":
            {
                "amount": 2.166667,
                "currencyLabel": "EUR"
            },
            "quantity":
            {
                "amount": 1.0,
                "unit": "ks"
            },
            "discountRate": 0.0,
            "referenceFiscalTicketId": null,
            "voucherNumber": null,
            "isQuantityFixed": false,
            "courseNumber": null
        },
        {
            "id": 3,
            "externalId": null,
            "type": "Positive",
            "plu":
            {
                "name": "Espresso",
                "description": null,
                "stockName": "S01",
                "code": 1,
                "articleCategoryLabel": "KAV",
                "vatInfo":
                {
                    "category": 1,
                    "rate": 20.0
                },
                "isDiscountAllowed": true,
                "isPriceFixed": true,
                "isSplittable": true,
                "orderEndpointNames":
                [
                    "Bar"
                ],
                "type": "Recipe",
                "specialRegulation": null,
                "isCashbackAllowed": true
            },
            "comment": null,
            "unitPrice":
            {
                "amount": 1.416667,
                "currencyLabel": "EUR"
            },
            "quantity":
            {
                "amount": 1.0,
                "unit": "ks"
            },
            "discountRate": 0.0,
            "referenceFiscalTicketId": null,
            "voucherNumber": null,
            "isQuantityFixed": false,
            "courseNumber": null
        },
        {
            "id": 4,
            "externalId": null,
            "type": "Positive",
            "plu":
            {
                "name": "Mlieko",
                "description": null,
                "stockName": "S01",
                "code": 49,
                "articleCategoryLabel": "KAV",
                "vatInfo":
                {
                    "category": 1,
                    "rate": 20.0
                },
                "isDiscountAllowed": true,
                "isPriceFixed": true,
                "isSplittable": true,
                "orderEndpointNames":
                [
                    "Bar"
                ],
                "type": "Recipe",
                "specialRegulation": null,
                "isCashbackAllowed": true
            },
            "comment": null,
            "unitPrice":
            {
                "amount": 0.25,
                "currencyLabel": "EUR"
            },
            "quantity":
            {
                "amount": 1.0,
                "unit": "ks"
            },
            "discountRate": 0.0,
            "referenceFiscalTicketId": null,
            "voucherNumber": null,
            "isQuantityFixed": false,
            "courseNumber": null
        }
    ],
    "payments": [],
    "currencyLabel": "EUR",
    "discountRate": 5.0,
    "roundingAmount": null,
    "invoiceNumber": null,
    "paragonNumber": null,
    "isParagon": false,
    "_v": 1
}

Create or update ticket

PUT http://{server-address}/tickets/{id}

Creates new or updates existing opened ticket. Attempt to update closed ticket will result in HTTP Status 403 (Forbidden). Result is of type Ticket.

Required rights

Please see User rights required for creating and modifying ticket section.

Required environments

Sale environment required.

Path Parameters

NameTypeDescription

id*

string

Unique ticket identifier

Headers

NameTypeDescription

Authorization*

string

Authorization header with authorization token.

Request Body

NameTypeDescription

(body)*

Ticket

Model to create or update.

{
    "id": "635f70e1fa3dab15784a0b45",
    "externalId": null,
    "state": "Open",
    "type": "CashRegister",
    "name": "7",
    "openDate": "2022-10-31T06:53:20.76Z",
    "issueDate": null,
    "closeDate": null,
    "closeInfo": null,
    "purchaseType": "WalkIn",
    "location":
    {
        "zoneName": "Bar",
        "tableName": "B7"
    },
    "customer":
    {
        "id": null,
        "externalId": null,
        "cardSerialNumber": "customer-card-serial-number",
        "firstName": null,
        "lastName": null,
        "fullName": "John Doe",
        "gender": null,
        "birthDate": null,
        "address": null,
        "deliveryAddress": null,
        "isCompany": false,
        "company": null,
        "phone": null,
        "email": null,
        "creditRate": null,
        "meta":
        {}
    },
    "originDeviceName": "P01",
    "employee":
    {
        "name": "Mr. Waiter",
        "userName": "1",
        "featureName": null
    },
    "items":
    [
        {
            "id": 1,
            "externalId": null,
            "type": "Positive",
            "plu":
            {
                "name": "Cappucino",
                "description": null,
                "stockName": "S01",
                "code": 9,
                "articleCategoryLabel": "KAV",
                "vatInfo":
                {
                    "category": 1,
                    "rate": 20.0
                },
                "isDiscountAllowed": true,
                "isPriceFixed": true,
                "isSplittable": true,
                "orderEndpointNames":
                [
                    "Bar"
                ],
                "type": "Recipe",
                "specialRegulation": null,
                "isCashbackAllowed": true
            },
            "comment": null,
            "unitPrice":
            {
                "amount": 2.083333,
                "currencyLabel": "EUR"
            },
            "quantity":
            {
                "amount": 1.0,
                "unit": "ks"
            },
            "discountRate": 0.0,
            "referenceFiscalTicketId": null,
            "voucherNumber": null,
            "isQuantityFixed": false,
            "courseNumber": null
        },
        {
            "id": 2,
            "externalId": null,
            "type": "Positive",
            "plu":
            {
                "name": "Espresso Doppio",
                "description": null,
                "stockName": "S01",
                "code": 7,
                "articleCategoryLabel": "KAV",
                "vatInfo":
                {
                    "category": 1,
                    "rate": 20.0
                },
                "isDiscountAllowed": true,
                "isPriceFixed": true,
                "isSplittable": true,