Data models

This page contains data models that are utilized across multiple resources.

The property type convention in this context follows the notation of C# (.NET). The presence of a quotation mark (?) indicates the nullability of a value. For example, a string property cannot be null, whereas a property of type string? can have a null value.

Address

Property nameTypeDescription

street

string?

Street name, office number and/or building number.

city

string?

City

zipCode

string?

Postal code

country

string?

Country

ApiKey

Property nameTypeDescription

id

string

Unique identifier.

clientId

string

Public API key.

clientSecret

string

API secret key, used to hash request payload.

isActive

bool

Indicates whether given API key can be used.

createdAt

DateTime

Date and time, when the API key was created.

name

string

Something users will recognize and trust.

description

string?

This is displayed to all potential users of your application.

userName

string

User identifier associated with given API key.

deviceName

string

Device name associated with given API key.

permissions

string[]

Collection of permissions associated with given API key.

_v

int

Resource version. This property is tracked and updated by API.

ArticleCategory

Each product or service within the PORTOS system is linked to a specific category, which is referred to as the article category. This categorization helps in organizing and classifying items, allowing for efficient management and navigation within the system.

Property nameTypeDescription

label

string

Unique abbreviation of article category description, which may contain up to 3 characters.

description

string

Full name (descripition) of article category, visible for cashiers.

customerDescription

string?

Full description for customer (used mostly in menus)

courseNumber

int?

Optional course number that will be initially applied to product associated with given article category.

color

string?

Color in RGB format, including leading # symbol. E.g. #fff or #aabbcc.

sortHint

int?

Optional sort hint (to order article categories in cash register application)

tags

string[]?

Optional collection of tags (used in statistics).

ordering

Ordering settings for article category.

_v

int

Resource version. This property is tracked and updated by API.

SortHint property is used to achieve user defined article categories sorting in cash register application(s). This optional property is of nullable integer type. Article categories with lowest value are displayed first, null have lowest priority. Categories with same SortHint value are sorted alphabetically.

Example:

SortHintDescription

0

Beers

0

Drinks

1

Pizza

2

Wine

null

Beverages

null

Specials

ArticleCategoryOrderingItem

Settings for article category (ArticleCategory) ordering related to specific OrderOrigin.

Property nameTypeDescription

orderOrigin

Order origin associated with this item.

enabled

bool

Determines whether given type of order origin is enabled for associated Article category.

weeklySchedule

Gets ordering weekly schedule. If value is null or empty collection, schedule is not limited and article category is available 24/7. Otherwise, schedule is specified by items in collection. Empty collection means no time slots restrictions.

PluPackaging

AuthResult

NameTypeDescription

tokenId

string

The JWT token using for authenticating requests.

refreshToken

string

The refresh token.

user

The user profile consists of information about the user themselves and the settings of the device they are logged onto. Depending on the device type, the structure of settings and preferences may vary.

BackOfficeDeviceSettings

No properties are currently defined. Settings are managed directly in PORTOS BackOffice application.

BankAccount

Property nameTypeDescription

bankCountry

string?

The country where the bank associated with the account is located. It represents the jurisdiction and regulatory framework under which the bank operates.

bankName

string?

The name of the bank where the account is held.

iban

string?

International Bank Account Number. A standardized numerical code used to identify a specific bank account internationally.

number

string?

Bank account number in older (non international) format.

swift

string?

SWIFT code (also known as BIC - Bank Identifier Code) is a unique identification code assigned to each bank globally.

CashRegisterDeviceSettings

NameTypeDescription

MaxQuantity

decimal?

Maximal quantity user can specify in single ticket item.

DefaultFiscalName

string?

Determines name of fiscal device associated with cash register. Usage of different fiscal device may be conditioned by rights of authorized user.

OpenedPrices

bool

Determines whether user can specify unit price of ticket item different than product's unit price.

NoticeOnNegativeSale

bool

Determines whether insufficient PLU stock quantity would be indicated to authorized user.

VisibleQuantities

bool

Determines whether PLU stock quantities can be visible for authorized user. Otherwise, application must not display such information.

DefaultOrderEndpointName

string?

Determines name of order endpoint device associated with cash register. Usage of different order endpoint may be conditioned by rights of authorized user.

DefaultStockName

string?

Determines name of stock associated with cash register. Usage of different stock may be conditioned by rights of authorized user.

All other settings are managed directly in the PORTOS Cash register application (PORTOS Pokladลˆa).

CashTransfer

Property nameTypeDescription

amount

Cash transfer operation amount. Positive for deposit or negative for withdrawal.

date

DateTime

Date and time of cash transfer operation

employee

Employee who performed cash transfer operation.

Company

NameTypeDescription

id

string

Unique company identifier. If not specified, ID is generated by API.

isActive

bool

Gets whether this company is active and can be used (e.g. paired with stock transfers).

name

string

Company name.

crn

string

Company registration number (known as IฤŒO, in Slovak Republic)

vatId

string

VAT ID (known as IฤŒ DPH, in Slovak Republic)

taxId

string

TAX ID (known as DIฤŒ, in Slovak Republic)

isTaxPayer

bool

Gets whether this company is tax payer.

register

string?

The company's entry in the business register

dueDays

int?

The number of days given to a company for payment after issuing an invoice.

type

The company categorization.

discountRate

decimal

Discount rate percentage, with value between 0 and 100, with precision up to two decimal places, that is automatically assigned to invoice associated with given company.

isDefault

bool

When true, this record represents merchant (owner of cash register system).

addresses

The addresses associated with company.

bankAccounts

The bank accounts associated with company.

contacts

The contacts associated with company.

_v

int

Resource version. This property is tracked and updated by API.

CompanyType

Enumeration with the following values:

ValueDescription

unknown

Type used when company is not exclusively supplier nor purchaser.

supplier

Company that is responsible for producing or delivering the products.

purchaser

Also known as a buyer, is a company acquires goods or services from a merchant.

CompanyAddress

Property nameTypeDescription

street

string?

Street name, office number and/or building number.

city

string?

City

zipCode

string?

Postal code

country

string?

Country

type

Specifies purpose of address.

CompanyAddressType

Enumeration with the following values:

ValueDescription

unknown

The specific purpose or nature of the address is not known or specified. It might be used when the address information is incomplete or when there is a lack of information about the purpose of the address.

office

An office address refers to the physical location where a company or organization conducts its business operations.

billing

The address to which invoices, bills, or payment requests are sent.

shipping

Tthe destination address where goods or products are to be delivered.

other

Any address that does not fit into the predefined types mentioned above.

CompanyBankAccount

Property nameTypeDescription

bankCountry

string?

The country where the bank associated with the account is located. It represents the jurisdiction and regulatory framework under which the bank operates.

bankName

string?

The name of the bank where the account is held.

iban

string?

International Bank Account Number. A standardized numerical code used to identify a specific bank account internationally.

number

string?

Bank account number in older (non international) format.

swift

string?

SWIFT code (also known as BIC - Bank Identifier Code) is a unique identification code assigned to each bank globally.

isDefault

bool

Indicates whether the bank account is set as the primary account for company.

Contact

Property nameTypeDescription

fax

string?

Fax number associated with a person.

phone

string?

Telephone number associated with a person's landline or fixed-line phone.

mobile

string?

Telephone number associated with a person's mobile device.

email

string?

Person's email address.

CompanyContact

Property nameTypeDescription

name

string?

Given or first name of an individual.

