โPlus
This page provides a description of the available API routes for managing products.
PLU
is common abbreviation for goods or services, sold via cash register system. Each PLU can be uniquely identified by its id
or a combination of the stockName
and code
properties.
There are several PLU types defined in PORTOS system:
Stock item: This refers to a product that can be physically held in stock. Information regarding stock quantity can be linked to PLUs of the stock item type, using
stockQuantity
property. When customers purchase items of this type, the corresponding stock quantities are updated accordingly.Recipe: A recipe PLU represents a product that is a combination of other stock items and/or recipes. When a single unit of a recipe is sold, one or more products of the stock item type are deducted from the stock, based on
receipt
collection. However, no information related to stock quantity is associated with this particular type of PLU.Service: This type of PLU represents a product that lacks a physical form. Services, unlike tangible goods, are intangible offerings. They are provided to customers without any physical representation or inventory involvement.
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. Container PLU must be associated with VAT that represents non-taxable items.
Stock items, recipes, services and containers can be accessed through the PLU API routes listed below.
API methods
Get PLUs
GET
http://{server-address}/plus
Returns all roles that matches query parameters. Result is of type QueryResult<Plu>
.
To retrieve PLUs referenced by receipt as well, specify Receipt.Plu
value in $include
query parameter (e.g. GET {server_address}/plus?$include=Receipt.Plu
).
Query Parameters
id
string
Supports NData syntax.
articleCategoryLabel
string
Supports NData syntax.
$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.
code
int
Supports NData syntax.
color
string
Supports NData syntax.
isActive
bool
Supports NData syntax.
isDiscountAllowed
bool
Supports NData syntax.
isPriceFixed
bool
Supports NData syntax.
courseNumber
int
Supports NData syntax.
unit
string
Supports NData syntax.
type
PluType
Supports NData syntax.
stockName
string
Supports NData syntax.
name
string
Supports NData syntax.
isSplittable
bool
Supports NData syntax.
stockQuantityAmount
decimal
Supports NData syntax.
search
string
Provided parameter will perform partial, case insensitive search across name, code and codes properties.
vatCategory
int
Supports NData syntax.
isStockQuantitySufficient
bool
If set true, only PLUs with stockQuantity equal or above respective minStockQuantity will be returned. If set to false, only PLUs with stockQuantity less than minStockQuantity will be returned.
receiptItemPluCode
int
Only PLUs that contains PLU with specified code in receipt collection will match the query. Supports NData syntax.
receiptItemPluStockName
string
Only PLUs that contains PLU with specified stock name in receipt collection will match the query. Supports NData syntax.
$include
string
If Receipt.Plu
is specified as value of query parameter, all PluReceiptItem
s will contain referenced Plu
in plu
property. See example responses.
Headers
Authorization*
string
Authorization header with authorization token.
Get PLU
GET
http://{server-address}/plus/{id}
Result is of type Plu.
Path Parameters
id*
string
Unique PLU identifier.
Headers
Authorization*
string
Authorization header with authorization token.
Create PLU
POST
http://{server-address}plus
Creates new PLU. Result is of type Plu.
Required rights
Authorized user must have PluCreate
right assigned.
Headers
Authorization*
string
Authorization header with authorization token.
Request Body
(body)*
Plu
PLU model to create
Create or update PLU
PUT
http://{server-address}/plus/{id}
Updates existing or creates new PLU. Result is of type Plu.
Required rights
Authorized user must have assigned PluCreate
or PluUpdate
right.
Path Parameters
id*
string
Unique PLU identifier.
Headers
Authorization*
string
Authorization header with authorization token.
Request Body
(body)*
Plu
Model to create or update.
Delete PLU
DELETE
http://{server-address}/plus/{id}
Required rights
Authorized user must have PluDelete
right assigned.
Path Parameters
id*
string
Unique PLU identifier.
Headers
Authorization*
string
Authorization header with authorization token.
Last updated
Was this helpful?