surname

string?

The inherited or family name of an individual.

email

string?

Person's email address.

mobile

string?

Telephone number associated with a person's mobile device.

phone

string?

Telephone number associated with a person's landline or fixed-line phone.

fax

string?

Fax number associated with a person.

isDefault

string?

Indicates whether a particular contact is primary contact for associated company.

note

string?

Helds any relevant additional information or comments about the contact. It can be used to include any specific details or instructions related to the contact or communication with the person.

CountQueryResult

This model is returned for all GET collection routes when $count query parameter is set to true. Opposing to QueryResult, This model is used to retrieve only count of elements, not elements themself.

Property nameTypeDescription

count

int

Number of elements matching the query.

totalCount

int

Number of total resources available. Value may differ from count, when pagination or filtering is applied.

Currency

Property nameTypeDescription

label

string

The three-letter currency code ISO4217 standard.

sign

string?

Visual representation used to denote a specific currency in written or printed form. For example, the symbol for the United States Dollar is $, while the Euro is represented by โ‚ฌ.

isDomestic

bool

Indicates whether a currency is considered the domestic currency of a particular country or region.

exchangeRate

decimal

Represents the rate at which one currency can be exchanged for another. Domestic currency's exchange rate is equal to 1.

description

string

Currency's full name.

_v

int

Resource version. This property is tracked and updated by API.

Customer

NameTypeDescription

id

string

Unique customer identifier. If not specified, ID is generated by API.

externalId

string?

Unique identifier provided by external system.

isActive

bool

Gets whether this customer is active and can be used (e.g. paired with tickets).

status

string

Customer state. One of following: valid, notYetValid, expired.

activationTime

DateTime?

Date and time since customer is active.

expirationTime

DateTime?

Date and time until customer is acive.

firstName

string?

First name.

lastName

string?

Second name.

fullName

string?

Full or display name (if not provided, combination of firstName and lastName is used.

gender

string?

male, female or null for other/unspecified.

birthDate

DateTime?

Birth date.

email

string?

Customer email.

phone

string?

Phone number.

isCompany

bool

Specifies wheter customer is associated with company.

company

Information about company associated with customer.

address

Customer address.

deliveryAddress

Customer delivery address.

credit

Cash balance on customer account.

creditTransaction

History of financial operations that affects credit.

cards

Collection of cards associated with customer.

creditRate

decimal

Cashback coeficient. If set to 0.01, for every spent unit of currency, one cent is returned as cash back to credit balance. Must be positive number or zero.

discountRate

decimal

Discount rate with value between 0 and 100. Up to 2 decimal places.

note

string?

Optional note.

meta

Object that holds additional data (usually supplied by external system).

_v

int

Resource version. This property is tracked and updated by API.

CustomerAddress

NameTypeDescription

street

string

Street name and building number

city

string

City

postalCode

string?

Postal code

country

string

Country

coordinates

GPS coordinates

note

string?

Note related to customer address

CustomerCard

NameTypeDescription

externalId

string?

isActive

bool

Specifies whether this card is active and can be used.

isVirtual

bool

Specifies whether this card has physical representation.

serialNumber

string

Unique serial number. This value is unique across all customers stored in system.

processor

string

P for physical cards, G as general for other card types.

status

Card status.

statusTime

DateTime?

Date and time of last status change.

statusReason

string?

Status change reason.

activationTime

DateTime

The date and time from which the card will be valid.

expirationTime

DateTime?

The date and time until which the card will be valid.

note

string?

Optional note related to this customer card.

meta

Object that holds additional data (usually supplied by external system).

_v

int

Resource version. This property is tracked and updated by API.

CustomerCardStatus

Enumeration with the following values:

  • NotIssued: the card is created in system, but not issued yet.

  • IssueFailed: card issuing failed.

  • IssueCanceled: card issuing has been canceled.

  • IssueSkipped: card issuing has been skipped, as one or more conditions were not met.

  • ReissueRequested: a reissue was requested.

  • Valid: card is issued and valid (active already and not yet expired)

  • NotYetValid: Card is issued but not yet valid (activationTime has not been reached yet).

  • Expired: card is expired (expirationTime has been reached).

  • Blocked: card is blocked (e.g. has been lost or compromised)

  • DisposeRequested: card disposal has been requested.

  • Disposed: card has been disposed.

CustomerCompany

NameTypeDescription

name

string?

Company name.

crn

string?

Company registration number (IฤŒO).

vatId

string?

Company VAT identifier (IฤŒ DPH)

taxId

string?

Company TAX identifier (DIฤŒ)

CustomerCreditTransaction

NameTypeDescription

id

string

Unique transaction identifier.

externalId

string?

External identifier supplied by client-side or external system.

sequenceNumber

int

Transactions sequence number. Value is supplied by API.

amount

Transaction amount. Can be positive or negative number.

type

Type of transaction.

endingCreditBalanceAmount

Resulting credit balance after transaction.

creationTime

DateTime

Date and time of transaction.

note

string?

Optional note related to transaction.

meta

Object that holds additional data (usually supplied by external system).

CustomerCreditTransactionType

Enumeration with the following values:

  • adjustment: credit consumption or cash-back

  • deposit: credit top up

  • withdrawal: funds withdrawal

  • correction: manual balance correction

  • other: none of above

DailySalesReport

NameTypeDescription

id

string

Unique identifier. If not specified, ID is generated by API.

fiscalName

bool

Name of fiscal device associated with given daily sales report.

number

bool

Daily sales report sequence number, unique within specific fiscalName an fiscalMemorySerialNumber.

fiscalMemorySerialNumber

string

Serial number of fiscal memory inserted in fiscal device.

openDate

DateTime

Date and time of daily sales report creation (related to first ticket closure or first cash transfer since previous daily sales report).

closeDate

DateTime?

Date and time of daily sales report closure.

currencyLabel

string

Label of currency, in which all money information is stored for this daily sales report

cashTransfers

Collection of cash transfers.

fiscalInfo

Information determined during fiscal daily sales report closing procedure. Is null when state is open or manuallyClosed. Is not null, when state is closed.

state

_v

int

Resource version. This property is tracked and updated by API.

DailySalesReportCopyContext

This model is used to specify the daily sales report for which a copy is going to be printed. The daily sales report can be identified by either its number (dailySalesReportNumber property) or the closing date of the report (dailySalesReportDate properties).

NameTypeDescription

dailySalesReportNumber

int?

Daily sales report number.

dailySalesReportDate

DateTime?

Daily sales report close date.

DailySalesReportFiscalInfo

Property nameTypeDescription

ticketsCount

int

Number of tickets with cashRegister type associated with given daily sales report.

ticketsAmountIncludingVat

Total amount (including VAT) of all associated tickets with cashRegister type.

invalidTicketsCount

int

Number of tickets with invalid type associated with given daily sales report.

invalidTicketsAmountIncludingVat

Total amount (including VAT) of all associated tickets with invalid type.

invoiceTicketsCount

int

Number of tickets with invoice type associated with given daily sales report.

invoiceTicketsAmountIncludingVat

Total amount (including VAT) of all associated tickets with invoice type.

positiveTicketItemsCount

int

Number of ticket items with positive type in associated tickets.

positiveTicketItemsAmountIncludingVat

Total amount of ticket items with positive type in associated tickets.

returnedContainerTicketItemsCount

int

Number of ticket items with returnedContainer type in associated tickets.

returnedContainerTicketItemsAmountIncludingVat

Total amount of ticket items with returnedContainer type in associated tickets.

returnedTicketItemsCount

int

Number of ticket items with returned type in associated tickets.

returnedTicketItemsAmountIncludingVat

Total amount of ticket items with returned type in associated tickets.

correctionTicketItemsCount

int

Number of ticket items with correction type in associated tickets.

correctionTicketItemsAmountIncludingVat

Total amount of ticket items with correction type in associated tickets.

discountTicketItemsCount

int

Number of ticket items with discount type in associated tickets.

discountTicketItemsAmountIncludingVat

Total amount of ticket items with discount type in associated tickets.

advanceTicketItemsCount

int

Number of ticket items with advance type in associated tickets.

advanceTicketItemsAmountIncludingVat

Total amount of ticket items with advance type in associated tickets.

creditTicketItemsCount

int

Number of ticket items with credit type in associated tickets.

creditTicketItemsAmountIncludingVat

Total amount of ticket items with credit type in associated tickets.

voucherTicketItemsCount

int

Number of ticket items with voucher in associated tickets.

voucherTicketItemsAmountIncludingVat

Total amount of ticket items with voucher type in associated tickets.

vatIncomes

Total turnovers grouped by VAT category and rate.

grandTotalAmountIncludingVat

Cumulative total turnover across all daily sales reports for given fiscal device and fical memory serial number.

roundingDown

Sum of roundings towards zero.

roundingUp

Sum of roundings away from zero.

DailySalesReportStatus

Enumeration with the following values:

ValueDescription

open

Daily sales report is opened. Additional tickets and cash transfers can be associated with given daily sales report.

manuallyClosed

Associated daily sales report is marked as closed (value of fiscalInfo property may remain null)

closed

Daily sales report is closed. fiscalInfo property contains summary information containing all realated tickets and cash transfers.

DayOfWeek

Specifies the day of the week. Enumeration with the following values:

ValueDescription

Sunday

Indicates Sunday.

Monday

Indicates Monday.

Tuesday

Indicates Tuesday.

Wednesday

Indicates Wednesday.

Thursday

Indicates Thursday.

Friday

Indicates Friday.

Saturday

Indicates Saturday.

Device

Property nameTypeDescription

name

string

Unique device name.

isActive

bool

Indicates whether a device is active and can be associated with user session.

envName

string

Name of the device environment.

description

string

Human readable device description (e.g. "Cash register 1").

roles

string[]

Collection of user rights that are initially associated to user, when user is given access to this device. Roles collection can be adjusted for every user.

preferences

object

Object containing user-specific preferences for this device. Reserved for future use.

settings

An object with string properties, that is used to store device settings. The value of each property within the object corresponds to a specific type based on the envName (device environment name).

_v

int

Resource version. This property is tracked and updated by API.

EmailTicketFormOptions

NameTypeDescription

To

string

The e-mail address of the recipient (customer) to whom the e-receipt is sent.

FooterText

string

The optional text that is displayed on end of receipt. Only non-control characters are allowed (and CR + LF).

Fiscal

Property nameTypeDescription

name

string

Unique fiscal device name.

isActive

bool

Indicates whether given fiscal device can be used in ticket closing procedure.

type

string

Type of hardware device.

version

string?

Reserved for future use.

dkp

string

Unique cash register code (also known as DKP in Slovak republic).

settings

object

Settings related to given fiscal device. Object may vary based on type property.

_v

int

Resource version. This property is tracked and updated by API.

ForeignPrice

Similiar to Price, however this model can hold information about non-domestic currency.

Property nameTypeDescription

amount

decimal

Up to 2 decimal places.

currencyLabel

string

3-characters long foreign currency label (ISO 4217).

domesticCurrencyLabel

string

3-characters long domestic currency label (ISO 4217).

exchangeRate

decimal

Conversion rate between foreign and domestic currency. When currency is equal to domestic currency, exchange rate is equal to 1.

GeoCoordinates

Represents GPS coordinates.

Property nameTypeDescription

longitude

decimal

Value in range of -180 to 180.

latitude

decimal

Value in range of -90 to 90.

IntervalSalesReportContext

This model is used to specify the interval of daily sales reports, for which a interval sales report is going to be printed. The interval can be defined either by specifying a range of daily sales report numbers (dsrNumberFrom and dsrNumberTo properties) or by indicating the closing dates of the daily sales reports (dsrDateFrom and dsrDateTo properties).

NameTypeDescription

dsrDateFrom

DateTime?

Close date of first daily sales report in selected interval.

dsrDateTo

DateTime?

Close date of last daily sales report in selected interval.

dsrNumberFrom

int?

Number of first daily sales report in selected interval.

dsrNumberTo

int?

Number of last daily sales report in selected interval.

License

NameTypeDescription

shopId

int

Unique identifier of venue, issued by PORTOS reseller.

activationTime

DateTime

Activation date and time.

expirationTime

DateTime

Expiration date and time.

verificationTime

DateTime?

Date and time of last verification.

verificationInterval

TimeSpan

Verification interval.

features

Collection of features associated with license.

remainingDays

int

Number of remaining days before license expiration.

isExpired

bool

Indicates whether license is expired.

LicenseFeature

NameTypeDescription

productSku

string

The feature identifier.

rawValue

string?

Value associated with feature.

name

string

Feature display name.

activationTime

DateTime

Activation date and time.

expirationTime

DateTime?

Expiration date and time.

MeasureQuantity

Unlike the Quantity type, this model has a known unit of measure.

Property nameTypeDescription

amount

decimal

Quantity amount.

unit

Measurement unit.

MeasureUnit

Enumeration with the following values:

ValueDescriptionDimension

g

Gram

Weight (Mass)

dag

Decagram

Weight (Mass)

kg

Kilogram

Weight (Mass)

ml

Milliliter

Volume

dl

Deciliter

Volume

l

Liter

Volume

mm

Millimeter

Length

cm

Centimeter

Length

dm

Decimeter

Length

m

Meter

Length

Meta

Meta is an object with dynamic properties of string type. Can be parsed to Dictionary<string, string> instance.

Is used to hold additional data, usually supplied by external system.

Modifier

NameTypeDescription

id

string

Unique identifier

name

string

Name of modifier. Eg. "Steak doneness"

displayName

string?

Name to be displayed for customer. Eg. "Pick steak doneness". If not provided, name is displayed in digital menu.

minimumSelectedOptionsCount

int

Minimum count of selected unique options. This value is greater than zero if modifier is required.

maximumSelectedOptionsCount

int?

Maximum count of selected unique options. If set to null, then options count is unlimited.

maximumSelectedOptionsTotalQuantity

int

The maximum number of all selected options in total that the customer can choose.

options

Options collection.

ModifierOption

NameTypeDescription

id

string

Option identifier, unique within associated modifier options collection.

name

string

Modifier option name, e.g. "medium rare".

unitPrice

Optional unit price. If not specified, price of referenced product is used. Otherwise, modifier does not modify the price of associated ticket item.

isUnitPriceIncludingVat

bool

Specifies whether unitPrice includes VAT.

pluId

Optional PLU reference.

defaultSelectedQuantity

int

Default selected quantity.

maximumSelectedQuantity

int?

Maximum number of selections for this option. If set to null, then quantity is not limited.

NonfiscalRecordContext

NameTypeDescription

recordBody

string

Body of nonfiscal record.

NumberingPeriodUnit

Enumeration with the following values:

ValueDescription

day

Day

month

Month

year

year

Order

NameTypeDescription

id

string

Unique identifier

number

int

Sequence number generated by API. This number may serve as pickup code for customer.

deviceName

string

Name of device, from which the order processing request has been invoked.

user

User that invoked order processing request.

ticket

Information about ticket that is associated with given order.

items

Order items collection.

OrderEndpoint

NameTypeDescription

name

string

Unique name.

isActive

bool

Indicates whether order endpoint is used to accept orders.

address

string?

Order endpoint address (e.g. location of network printer).

type

string

Type of order endpoint (e.g. printer manufacturer and/or printer model, or kitchen tablet application/driver name).

settings

object

Based on type, properties of settings object may vary.

OrderItem

NameTypeDescription

id

int?

Unique item identifier within order.

plu

Information related to product.

quantity

Ordered product quantity.

comment

string?

Optional comment/note from cashier.

courseNumber

int?

This optional property serves as an indicator for the sequential delivery of food to the table. It allows for the organization and coordination of food service by assigning a specific order or sequence to each dish. This number provides valuable information to ensure that dishes are delivered to the table in the desired order, optimizing the dining experience for the customers.

endpoints

Contains collection of state changes related to each oder endpoint this order is being processed on.

OrderItemEndpoint

NameTypeDescription

name

string

Name of associated order endpoint device.

statusChanges

History of order state changes related to associated order endpoint.

orderItemStatus

Current status of order related to associated order endpoint.

isProcessed

bool

Indicates whether the order is already processed on given order endpoint.

isProcessable

bool

Indiates whether the order is processable on given order endpoint (is not in terminal state).

OrderItemEndpointStatusChange

NameTypeDescription

status

Status of order at the time of change.

date

DateTime

Date and time of status change.

OrderItemPlu

NameTypeDescription

name

string

Name of product (PLU).

code

int

Product code (unique within given stock)

stockName

string

Name of the stock to which the product is associated

OrderOrigin

Describes the origin of the order.

ValueDescription

cashier

Order is taken in store by cashier (personnel)

online

Order is placed online by customer (e.g. e-shop, delivery platform, etc.)

OrderTicketInfo

NameTypeDescription

id

string

Ticket identifier.

name

string

Ticket name.

location

Ticket location.

purchaseType

Ticket purchase type.

customer

Information about customer associated with ticket.

version

int

Version of ticket at time of order creation.

OrderStatus

These are the various states that an order can go through during its processing and fulfillment. Each state provides valuable insights into the current status of the order, ensuring transparency and effective communication throughout the process. Please find below the detailed descriptions for each order state:

ValueDescription

unknown

The default state. It indicates that the order processing status is currently unknown and/or has not been initiated.

created

The initial state when the order is created, but no further processing has taken place. At this stage, the order is in the system, awaiting further actions.

sent

The order has been successfully sent to the designated order endpoint for processing.

delivered

The order has been successfully delivered to the designated order endpoint. However, at this point, the endpoint may either accept or refuse the order.

refused

The order was refused by the order endpoint, indicating that the order endpoint has declined to accept and process the order. This refusal could be caused by various reasons, such as a shortage of food supplies or a failure of the coffee machine, so it is unable to fulfill the order at that specific moment.

failed

There was an attempt to send or deliver the order to the order endpoint, but it could not be completed due to an error. This could be due to technical issues or other factors preventing successful delivery.

accepted

The order was successfully delivered to the order endpoint, displayed, and accepted by the recipient (e.g., a chef received the order and acknowledged it). This state indicates that the recipient is ready to proceed with the fulfillment of the order.

processSkipped

The processing of the order was intentionally skipped. This could occur when the order endpoint device was marked as inactive during the processing attempt.

processed

The order has been marked as completed by the order endpoint, signifying the successful execution of all necessary processing steps, and confirming that the order is now fulfilled and the goods are ready for pickup.

Please see the state transition diagram below. The arrows between the states indicate the allowed transitions that the order can take.

Order is processable if state is created or failed.

The order reaches its final state when it is either refused, processed or processSkipped and no further state transitions are permitted beyond this point.

OrderStatusContext

NameTypeDescription

status

Desired order status. Please note that only specific order staus transitions are allowed. See OrderStatus for more information.

PaymentType

Property nameTypeDescription

number

int

Unique payment type number. Value must be in range from 1 to 10.

category

Category of payment type. Based on payment type category, different ticket rounding rules may apply.

isActive

bool

Gets or sets whether payment type can be used.

description

string

Payment type description (name).

isChangeable

bool

Determines whether it is possible to issue from the payment when the amount to pay is overpaid.

Note: not used in current version.

PaymentTypeCategory

Enumeration with the following values:

ValueDescription

cash

Cash payment type.

creditCard

Cashless payment type.

other

Other, non-cash payment type.

PDADeviceSettings

NameTypeIs requiredDescription

MaxQuantity

decimal

Maximal quantity user can specify in single ticket item.

DefaultFiscalName

string

Determines name of fiscal device associated with cash register. Usage of different fiscal device may be conditioned by rights of authorized user.

OpenedPrices

bool

Determines whether user can specify unit price of ticket item different than product's unit price.

SecretCustomersCardId

bool

Determines mode of customer account lookup. If set to false, user can select customer accounts from list. If set to true, user can only scan bar code/QR code with device builtin camera.

DefaultOrderEndpointName

string

Determines name of order endpoint device associated with cash register. Usage of different order endpoint may be conditioned by rights of authorized user.

DefaultStockName

string

Determines name of stock associated with cash register. Usage of different stock may be conditioned by rights of authorized user.

All other settings are managed directly in the application (PORTOS Mobilnรฝ ฤaลกnรญk).

Plu

Property nameTypeDescription

id

string

Unique identifier.

stockName

string

Name of associated Stock.

code

int

Product's PLU code. Unique within associated Stock. Therefore, a combination of the code and stockName can be used to uniquely identify the PLU.

codes

string[]

Collection of alternative product codes, barcodes or external system identifiers.

name

string

Product name. E.g. "Coffee".

description

string?

Optional full product name. If this value is provided, it is used as display name instead of name property. E.g. "Signature Brewed Coffee Blend".

customerDescription

string?

Full description for customer, containing one or more sentences. Used mostly in menus. E.g. "Indulge in the rich and aromatic essence of our meticulously brewed coffee, a harmonious blend of carefully selected beans for a truly invigorating experience.".

retailPrice

The unit price excluding VAT. Must be positive or zero for container plu type.

vatCategory

int

The category of associated VAT rate.

articleCategoryLabel

string

The label of associated article category.

orderEndpointNames

string[]

The collection of order endpoint names. When product is ordered by customer, order is sent to all order endpoints listed in this collection that are marked as active.

courseNumber

int?

Specifies default course number for given product. Used to determine the order of food and drinks brought to the table.

unit

string

Up to three characters long measurement unit.

type

Type of product.

stockQuantity

This field indicates the total count of physical units currently available in inventory. Exclusively for PLUs categorized as material type.

minStockQuantity

Minimal stock quantity treshold. Defines the minimum acceptable quantity of physical units. When the available inventory falls below this threshold, users can receive notifications to take necessary actions. Exclusively for PLUs categorized as material type.

stockValue

The stock value excluding VAT. Exclusively for PLUs categorized as material type.

lastPurchasePrice

Last purchase price excluding VAT. Exclusively for PLUs categorized as material type. This value is automatically updated by server after each product purchase (based on created StockTransfer).

receipt

Items of PLU recipe. Exclusively for PLUs categorized as Recipe type.

pluPriceHistory

Collection that tracks retail price changes.

color

string?

The RGB color code associated with this PLU, which is displayed within the cash register application. This feature aids in convenient visual identification, facilitating efficient lookups.

isSplittable

bool

If set to false, this PLU can only be sold in whole integer quantities, without the option for fractional or partial units.

isDiscountAllowed

bool

Determines whether discount can be placed on ticket item associated with this PLU. Must be false for container plu type.

isActive

bool

Determines whether this PLU is accessible in cash register. If given product or service is not available, associated PLU can be marked as inactive. This is alternative approach to PLU deletion.

isPriceFixed

bool

Determines whether unit price for ticket items associated with this PLU can be adjusted. Howewer, price change must be allowed in device settings as well.

isCashbackAllowed

bool

Determines whether cashback can be provided for purchase of this PLU. When enabled, customers may receive cashback as part of their purchase. The purchase must be associated with Customer with positive, non-zero creditRate (cashback rate).

isFavorite

bool

This attribute indicates whether the given product is registered as a favorite, enabling easier retrieval within the cash register system.

sortHint

int?

This optional attribute serves as a hint for sorting articles within the cash register application, aiding in the organization and arrangement of items.

specialRegulation

This attribute signifies the justification for applying a zero VAT rate to this PLU, if the rationale matches with one of the reasons defined in TaxFreeReason enumeration. null otherwise.

packaging

Information related to PLU packaging.

images

Optional PLU images.

purchaseTypes

Purchase types settings for this product.

ordering

Information related to PLU ordering, based on OrderOrigin.

modifiers

Collection of Modifier references associated with given PLU.

_v

int

Resource version. This property is tracked and updated by API.

PluId

Plu can be uniquely identified using either id or combination of code and stockName.

Property nameTypeDescription

code

int

Plu's code property.

stockName

string

Plu's stockName property.

PluImage

Property nameTypeDescription

url

string

String which identifies one or more image candidate strings, separated using commas (,) each specifying image resources to use under given circumstances. Each image candidate string contains an image URL and an optional width or pixel density descriptor that indicates the conditions under which that candidate should be used. Please refer to https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/srcset for more information.

alt

string?

Optional field. Provides fallback (alternate) text to display when the image is not loaded. Please refer to https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/alt for more information.

PluModifier

Property nameTypeDescription

id

string

Unique modifier identifier.

PluOrderingItem

Settings for product (PLU) ordering related to specific OrderOrigin.

Property nameTypeDescription

orderOrigin

Order origin associated with this item.

enabled

bool

Determines whether given type of order origin is enabled for associated PLU.

paused

bool

Determines whether given type of order origin is temporarily paused (e.g. due to high demand or due to machine failure).

PluPackaging

Property nameTypeDescription

volume

Specifies the volume of the product within its packaging. Value must have positive, non-zero amount.

weight

Specifies the weight of the product packaging. Value must have positive, non-zero amount and weight unit (g, dag or kg).

packagePluId

When provided, this attribute specifies the PLU that represents the packaging of associated product.

usePackagePluOnSale

bool

Enabling this option by setting it to true allows the cash register application to automatically include the packaging PLU (determined by packagePluId when the associated product is sold.

PluPriceHistoryItem

Property nameTypeDescription

date

DateTime

The date and time of retail price change.

retailPrice

The new product retail unit price (excluding VAT).

PluPurchaseType

Settings for product (PLU) related to specific PurchaseType.

Property nameTypeDescription

purchaseType

The purchase type associated with this item.

enabled

bool

Determines whether given type of purchase type is enabled for product.

vatCategory

int

VAT category that is used for given PurchaseType. Retail price excluding VAT is adjusted, so retail price including VAT is preserved, after given VAT category is applied.

PluReceiptItem

Property nameTypeDescription

quantity

The quantity that should be subtracted from the stock when a single unit of the parent PLU is sold.

pluId

Identifier of PLU to be subtracted.

plu

The PLU referenced by pluId property. This property is only present if $include=ReceiptPlu is specified in GET plus API endpoint.

PluType

Enumeration with the following values:

ValueIs materialDescription

stockItem

Stock item (e.g. ingredient or material). A cover that can be the subject of a deposit and can be repurchased by a trader. This is an material product that has physical representation and associated stock quantity and can be processed in stock takings.

recipe

Recipe (e.g. meal or complex product) that can reference other recipes, stock items or containers in recipe list. Stock quantity is not tracked for this type of product.

service

Service that has no physical form and thus stock quantity is not tracked for this type of product.

container

A container (cover) that can be the subject of a deposit and can be repurchased by a trader.

This is an material product that has physical representation and associated stock quantity and can be processed in stock takings.

Price

Used also as an multiplication result of Quantity and UnitPrice instances.

Property nameTypeDescription

amount

decimal

Up to 2 decimal places.

currencyLabel

string

3-characters long currency label (ISO 4217).

PrintPreliminaryTicketContext

NameTypeDescription

orderEndpointName

string

The name of the order endpoint where the preliminary receipt will be printed.

PrintTicketFormOptions

NameTypeDescription

footerText

string

The optional text that is displayed on end of receipt. Only non-control characters are allowed (and CR + LF).

ProcessOrdersContext

Property nameTypeDescription

ticketIds

string[]

Collection of ticket identifiers. All orders associated with given tickets will be processed.

ProductLicenseActivation

Property nameTypeDescription

code

string

Activation code.

license

License to be activated.

ProductLicenseRequest

Property nameTypeDescription

shopId

int

Unique venue identifier.

features

List of features.

ProductLicenseRequestFeature

NameTypeDescription

productSku

string

The feature identifier.

rawValue

string?

Value associated with feature.

name

string

Feature display name.

activationTime

DateTime?

Activation date and time.

expirationTime

DateTime?

Expiration date and time.

PurchaseType

Enumeration with the following values:

ValueDescription

unknown

Purchase type is not specified.

walkIn

The purchase is being held at the venue.

takeAway

The purchase is being picked up at the venue by customer.

delivery

The purchase will be delivered to customer.

Quantity

Property nameTypeDescription

amount

decimal

Up to 3 decimal places.

unit

string

Up to 3-characters measurement unit.

QueryResult

This models represents generic response from all API routes that returns collection of resources.

Property nameTypeDescription

items

object[]

Collection of resources that met query criteria.

count

int

Number of elements in items property.

totalCount

int

Number of total resources available. Value may differ from count, when pagination or filtering is applied.

RecordCopyContext

This model is used to specify the ticket for which a copy is going to be printed. The ticket can be specified by providing either its ticket number and daily sales report number (ticketNumber and dailySalesReportNumber properties), or its ticket number along with the close date of the daily sales report (ticketNumber and dailySalesReportDate properties).

NameTypeDescription

ticketNumber

int

Ticket sequence number, unique within associated daily sales report. This value can be found in ticket.closeInfo.number.

dailySalesReportNumber

int?

The number of daily sales report. This value can be found in ticket.closeInfo.dailySalesReportNumber.

dailySalesReportDate

DateTime?

The close date of daily sales report.

RefreshTokenResult

NameTypeDescription

tokenId

string

The JWT token using for authenticating requests.

refreshToken

string

The refresh token.

Role

NameTypeDescription

name

string

Unique role identifier.

label

string

Short label (title).

description

string?

Optional role description.

rights

string[]

Collection of user rights associated with given role.

envNames

string[]

Collection of device environments, for which given role can be associated to user.

_v

int

Resource version. This property is tracked and updated by API.

Session

NameTypeDescription

sessionId

string

Unique session identifier.

identity

Information about user associated with given session.

startedAt

DateTime?

Date and time when session was issued.

expiresAt

DateTime?

Date and time when session expires.

lastAccessAt

DateTime?

Date and time of the most recent use of the session to perform an API method.

_v

int

Resource version. This property is tracked and updated by API.

SessionIdentity

NameTypeDescription

userName

string

Unique user name.

deviceName

string

Name of device user is operating on.

envName

string

authenticationType

string

Settings

This model has no predefined properties. Value of each property may be some primitive type, such as string, bool, integer, decimal, etc. Collection or object values are not allowed.

Note: In current version, property names starts with capital letter.

Stock

NameTypeDescription

name

string

Unique stock name (abbreviation).

description

string

Full stock name.

_v

int

Resource version. This property is tracked and updated by API.

StockTaking

NameTypeDescription

id

string

Unique identifier.

createdAt

DateTime

Date and time of stock taking creation.

closedAt

DateTime?

Date and time of stock taking closure. If value is null, stock taking is not closed and can be edited or deleted. When value is not null, the closedBy property must be provided as well.

createdBy

Information about user who created this stock taking.

closedBy

Information about user who closed this stock taking. If value is null, stock taking is not closed and can be edited or deleted. When value is not null, the closedAt property must be provided as well.

currencyLabel

string

Label of currency in which stock taking financial operations are calculated.

items

This collection includes products on which stock quantity corrections are performed

_v

int

Resource version. This property is tracked and updated by API.

StockTakingItem

NameTypeDescription

expectedQuantity

The expected stock quantity of product.

actualQuantity

The actual stock quantity determined by stock taking.

plu

The information about associated product (Plu).

StockTakingItemPlu

NameTypeDescription

name

string

Product's name

code

int

Product's code

codes

string[]

Collection of alternative product codes.

stockName

string

Name of Stock associated with product (Plu).

articleCategoryLabel

string

Label of article category associated with product (Plu).

vat

Vat information associated with product (Plu).

unitPurchasePrice

Product's unit purchase price.

unitRetailPrice

Product's unit retail price.

StockTransfer

NameTypeDescription

id

string

Unique identifier.

type

Type of stock transfer.

items

Items collection.

payments

Payments collection.

company?

Stock transfer issuer.

partner?

The company that supplies (for income type) or purchases (outcome, sale and invoice type) the goods or services.

createdBy

User that creates this stock transfer.

createdAt

DateTime

Date and time of stock transfer creation in system.

closedBy

Contains information about user who closed this stock transfer. If stock transfer is not closed, value is null.

closedAt

DateTime?

Date and time of stock transfer closing. If stock transfer is not closed, value is null.

dueDate

DateTime?

The date and time when the payment is due.

documentNumber

string?

The document number. Usually generated by system using format defined by stock transfer numbering associated with stock transfer type.

documentDate

DateTime

The official document issue date.

deliveryDate

DateTime?

Delivery date.

variableSymbol

string?

The reference number that helps automated payment linking.

constantSymbol

string?

The constant symbol.

specificSymbol

string?

The specific symbol.

note

string?

The optional note that is printed on document.

deliveryType

The type of delivery.

paymentType

The payment method.

discountRate

decimal

Discount rate. Numeric value between 0 and 100 with precision up to 2 decimal places.

currencyLabel

string

The currency label.

meta

Object that holds additional information related to stock transfer.

_v

int

Resource version. This property is tracked and updated by API.

StockTransferCompanyInfo

NameTypeDescription

name

string

Company name.

crn

string

Company registration number (known as IฤŒO, in Slovak Republic).

vatId

string?

VAT ID (known as IฤŒ DPH, in Slovak Republic).

taxId

string?

TAX ID (known as DIฤŒ, in Slovak Republic).

isTaxPayer

bool

Gets whether this company is tax payer.

register

string?

The company's entry in the business register.

contact

Contact associated with company.

address

Company invoice address.

shippingAddress

Optional company shipping address (if is different than address).

bankAccount

Company bank account.

StockTransferDeliveryType

Enumeration with the following values:

ValueDescription

Unknown

The method of delivery is currently unidentified or unspecified.

None

No formal delivery method is associated with the shipment. This could imply that the items might be collected virtually (e.g. software products).

Cartage

Delivery transportation method of goods, typically within a localized area. It's often used for short-distance deliveries.

PostOffice

The items will be sent via the postal service.

Courier

Specialized courier service will be utilized for the shipment.

PickUp

The recipient will personally collect the items from a designated location.

StockTransferItem

NameTypeDescription

id

int

Identifier of item, unique within stock transfer.

sourcePlu

The information about source PLU. Used in outcome, transfer, sale, invoice and correction stock transfer types.

destinationPlu

The information about destination PLU. Used in income, transfer and correction stock transfer types.

note

string?

The optional note related to stock given stock transfer item.

StockTransferItemPlu

Property nameTypeDescription

code

int

Product's PLU code.

stockName

string

Name of associated Stock.

name

string

Product name. E.g. "Coffee".

quantity

Positive or negative non-zero quantity.

discountRate

decimal

Discount rate. Numeric value between 0 and 100 with precision up to 2 decimal places.

isDiscountAllowed

bool

Determines whether discount can be placed on stock transfer item associated with this PLU.

note

string?

The optional note related to stock given stock transfer item plu.

receipt

Items of PLU recipe. Exclusively for PLUs categorized as Recipe type.

type

Type of product.

unitPurchasePrice

The unit purchase price excluding VAT.

unitRetailPrice

The unit retail price excluding VAT.

vat

The VAT category and VAT rate.

StockTransferNumbering

NameTypeDescription

id

string

The unique identifier.

isActive

bool

Determines whether this numbering can be used to generate stock transfer document numbers.

type

Type of stock transfer associated with this numbering.

format

string

The document number format, e.g. "FA-{yyyy}{i4}". The placeholders enclosed within curly braces ({ and }) are known as "wildcards", dynamically substituted with real values derived from the current sequence number and date.

Supported wildcards:

  • yyyy: 4 digits year, e.g. 2023.

  • yy: 2 digits year, e.g. 23

  • MM: month number, e.g. 08.

  • DD: number of day, e.g. 30.

  • i4: 4 digits long sequence number, e.g. 0001.

  • i6: 6 digits long sequence number, e.g. 000001.

  • i8: 8 digits long sequence number, e.g. 00000001.

repeat

bool

Determines whehter new numbering intervals can be generated, based on previously active one.

numberings

Stores last used number related to specific time interval.

_v

int

Resource version. This property is tracked and updated by API.

StockTransferNumberingInterval

NameTypeDescription

isActive

bool

Determines whether this interval is active and can be used to generate number.

createdAt

DateTime

Date and time of interval creation.

startAt

DateTime

Date and time of interval start.

period

Defines the specific duration for which this interval remains valid.

currentNumber

int

The next number to be used.

StockTransferNumberingIntervalPeriod

NameTypeDescription

unit

The time unit.

amount

int

The quantity.

StockTransferPayment

NameTypeDescription

paymentType

The payment method used.

amount

The payment amount.

paidAt

DateTime?

The date and time of payment, if already settled.

note

string?

The optional note related to the payment.

createdAt

DateTime

Date and time of payment creation.

createdBy

UserInfo

User who created the payment.

StockTransferPaymentType

Enumeration with the following values:

ValueDescription

Unknown

The specific method of payment is currently unidentified or not provided.

Cash

Customer is providing physical currency as the form of payment for the goods or services received.

BankTransfer

The electronic transfer of funds directly from the customer's bank account to the recipient's bank account.

POSTerminal

Payments made through a point-of-sale (POS) terminal. This could involve debit or credit card transactions, where the customer's card is swiped, inserted, or tapped to process the payment.

MoneyOrder

Prepaid payment method where the customer purchases a money order from a financial institution or postal service and then sends it to the recipient.

CashOnDelivery

The payment will be made in cash directly to the delivery person upon receipt of the ordered items.

Coupon

Refers to using a discount coupon, voucher, or promotional code to cover total cost of the purchase.

Other

Payment method that does not fit into the defined categories.

StockTransferType

Enumeration with the following values:

ValueDescription

income

Income.

outcome

Outcome.

transfer

Transfer.

sale

Sale stock transfer created by system after ticket is closed (similar to outcome).

invoice

Invoice (similar to outcome).

correction

Sale stock transfer created by system after stock taking is closed.

TaxFreeReason

Describes the reason for assigning zero VAT rate to the product, according to Slovak legislation. Enumeration with the following values:

ValueDescription

vatReverseCharge

VAT reverse charge.

vatExemptionGood

VAT exemption.

travelAgency

Special regulation of tax application for travel agencies.

usedGood

Special regulation of tax application for used goods.

artwork

Special regulation of tax application for works of art.

collectiblesAndAntiques

Special regulation of tax application for collectibles and antiques.

Ticket

NameTypeDescription

id

string

Unique ticket identifier. If not specified, ID is generated by API.

externalId

string?

Unique identifier provided by external system.

state

State of ticket.

type

Type of ticket.

name

string

Ticket name (may be given by cashier, and is usually printed on receipt).

openDate

DateTime

Date and time of ticket creation.

issueDate

DateTime?

Original date and time of paragon creation, based on which ticket is later created. Required, when isParagon is true.

closeDate

DateTime?

Date and time of ticket closing (receipt printing).

closeInfo

Information about ticket closing. Available only when state is closed.

purchaseType

The type of purchase.

location

Contains information about ticket location, which refers to specific Table in Zone. May be null, if ticket is not associated with any table, or cashier do not use floor plan in cash register application.

customer

Information about associated customer.

originDeviceName

string?

Name of device on which ticket was created.

employee

Cashier assigned to ticket.

items

Collection of products.

payments

Collection of paments used to pay the purchase.

currencyLabel

string

Currency label.

discountRate

decimal

Value between 0 and 100. Up to 2 decimal places.

roundingAmount

Rounding amount.

invoiceNumber

string?

Invoice number. Value is required, if type is invoice.

paragonNumber

int?

Sequence number of the paragon based on which the ticket was created. Required, when isParagon is true.

isParagon

bool

Specifies whether this ticket represents paragon registration.

_v

int

Resource version. This property is tracked and updated by API.

TicketCloseContext

NameTypeDescription

fiscal

Fiscal printer options for generating receipt as an result of ticket closing procedure.

employee

If an employee is specified, the ticket's closure information will reflect this employee instead of the authenticated user. To specify a user other than the authenticated user, the authenticated user must have the TicketCloseAs user right.

TicketCloseContextFiscal

NameTypeDescription

name

string

Name of fiscal printer which will perform the ticket closing procedure.

ticket

Ticket closing options.

options

The additional options. Not used in current version.

TicketCloseContextFiscalTicket

NameTypeDescription

form

The receipt form, which can be either print or email.

formOptions

When the form is set to print, the type of this property is PrintTicketFormOptions. When the form is set to email, the type of this property is EmailTicketFormOptions.

TicketCloseInfo

NameTypeDescription

eKasa

Information related to receipt registration in eKasa system. May be null, if used fiscal device do not support eKasa legislation.

dailySalesReportNumber

int

Number of the daily sales report, which the ticket is associated to.

number

int

Ticket sequence number, unique within associated daily sales report.

fiscalMemorySerialNumber

string

Serial number of fiscal memory used in fiscal device. Same fiscal device may have various memories over time (when one fills up).

fiscalName

string

Unique name of fiscal device used to issue receipt.

deviceName

string

Unique name of device from which ticket closing was initiated.

TicketCloseInfoEKasa

NameTypeDescription

ticketId

string

Unique ticket identifier given by eKasa system.

ticketForm

Form of receipt.

ticketFormOptions

Object with string properties containing additional information about ticket form used when creating receipt.

When the ticketForm is set to print, the type of this property is PrintTicketFormOptions. When the form is set to email, the type of this property is EmailTicketFormOptions.

ticketIsOnline

bool

Specifies whether ticket was registered in eKasa system in online mode (true) or offline mode (false). Offline mode means that internet connectivity was broken at time of receipt registration.

TicketCustomerInfo

NameTypeDescription

id

string?

externalId

string?

cardSerialNumber

string?

firstName

string?

lastName

string?

fullName

string?

gender

Gender?

birthDate

DateTime?

address

deliveryAddress

isCompany

bool

company

phone

string?

email

string?

creditRate

decimal?

meta

TicketForm

Enumeration with the following values:

ValueDescription

print

Paper receipt. This is default ticket form.

email

Email receipt, also known as "e-receipt".

TicketItem

NameTypeDescription

id

uint?

Ticket item identifier, unique within given ticket.

externalId

string?

Ticket item external identifier. Supplied by external system.

type

Ticket item type. Based on type, restrictions for quantity and unitPrice are applied.

plu

Information about associated product.

comment

string?

Optional comment from cashier.

unitPrice

Unit price excluding VAT.

quantity

Quantity

discountRate

decimal

Discount rate with value between 0 and 100, with precision up to 2 decimal places.

referenceFiscalTicketId

string?

Reference to external (fiscal) Ticket identifier. Must have value when type is correction or returned. Must be null otherwise. This value can be found in ticket.closeInfo.eKasa.ticketId.

voucherNumber

string?

Number of voucher. Must have value when type is voucher. Must be null otherwise.

isQuantityFixed

bool?

Specifies whether quantity of this instance can be modified.

courseNumber

int?

Specifies course number. Can be specified by the cashier to determine the order of food and drinks brought to the table.

TicketItemPlu

NameTypeDescription

name

string

Name of product. Displayed in cash register application.

description

string?

Optional product description. If specified, this value is printed on receipt. Otherwise, name is printed on receipt.

stockName

string?

Stock of product associated with this item.

code

Code of product associated with this item.

articleCategoryLabel

string

Label of article category, to which the product associated with this item belongs.

vatInfo

VAT rate and VAT category..

isDiscountAllowed

bool

Determines whether discount can be applied to this product.

isPriceFixed

bool

Determines whether unit price can be changed by cashier (cashier must operate on device which has allowed price change in its settings).

isSplittable

bool

If set to false, product can be sold only in integer quantities. true value means that any quantity can be used.

orderEndpointNames

string[]

Collection of order endpoints on which each product order is processed.

type

Type of product.

specialRegulation

The reason of associating zero VAT rate. Value is only provided if one of enumeration option does apply for given product.

isCashbackAllowed

bool

Determines whether the customer is eligible for a "cash back" for the purchase of this product. Set to false, if no cash back should be given or the purchase of this product, true otherwise.

TicketItemType

Enumeration with the following values:

ValueDescription

positive

Ticket item with positive total price (multiplication of unit price and quantity should result to positive or zero value).

returnedContainer

Returned product packaging.

returned

Returned products.

correction

Correction, e.g. after cashier mistake.

discount

Discount expressed in absolute value. For relative discounts, use discountRate propety of Ticket or TicketItem models.

advance

Deducted advance that was previously paid by purchaser.

voucher

Represents deduction of voucher value, when single-purpose voucher is exchanged for provided goods or services.

credit

Consumption or top-up of customer credit.

TicketLocation

NameTypeDescription

zoneName

string

References unique Zone name.

tableName

string

References table by it's unique name within zone specified by zoneName property.

TicketPayment

NameTypeDescription

amount

Payment amount.

paymentType

Information about payment type.

TicketPaymentType

NameTypeDescription

number

int

Unique payment type number.

description

string

Payment type human readable description.

isChangeable

bool

(reserved for future use)

category

Specifies category of payment type.

TicketStatus

Enumeration with the following values:

ValueDescription

open

Ticket is open and available for modification.

closed

Receipt is issued for ticket. Ticket can no longer be modified. This is the final state, as ticket can not be re-opened.

TicketsUpdateAction

Specifies update mode for tickets batch update.

Enumeration with the following values:

ValueDescription

default

Default mode.

move

Mode, when ticket items are transfered from one ticket to another. Sum of all transfered quantites must equalto zero.

TicketType

Enumeration with the following values:

ValueDescription

cashRegister

Basic cash register receipt. This is the most common type.

invalid

Same as cash register receipt, however this type is used for cashier training. Tax liability does not arise from invalid receipts, when registered in eKasa system.

invoice

Represents invoice payment. Ticket of this type must have empty items collection.

TimeOnly

The .NET builtin type. Represents a time of day, as would be read from a clock, within the range 00:00:00 to 23:59:59.9999999.

TimeOnlyRange

Property nameTypeDescription

from

Optional interval start. If value is null, interval starts at 00:00:00.

to

Optional interval start. If value is null, interval ends at 23:59:9999999.

ToolDeviceSettings

No properties are currently defined. Settings are managed directly in PORTOS Link application.

UnitPrice

Similiar to Price, however precision of unit price is up to 6 decimal places.

Property nameTypeDescription

amount

decimal

Up to 6 decimal places.

currencyLabel

string

3-characters long currency label (ISO 4217).

UserCreateUpdateContext

The context used to create new or update existing user profile.

NameTypeDescription

id

string

Unique user ID

isActive

bool

Determines whether this user profile is active and can be used during authentication.

isVirtual

bool

Determines whether this user is "virtual user" (virtual users are related to API extensions, and can not be used for authentication).

name

string

Display name of user.

userName

string

Unique user name used to log in.

featureName

string?

Name of "feature" (has value only for virtual users).

password

string?

The password.

confirmPassword

string?

The password.

devices

Devices on which the user can be authorized.

UserDevice

NameTypeDescription

isActive

bool

Indicates whether user can be authorized on a given device.

name

string

Unique name of the device on which the user is logged in.

envName

string

Name of the device environment.

roles

string[]

Collection of user rights granted when authorized on a given device.

description

string?

Human readable device description (e.g. "Cash register 1").

preferences

object

Object containing user-specific preferences for this device. Reserved for future use.

UserInfo

Property nameTypeDescription

userName

string

Unique user identifier.

name

string

User display name.

UserProfile

NameTypeDescription

id

string

Unique user ID

isActive

bool

Determines whether this user profile is active and can be used during authentication.

isVirtual

bool

Determines whether this user is "virtual user" (virtual users are related to API extensions, and can not be used for authentication).

name

string

Display name of user.

userName

string

Unique user name used to log in.

featureName

string?

Name of "feature" (has value only for virtual users).

hasPassword

bool

Indicates if the given user profile is linked to a password.

devices

Devices on which the user can be authorized.

UserProfileContext

NameTypeDescription

id

string

Unique user ID

isVirtual

bool

Determines whether this user is "virtual user" (virtual users are related to API extensions, and can not be used for authentication).

name

string

Display name of user.

userName

string

Unique user name used to log in.

featureName

string?

Name of "feature" (has value only for virtual users).

rights

string[]

Collection of user rights that are granted for user authorized on given device.

device

Information about device that user operates on.

UserProfileContextDevice

NameTypeDescription

name

string

Unique name of the device on which the user is logged in.

envName

string

Name of the device environment.

description

string?

Human readable device description (e.g. "Cash register 1").

preferences

object

Object containing user-specific preferences for this device. Reserved for future use.

settings

An object with string properties, that is used to store device settings. The value of each property within the object corresponds to a specific type based on the envName (device environment name).

Vat

VAT category identifier and associated VAT rate.

Property nameTypeDescription

category

int

VAT category identifier. Value between 1 and 5.

rate

decimal

VAT rate. Number with value between 0 and 100 with precision up to 2 decimal places.

_v

int

Resource version. This property is tracked and updated by API.

VatIncome

Property nameTypeDescription

vatCategory

int

VAT category identifier. Value between 1 and 5.

vatRate

decimal

VAT rate. Number with value between 0 and 100 with precision up to 2 decimal places.

totalAmount

Total turnover.

vatAmount

VAT amount.

VatInfo

VAT category identifier and associated VAT rate.

Property nameTypeDescription

category

int

VAT category identifier. Value between 1 and 5.

rate

decimal

VAT rate. Number with value between 0 and 100 with precision up to 2 decimal places.

WeeklyScheduleItem

Represents a weekly schedule item that can apply to multiple days with optional time ranges.

Property nameTypeDescription

days

Gets or sets the list of days when the schedule applies. If value is null or empty, the schedule is not limited to certain days, and applies every day.

timeRange

Gets or sets the time range for the schedule. If value is null, the schedule is not limited by time; starts at the beginning of the day and ends at the end of the day.

Zone

The zone model represents visual representation of a specific area, such as a room, terrace, or any other defined space. It contains the layout, dimensions, and arrangement of objects within that area.

Property nameTypeDescription

name

string

Unique zone identifier.

defaultFiscalName

string?

Optional name of fiscal device. If not null, all cash register applications should use given fiscal device when printing receipts for tickets associated with given zone.

items

Collection of zone items (tables or other objects).

sortHint

int?

Optional sort hint (to order zones in cash register application)

_v

int

Resource version. This property is tracked and updated by API.

ZoneItem

Property nameTypeDescription

name

string

Name of zone item, unique within associated zone.

isTable

bool

Indicates, whether ticket can be associated with given zone item.

meta

Meta information related to render given zone item in application user interface.

ZoneItemMeta

Property nameTypeDescription

position

Coordinates

Specifies center position.

width

decimal

Non-zero positive element width.

height

decimal

Non-zero positive element height.

shape

Element shape.

rotation

int

Element clockwise rotation in degrees.

color

string

Color in RGB format, including leading # symbol. E.g. #fff or #aabbcc.

ZoneItemShape

Emumeration defined with the following values:

ValueDescription

circle

Circle (can also be used for ellipses).

rectangle

Rectangle (can be used also for squares) .

Last updated