Main docs page Auth API Ordering API Menu API Venue API Inventory API Payment API Loyalty API Wallet API

Ordering API (1.0)

Download OpenAPI specification:Download

OrderingStack ordering API

Authentication

oauth2

Standard token auth

Security Scheme Type OAuth2

oauth2-client

Internal authorization between microservices

Security Scheme Type OAuth2

upsell

simpleUpsell

Simple upsell implementation. Uses 'category' extra tag in menu-api service to link categories that should co-exist in order. Configuration is in tenant as 'upselCfg' and consist of list of pairs: 'category1=category2|cat3=cat4|fallback'. Which means that if product from 'category1' is present in order, there should also be product from 'category2'. If it is missing upsell suggests 3 products from 'category2'. 'fallback' is a category to suggest in case no other matches were found. If 'upsellLastLine' is set to true in tenant config additionally it is looking for 'upsell' extra params in recently added line and produces popup upsell from it.

Authorizations:
Request Body schema: application/json
object (Order)
appliedCommands
Array of strings

Responses

Request samples

Content type
application/json
{
  • "order": {
    },
  • "appliedCommands": [
    ]
}

loyalty

simpleLoyalty

Simple loyalty implementation with '3-parts sets 10% off' and 'every third item - half price'. It uses product extra tags 'PART' which should take one of values: 'main', 'side', 'drink'. This endpoint counts every value and tries to combine them in sets (one 'main', one 'size', one 'drink'). There is also 'BULK3' tag which works as a 'third product of this kind (id) for half price'.

Authorizations:
Request Body schema: application/json
object (Order)
appliedCommands
Array of strings

Responses

Request samples

Content type
application/json
{
  • "order": {
    },
  • "appliedCommands": [
    ]
}

loyaltyWallet

Simple loyalty wallet update callback. It computes order total for non-technical items, multiplicates with 'mul' parametr (0.1 by default) and adds points calculated this way to users wallet. Points are rounded to whole numbers (round=true) and expire in one year (expire=365).

Authorizations:
query Parameters
mul
number
Default: 0.1
round
boolean
Default: true
expire
integer <int32>
Default: 365
notify
string
Request Body schema: application/json
commandClass
string
object (AbstractOrderEventCommand)
required
object (Order)
object

Responses

Request samples

Content type
application/json
{
  • "commandClass": "string",
  • "command": {
    },
  • "order": {
    },
  • "extra": {
    }
}

loyaltyWallet2

Simple loyalty wallet update callback (wallet2-api). It computes order total for non-technical items, multiplicates with 'mul' parametr (0.1 by default) and adds points calculated this way to users wallet. Points are rounded to whole numbers (round=true) and expire in one year (expire=365).

Authorizations:
query Parameters
mul
number
Default: 0.1
round
boolean
Default: true
expire
integer <int32>
Default: 365
notify
string
Request Body schema: application/json
commandClass
string
object (AbstractOrderEventCommand)
required
object (Order)
object

Responses

Request samples

Content type
application/json
{
  • "commandClass": "string",
  • "command": {
    },
  • "order": {
    },
  • "extra": {
    }
}

removeCoupon

Remove coupon from order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
string [ 0 .. 32 ] characters

Responses

Request samples

Content type
application/json
"string"

alterDiscountLayer

Alter discounts on named layer for order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_DISCOUNT)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>
Request Body schema: application/json
object
object
layer
required
string [ 3 .. 32 ] characters [a-zA-Z0-9_.-]+
Default: "DISCOUNT"

Discounts layer. Subsequent requests with same layer will remove previous discounts and apply new one for that same layer.

Responses

Request samples

Content type
application/json
{
  • "discounts": {
    },
  • "prices": {
    },
  • "layer": "DISCOUNT"
}

detach

Detach loyalty ID from order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Responses

attach

Attach loyalty ID to order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
string [ 0 .. 255 ] characters

Responses

Request samples

Content type
application/json
"string"

addCoupon

Add coupon to order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
string [ 0 .. 32 ] characters

Responses

Request samples

Content type
application/json
"string"

steering

postSteering

Post steering message.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_STEERINGROLE_{venue}_MANAGERROLE_{venue}_STEERINGROLE_STEERING_{command}ROLE_{venue}_STEERING_{command})
header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
command
required
string [ 1 .. 32 ] characters [a-zA-Z0-9_.-]+
venue
string [ 1 .. 128 ] characters [a-zA-Z0-9_.-]+
object

Responses

Request samples

Content type
application/json
{
  • "command": "string",
  • "venue": "string",
  • "properties": {
    }
}

secret

signLineDiscounts

Sign line discounts.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_SIGN)
query Parameters
required
object (SignLineDiscountRequest)
tenantId
required
string <uuid>

Responses

order

commentOrderLine

Add comment to order line.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

lid
required
string <uuid>

Line id

Request Body schema: application/json
string [ 3 .. 255 ] characters

Responses

Request samples

Content type
application/json
"string"

verifyOrder

Mark order as verified.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_ORDERSROLE_VERIFYROLE_{venue}_MANAGERROLE_{venue}_ORDERSROLE_{venue}_VERIFY)
path Parameters
uid
required
string <uuid>

Order id

Responses

verifyOrderPayment

Verify order by ID if it can be paid.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

query Parameters
returnOrder
boolean
Default: false
header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
type
required
string
Enum: "CASH" "CARD" "COD" "TERMINAL" "EPAYMENT" "COUPON" "WALLET" "PREAUTHORIZED" "RETURN" "EXTERNAL"
source
required
string[\p{L}\p{N}_.-]+
amount
required
number

Responses

Request samples

Content type
application/json
{
  • "type": "CASH",
  • "source": "string",
  • "amount": 0
}

Response samples

Content type
{
  • "result": true,
  • "order": {
    },
  • "codes": [
    ]
}

changeVenues

Set venues (buckets) in order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

query Parameters
venue
Array of strings [ 1 .. 64 ] items

Venue id(s)

Responses

requestFiscal

Request fiscal data for order. Data is returnet through websocket.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_FISCALIZE)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>

Responses

removeCoupon

Remove coupon from order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
string [ 0 .. 32 ] characters

Responses

Request samples

Content type
application/json
"string"

removeDeferredPayment

Remove deferred payment from order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_PAY)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>
Request Body schema: application/json
paymentId
required
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "paymentId": "472e651e-5a1e-424d-8098-23858bf03ad7"
}

setQueuePos

Manually set queue pos for order. Tenant configuration must allow it.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_QUEUE)
path Parameters
uid
required
string <uuid>
Request Body schema: application/json
venue
required
string [ 1 .. 128 ] characters [a-zA-Z0-9_.-]+
queuePos
required
string [ 1 .. 32 ] characters [a-zA-Z0-9_.-]+

Responses

Request samples

Content type
application/json
{
  • "venue": "string",
  • "queuePos": "string"
}

changeQuantities

Change lines quantity.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
required
Array of objects (LineQuantity)

Responses

Request samples

Content type
application/json
{
  • "lines": [
    ]
}

pickedOrder

Mark order as picked by carrier.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Responses

payOrder

Add payment information to order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_PAYROLE_PAY_{paymentType})
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>
Request Body schema: application/json
type
required
string
Enum: "CASH" "CARD" "COD" "TERMINAL" "EPAYMENT" "COUPON" "WALLET" "PREAUTHORIZED" "RETURN" "EXTERNAL"
source
required
string[\p{L}\p{N}_.-]+
amount
required
number >= 0
deferred
boolean
Default: false

Payment is deferred, does not trigger next steps

object

Responses

Request samples

Content type
application/json
{
  • "type": "CASH",
  • "source": "string",
  • "amount": 0,
  • "deferred": false,
  • "extra": {
    }
}

paymentUpdate

Update payment information in order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGER)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>
Request Body schema: application/json
paymentId
required
string <uuid>
amount
number >= 0

Can be NULL then it is not altered in payment record.

object

Additional (extra) data.

Responses

Request samples

Content type
application/json
{
  • "paymentId": "472e651e-5a1e-424d-8098-23858bf03ad7",
  • "amount": 0,
  • "extra": {
    }
}

lockIfValid

QSR flow - lock the order for further editing if it is valid. Validation re-checks venue cluster (with due time), delivery area, products availability.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Responses

voidLineOrder

Mark order lines as voided.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

splitLines

Split order lines. Makes copies of existing order line with smaller quantities. Sum of quantities must match.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
required
Array of objects (LineSplit) [ 1 .. 2147483647 ] items

Responses

Request samples

Content type
application/json
{
  • "lines": [
    ]
}

removeLineOrder

Remove order line. Whether line can be removed depends on its state.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

processingLineOrder

Mark order lines as preparing/processing.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

processingLineOrder_1

Mark order lines as preparing/processing.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

processedLineOrder

Mark order line as processed/prepared.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

processedLineOrder_1

Mark order line as processed/prepared.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

alterLinesExtra

Change extra params in order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
required
Array of objects (LinesExtra)

Incremental change of extra params in lines

Responses

Request samples

Content type
application/json
{
  • "lines": [
    ]
}

confirmLineOrder

Mark order lines as confirmed.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

kdsTraceView

Track order visibility on KDS.

Authorizations:
oauth2 (ROLE_SUROLE_MANAGERROLE_ORDERSROLE_KDSROLE_COOKROLE_WAITERROLE_{venue}_MANAGERROLE_{venue}_ORDERSROLE_{venue}_KDSROLE_{venue}_COOKROLE_{venue}_WAITER)
path Parameters
uid
required
string <uuid>

Order id

query Parameters
config
string

KDS config

Responses

inviteUser

Invite another user to this order. This is used to attach additional user to order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
id
required
string <uuid>

User id.

name
string [ 0 .. 128 ] characters

Responses

Request samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string"
}

addFiscalize

Add fiscal information to order. This should reflect printed fiscal strip.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_FISCALIZE)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>
Request Body schema: application/json
timestamp
required
string <date-time>
proforma
boolean
user
string <uuid>
venue
string[a-zA-Z0-9_.-]+
amount
required
number
printer
required
string [ 3 .. 64 ] characters
slip
required
string [ 3 .. 64 ] characters
taxId
string [ 0 .. 32 ] characters
message
string [ 0 .. 64 ] characters
Array of objects (SlipEntry)
Array of objects (DrsSummary) [ 0 .. 64 ] items
object
Array of objects (SubTotalDiscount) [ 0 .. 24 ] items
object

Responses

Request samples

Content type
application/json
{
  • "timestamp": "2019-08-24T14:15:22Z",
  • "proforma": true,
  • "user": "76f62a58-5404-486d-9afc-07bded328704",
  • "venue": "string",
  • "amount": 0,
  • "printer": "string",
  • "slip": "string",
  • "taxId": "string",
  • "message": "string",
  • "entries": [
    ],
  • "drsSummary": [
    ],
  • "payments": {
    },
  • "subTotalDiscounts": [
    ],
  • "extra": {
    }
}

alterExtra

Change extra params in order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
object

Extra params to add as name:value pairs. Only names starting with 'X-' are allowed.

remove
Array of strings [ 0 .. 64 ] items

Names of extra params to remove

Responses

Request samples

Content type
application/json
{
  • "store": {
    },
  • "remove": "{\"X-PARAM\"}"
}

setDue

Set due timestamp for order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
due
string <date-time>

Due timestamp of order. Allows to place future orders. Some conditions depending on tenant configuration must be met on how soon or late this timestamp can be.

Responses

Request samples

Content type
application/json
{
  • "due": "2019-08-24T14:15:22Z"
}

alterDiscountLayer

Alter discounts on named layer for order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_DISCOUNT)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>
Request Body schema: application/json
object
object
layer
required
string [ 3 .. 32 ] characters [a-zA-Z0-9_.-]+
Default: "DISCOUNT"

Discounts layer. Subsequent requests with same layer will remove previous discounts and apply new one for that same layer.

Responses

Request samples

Content type
application/json
{
  • "discounts": {
    },
  • "prices": {
    },
  • "layer": "DISCOUNT"
}

detach

Detach loyalty ID from order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Responses

deliverOrder

Mark order as delivered.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_ORDERSROLE_DELIVERYROLE_{venue}_MANAGERROLE_{venue}_ORDERSROLE_{venue}_DELIVERY)
path Parameters
uid
required
string <uuid>

Order id

Responses

deliverReadyOrder

Mark order as deliver ready (before it is delivered).

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_ORDERSROLE_DELIVERYROLE_{venue}_MANAGERROLE_{venue}_ORDERSROLE_{venue}_DELIVERY)
path Parameters
uid
required
string <uuid>

Order id

Responses

contact

Set contact information for user. At least one contact is required (email and/or phone).

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
name
string [ 0 .. 64 ] characters

Name to be stored as user contact information

phone
string [ 4 .. 32 ] characters \+?[0-9]+

Phone to be stored as user contact information

mail
string [ 4 .. 256 ] characters

Email to be stored as user contact information

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "phone": "string",
  • "mail": "string"
}

confirmDeferredPayments

Confirm deferred payments in order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_PAYROLE_CONFIRM_PAYMENTS)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>

Responses

commentOrder

Add comment to order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
string [ 3 .. 255 ] characters

Responses

Request samples

Content type
application/json
"string"

claimOrder

Claim order. This is used to attach additional user to order. User can be just another user, waiter or technical account for kiosk, etc.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
name
string [ 0 .. 64 ] characters

Name to be stored as user contact information

phone
string [ 4 .. 32 ] characters \+?[0-9]+

Phone to be stored as user contact information

mail
string [ 4 .. 256 ] characters

Email to be stored as user contact information

code
required
string [ 0 .. 32 ] characters [0-9]{0,16}

Claim code. Must match code in order.

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "phone": "string",
  • "mail": "string",
  • "code": "\"123456\""
}

changeOrderType

Change order type.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
orderType
required
string
Enum: "DELIVERY" "TAKE_AWAY" "DINE_IN_OPEN" "DINE_IN" "GLOVO_DELIVERY" "GLOVO_TAKE_AWAY" "JUSTEAT_DELIVERY" "JUSTEAT_TAKE_AWAY" "UBER_DELIVERY" "UBER_TAKE_AWAY" "UBER_DINE_IN" "WOLT_DELIVERY" "WOLT_TAKE_AWAY" "WOLT_DINE_IN" "BOLT_DELIVERY" "BOLT_TAKE_AWAY" "BOLT_DINE_IN" "TAZZ_DELIVERY" "TAZZ_TAKE_AWAY" "UPMENU_DELIVERY" "UPMENU_TAKE_AWAY" "UPMENU_DINE_IN"

Responses

Request samples

Content type
application/json
{
  • "orderType": "DELIVERY"
}

cancelOrder

Cancel order. Cancelling is available for restaurant staff. Involves e-payments refund. If refund fails - cancelling does not take place.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
statusInfo
string [ 0 .. 128 ] characters

Responses

Request samples

Content type
application/json
{
  • "statusInfo": "string"
}

attach

Attach loyalty ID to order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
string [ 0 .. 255 ] characters

Responses

Request samples

Content type
application/json
"string"

attachUser

Attach user to order with specified role(s).

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_ATTACH)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>
Request Body schema: application/json
user
required
string <uuid>

User to be attached

roles
required
Array of strings [ 1 .. 10 ] items unique
Items Enum: "CREATOR" "CUSTOMER" "COUPON" "KIOSK" "WAITER" "MANAGER" "VIEWER" "DRIVER" "STAFF"

Roles. Not all roles can be set this way.

name
string [ 0 .. 64 ] characters

Name to be stored as user contact information

phone
string [ 0 .. 32 ] characters [0-9]+

Phone to be stored as user contact information

mail
string [ 0 .. 128 ] characters

Email to be stored as user contact information

Responses

Request samples

Content type
application/json
{
  • "user": "76f62a58-5404-486d-9afc-07bded328704",
  • "roles": [
    ],
  • "name": "string",
  • "phone": "string",
  • "mail": "string"
}

appendLineOrder

Add order line to order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
venue
required
string
required
Array of objects (AppendedLine) [ 1 .. 32 ] items

Responses

Request samples

Content type
application/json
{
  • "venue": "string",
  • "lines": [
    ]
}

setAddress

Set delivery address for order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
required
object (Address)

Delivery address

Responses

Request samples

Content type
application/json
{
  • "address": {
    }
}

addCoupon

Add coupon to order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
string [ 0 .. 32 ] characters

Responses

Request samples

Content type
application/json
"string"

abandonOrder

Abandon order. Only not completed orders can be abandoned this way.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
statusInfo
string [ 0 .. 128 ] characters

Responses

Request samples

Content type
application/json
{
  • "statusInfo": "string"
}

newOrder

Create new order. In oauth2-client scenario required X-Tenant and X-User HTTP headers.

Authorizations:
Request Body schema: application/json
orderType
required
string
Enum: "DELIVERY" "TAKE_AWAY" "DINE_IN_OPEN" "DINE_IN" "GLOVO_DELIVERY" "GLOVO_TAKE_AWAY" "JUSTEAT_DELIVERY" "JUSTEAT_TAKE_AWAY" "UBER_DELIVERY" "UBER_TAKE_AWAY" "UBER_DINE_IN" "WOLT_DELIVERY" "WOLT_TAKE_AWAY" "WOLT_DINE_IN" "BOLT_DELIVERY" "BOLT_TAKE_AWAY" "BOLT_DINE_IN" "TAZZ_DELIVERY" "TAZZ_TAKE_AWAY" "UPMENU_DELIVERY" "UPMENU_TAKE_AWAY" "UPMENU_DINE_IN"
due
string <date-time>
object (Address)

Delivery address

Array of objects (AppendedBucket) [ 0 .. 5 ] items
discardInvalidLines
boolean
Default: false

Whether lines referencing invalid products should be discarded and order containing rest of lines should be created (when true) or whole order should be rejected if some lines do not validate (false). Can be used to post historical order again and have all still valid products added.

object (ContactRequest)
object
loyaltyCard
string [ 0 .. 255 ] characters
variant
string 1 characters [AB]

Responses

Request samples

Content type
application/json
{
  • "orderType": "DELIVERY",
  • "due": "2019-08-24T14:15:22Z",
  • "address": {
    },
  • "buckets": [
    ],
  • "discardInvalidLines": false,
  • "contact": {
    },
  • "extra": {
    },
  • "loyaltyCard": "string",
  • "variant": "s"
}

newAggregatorOrder

Create new order from aggregator (already paid). In oauth2-client scenario required X-Tenant and X-User HTTP headers.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_AGGREGATOR + ROLE_PAYROLE_AGGREGATOR + ROLE_PAY_{paymentType})
Request Body schema: application/json
orderType
required
string
Enum: "DELIVERY" "TAKE_AWAY" "DINE_IN_OPEN" "DINE_IN" "GLOVO_DELIVERY" "GLOVO_TAKE_AWAY" "JUSTEAT_DELIVERY" "JUSTEAT_TAKE_AWAY" "UBER_DELIVERY" "UBER_TAKE_AWAY" "UBER_DINE_IN" "WOLT_DELIVERY" "WOLT_TAKE_AWAY" "WOLT_DINE_IN" "BOLT_DELIVERY" "BOLT_TAKE_AWAY" "BOLT_DINE_IN" "TAZZ_DELIVERY" "TAZZ_TAKE_AWAY" "UPMENU_DELIVERY" "UPMENU_TAKE_AWAY" "UPMENU_DINE_IN"
due
string <date-time>
object (Address)

Delivery address

Array of objects (AppendedBucket) [ 0 .. 5 ] items
discardInvalidLines
boolean
Default: false

Whether lines referencing invalid products should be discarded and order containing rest of lines should be created (when true) or whole order should be rejected if some lines do not validate (false). Can be used to post historical order again and have all still valid products added.

object (ContactRequest)
object
loyaltyCard
string [ 0 .. 255 ] characters
extId
string [ 8 .. 64 ] characters [a-zA-Z0-9_./-]+
object (Payment)
comment
string [ 3 .. 255 ] characters

Responses

Request samples

Content type
application/json
{
  • "orderType": "DELIVERY",
  • "due": "2019-08-24T14:15:22Z",
  • "address": {
    },
  • "buckets": [
    ],
  • "discardInvalidLines": false,
  • "contact": {
    },
  • "extra": {
    },
  • "loyaltyCard": "string",
  • "extId": "stringst",
  • "payment": {
    },
  • "comment": "string"
}

getList

Get paginated list of orders. This endpoint is compatible with React AdminOnRest framework to provide DataSource.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_ORDERSROLE_{venue}_MANAGERROLE_{venue}_ORDERS)
query Parameters
required
object (OrdersFilter)
header Parameters
x-tenant
string <uuid>

Responses

get

Get single order by ID.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>

Required when using client token

Responses

Response samples

Content type
{
  • "tenant": "93360892-48a4-4f76-a117-3304c9c61771",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "extId": "string",
  • "created": "2019-08-24T14:15:22Z",
  • "due": "2019-08-24T14:15:22Z",
  • "etf": "2019-08-24T14:15:22Z",
  • "closedDate": "2019-08-24T14:15:22Z",
  • "lastChanged": "2019-08-24T14:15:22Z",
  • "completedTime": "2019-08-24T14:15:22Z",
  • "verifiedTime": "2019-08-24T14:15:22Z",
  • "processingStartedTime": "2019-08-24T14:15:22Z",
  • "deliveredTime": "2019-08-24T14:15:22Z",
  • "source": "string",
  • "users": [
    ],
  • "loyaltyId": "string",
  • "coupons": [
    ],
  • "orderType": "DELIVERY",
  • "deliveryAddress": {
    },
  • "geoPosition": {
    },
  • "total": 0,
  • "editTotal": 0,
  • "status": "string",
  • "statusInfo": "string",
  • "comments": [
    ],
  • "claimCode": "string",
  • "variant": "s",
  • "buckets": [
    ],
  • "payments": [
    ],
  • "fiscal": [
    ],
  • "tax": [
    ],
  • "drsSummary": [
    ],
  • "extra": {
    },
  • "traces": {
    },
  • "logs": [
    ],
  • "locked": true,
  • "completed": true,
  • "verified": true,
  • "closed": true
}

exists

Check if order already exists. Used only internally.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>

Required when using client token

Responses

Response samples

Content type
{
  • "tenant": "93360892-48a4-4f76-a117-3304c9c61771",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "extId": "string",
  • "created": "2019-08-24T14:15:22Z",
  • "due": "2019-08-24T14:15:22Z",
  • "etf": "2019-08-24T14:15:22Z",
  • "closedDate": "2019-08-24T14:15:22Z",
  • "lastChanged": "2019-08-24T14:15:22Z",
  • "completedTime": "2019-08-24T14:15:22Z",
  • "verifiedTime": "2019-08-24T14:15:22Z",
  • "processingStartedTime": "2019-08-24T14:15:22Z",
  • "deliveredTime": "2019-08-24T14:15:22Z",
  • "source": "string",
  • "users": [
    ],
  • "loyaltyId": "string",
  • "coupons": [
    ],
  • "orderType": "DELIVERY",
  • "deliveryAddress": {
    },
  • "geoPosition": {
    },
  • "total": 0,
  • "editTotal": 0,
  • "status": "string",
  • "statusInfo": "string",
  • "comments": [
    ],
  • "claimCode": "string",
  • "variant": "s",
  • "buckets": [
    ],
  • "payments": [
    ],
  • "fiscal": [
    ],
  • "tax": [
    ],
  • "drsSummary": [
    ],
  • "extra": {
    },
  • "traces": {
    },
  • "logs": [
    ],
  • "locked": true,
  • "completed": true,
  • "verified": true,
  • "closed": true
}

listOpenedVenue

Get opened orders in venue. Used by KDS, queue displays etc.

Authorizations:
oauth2 (ROLE_SUROLE_MANAGERROLE_ORDERSROLE_KDSROLE_COOKROLE_WAITERROLE_{venue}_MANAGERROLE_{venue}_ORDERSROLE_{venue}_KDSROLE_{venue}_COOKROLE_{venue}_WAITER)
path Parameters
uid
required
string [ 3 .. 128 ] characters

Venue id

header Parameters
x-tenant
string <uuid>

Required when using client token

Responses

Response samples

Content type
[
  • {
    }
]

listOpened

Get opened orders for user.

Authorizations:
query Parameters
venue
string [ 3 .. 128 ] characters [a-zA-Z0-9_.-]+

Optional filter by venue (complementary to websocket filtering by venue)

header Parameters
x-tenant
string <uuid>

Required when using client token

Responses

Response samples

Content type
[
  • {
    }
]

listLast

Get last orders for user (all states included).

Authorizations:
header Parameters
x-tenant
string <uuid>

Required when using client token

Responses

Response samples

Content type
[
  • {
    }
]

comments

commentOrderLine

Add comment to order line.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

lid
required
string <uuid>

Line id

Request Body schema: application/json
string [ 3 .. 255 ] characters

Responses

Request samples

Content type
application/json
"string"

commentOrder

Add comment to order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
string [ 3 .. 255 ] characters

Responses

Request samples

Content type
application/json
"string"

verification

verifyOrderPayment

Verify order by ID if it can be paid.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

query Parameters
returnOrder
boolean
Default: false
header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
type
required
string
Enum: "CASH" "CARD" "COD" "TERMINAL" "EPAYMENT" "COUPON" "WALLET" "PREAUTHORIZED" "RETURN" "EXTERNAL"
source
required
string[\p{L}\p{N}_.-]+
amount
required
number

Responses

Request samples

Content type
application/json
{
  • "type": "CASH",
  • "source": "string",
  • "amount": 0
}

Response samples

Content type
{
  • "result": true,
  • "order": {
    },
  • "codes": [
    ]
}

fetch

verifyOrderPayment

Verify order by ID if it can be paid.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

query Parameters
returnOrder
boolean
Default: false
header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
type
required
string
Enum: "CASH" "CARD" "COD" "TERMINAL" "EPAYMENT" "COUPON" "WALLET" "PREAUTHORIZED" "RETURN" "EXTERNAL"
source
required
string[\p{L}\p{N}_.-]+
amount
required
number

Responses

Request samples

Content type
application/json
{
  • "type": "CASH",
  • "source": "string",
  • "amount": 0
}

Response samples

Content type
{
  • "result": true,
  • "order": {
    },
  • "codes": [
    ]
}

get

Get single order by ID.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>

Required when using client token

Responses

Response samples

Content type
{
  • "tenant": "93360892-48a4-4f76-a117-3304c9c61771",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "extId": "string",
  • "created": "2019-08-24T14:15:22Z",
  • "due": "2019-08-24T14:15:22Z",
  • "etf": "2019-08-24T14:15:22Z",
  • "closedDate": "2019-08-24T14:15:22Z",
  • "lastChanged": "2019-08-24T14:15:22Z",
  • "completedTime": "2019-08-24T14:15:22Z",
  • "verifiedTime": "2019-08-24T14:15:22Z",
  • "processingStartedTime": "2019-08-24T14:15:22Z",
  • "deliveredTime": "2019-08-24T14:15:22Z",
  • "source": "string",
  • "users": [
    ],
  • "loyaltyId": "string",
  • "coupons": [
    ],
  • "orderType": "DELIVERY",
  • "deliveryAddress": {
    },
  • "geoPosition": {
    },
  • "total": 0,
  • "editTotal": 0,
  • "status": "string",
  • "statusInfo": "string",
  • "comments": [
    ],
  • "claimCode": "string",
  • "variant": "s",
  • "buckets": [
    ],
  • "payments": [
    ],
  • "fiscal": [
    ],
  • "tax": [
    ],
  • "drsSummary": [
    ],
  • "extra": {
    },
  • "traces": {
    },
  • "logs": [
    ],
  • "locked": true,
  • "completed": true,
  • "verified": true,
  • "closed": true
}

exists

Check if order already exists. Used only internally.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>

Required when using client token

Responses

Response samples

Content type
{
  • "tenant": "93360892-48a4-4f76-a117-3304c9c61771",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "extId": "string",
  • "created": "2019-08-24T14:15:22Z",
  • "due": "2019-08-24T14:15:22Z",
  • "etf": "2019-08-24T14:15:22Z",
  • "closedDate": "2019-08-24T14:15:22Z",
  • "lastChanged": "2019-08-24T14:15:22Z",
  • "completedTime": "2019-08-24T14:15:22Z",
  • "verifiedTime": "2019-08-24T14:15:22Z",
  • "processingStartedTime": "2019-08-24T14:15:22Z",
  • "deliveredTime": "2019-08-24T14:15:22Z",
  • "source": "string",
  • "users": [
    ],
  • "loyaltyId": "string",
  • "coupons": [
    ],
  • "orderType": "DELIVERY",
  • "deliveryAddress": {
    },
  • "geoPosition": {
    },
  • "total": 0,
  • "editTotal": 0,
  • "status": "string",
  • "statusInfo": "string",
  • "comments": [
    ],
  • "claimCode": "string",
  • "variant": "s",
  • "buckets": [
    ],
  • "payments": [
    ],
  • "fiscal": [
    ],
  • "tax": [
    ],
  • "drsSummary": [
    ],
  • "extra": {
    },
  • "traces": {
    },
  • "logs": [
    ],
  • "locked": true,
  • "completed": true,
  • "verified": true,
  • "closed": true
}

listOpenedVenue

Get opened orders in venue. Used by KDS, queue displays etc.

Authorizations:
oauth2 (ROLE_SUROLE_MANAGERROLE_ORDERSROLE_KDSROLE_COOKROLE_WAITERROLE_{venue}_MANAGERROLE_{venue}_ORDERSROLE_{venue}_KDSROLE_{venue}_COOKROLE_{venue}_WAITER)
path Parameters
uid
required
string [ 3 .. 128 ] characters

Venue id

header Parameters
x-tenant
string <uuid>

Required when using client token

Responses

Response samples

Content type
[
  • {
    }
]

listOpened

Get opened orders for user.

Authorizations:
query Parameters
venue
string [ 3 .. 128 ] characters [a-zA-Z0-9_.-]+

Optional filter by venue (complementary to websocket filtering by venue)

header Parameters
x-tenant
string <uuid>

Required when using client token

Responses

Response samples

Content type
[
  • {
    }
]

listLast

Get last orders for user (all states included).

Authorizations:
header Parameters
x-tenant
string <uuid>

Required when using client token

Responses

Response samples

Content type
[
  • {
    }
]

fiscal

requestFiscal

Request fiscal data for order. Data is returnet through websocket.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_FISCALIZE)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>

Responses

addFiscalize

Add fiscal information to order. This should reflect printed fiscal strip.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_FISCALIZE)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>
Request Body schema: application/json
timestamp
required
string <date-time>
proforma
boolean
user
string <uuid>
venue
string[a-zA-Z0-9_.-]+
amount
required
number
printer
required
string [ 3 .. 64 ] characters
slip
required
string [ 3 .. 64 ] characters
taxId
string [ 0 .. 32 ] characters
message
string [ 0 .. 64 ] characters
Array of objects (SlipEntry)
Array of objects (DrsSummary) [ 0 .. 64 ] items
object
Array of objects (SubTotalDiscount) [ 0 .. 24 ] items
object

Responses

Request samples

Content type
application/json
{
  • "timestamp": "2019-08-24T14:15:22Z",
  • "proforma": true,
  • "user": "76f62a58-5404-486d-9afc-07bded328704",
  • "venue": "string",
  • "amount": 0,
  • "printer": "string",
  • "slip": "string",
  • "taxId": "string",
  • "message": "string",
  • "entries": [
    ],
  • "drsSummary": [
    ],
  • "payments": {
    },
  • "subTotalDiscounts": [
    ],
  • "extra": {
    }
}

payment

removeDeferredPayment

Remove deferred payment from order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_PAY)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>
Request Body schema: application/json
paymentId
required
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "paymentId": "472e651e-5a1e-424d-8098-23858bf03ad7"
}

payOrder

Add payment information to order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_PAYROLE_PAY_{paymentType})
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>
Request Body schema: application/json
type
required
string
Enum: "CASH" "CARD" "COD" "TERMINAL" "EPAYMENT" "COUPON" "WALLET" "PREAUTHORIZED" "RETURN" "EXTERNAL"
source
required
string[\p{L}\p{N}_.-]+
amount
required
number >= 0
deferred
boolean
Default: false

Payment is deferred, does not trigger next steps

object

Responses

Request samples

Content type
application/json
{
  • "type": "CASH",
  • "source": "string",
  • "amount": 0,
  • "deferred": false,
  • "extra": {
    }
}

paymentUpdate

Update payment information in order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGER)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>
Request Body schema: application/json
paymentId
required
string <uuid>
amount
number >= 0

Can be NULL then it is not altered in payment record.

object

Additional (extra) data.

Responses

Request samples

Content type
application/json
{
  • "paymentId": "472e651e-5a1e-424d-8098-23858bf03ad7",
  • "amount": 0,
  • "extra": {
    }
}

confirmDeferredPayments

Confirm deferred payments in order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_PAYROLE_CONFIRM_PAYMENTS)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
x-user
string <uuid>

Responses

lines

changeQuantities

Change lines quantity.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
required
Array of objects (LineQuantity)

Responses

Request samples

Content type
application/json
{
  • "lines": [
    ]
}

voidLineOrder

Mark order lines as voided.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

splitLines

Split order lines. Makes copies of existing order line with smaller quantities. Sum of quantities must match.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
required
Array of objects (LineSplit) [ 1 .. 2147483647 ] items

Responses

Request samples

Content type
application/json
{
  • "lines": [
    ]
}

removeLineOrder

Remove order line. Whether line can be removed depends on its state.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

processingLineOrder

Mark order lines as preparing/processing.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

processingLineOrder_1

Mark order lines as preparing/processing.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

processedLineOrder

Mark order line as processed/prepared.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

processedLineOrder_1

Mark order line as processed/prepared.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

alterLinesExtra

Change extra params in order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
required
Array of objects (LinesExtra)

Incremental change of extra params in lines

Responses

Request samples

Content type
application/json
{
  • "lines": [
    ]
}

confirmLineOrder

Mark order lines as confirmed.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
Array ()
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

appendLineOrder

Add order line to order.

Authorizations:
path Parameters
uid
required
string <uuid>

Order id

Request Body schema: application/json
venue
required
string
required
Array of objects (AppendedLine) [ 1 .. 32 ] items

Responses

Request samples

Content type
application/json
{
  • "venue": "string",
  • "lines": [
    ]
}

push

pushUpsell

Push upsell message to users of order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_PUSH)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
roles
Array of strings [ 0 .. 8 ] items
Items Enum: "CREATOR" "CUSTOMER" "COUPON" "KIOSK" "WAITER" "MANAGER" "VIEWER" "DRIVER" "STAFF"
object (Details)
showAs
required
string
Enum: "ANY" "POPUP" "SIDE" "BASKET"
items
required
Array of strings [ 1 .. 2147483647 ] items

Responses

Request samples

Content type
application/json
{
  • "roles": [
    ],
  • "details": {
    },
  • "showAs": "ANY",
  • "items": [
    ]
}

pushMessage

Push message to users of order.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_PUSH)
path Parameters
uid
required
string <uuid>

Order id

header Parameters
x-tenant
string <uuid>
Request Body schema: application/json
roles
Array of strings [ 0 .. 8 ] items
Items Enum: "CREATOR" "CUSTOMER" "COUPON" "KIOSK" "WAITER" "MANAGER" "VIEWER" "DRIVER" "STAFF"
object (Details)
code
string [ 0 .. 128 ] characters [\p{L}\p{N}_.-]+
message
string [ 0 .. 1024 ] characters
args
Array of strings [ 0 .. 32 ] items

Responses

Request samples

Content type
application/json
{
  • "roles": [
    ],
  • "details": {
    },
  • "code": "string",
  • "message": "string",
  • "args": [
    ]
}

kds

kdsTraceView

Track order visibility on KDS.

Authorizations:
oauth2 (ROLE_SUROLE_MANAGERROLE_ORDERSROLE_KDSROLE_COOKROLE_WAITERROLE_{venue}_MANAGERROLE_{venue}_ORDERSROLE_{venue}_KDSROLE_{venue}_COOKROLE_{venue}_WAITER)
path Parameters
uid
required
string <uuid>

Order id

query Parameters
config
string

KDS config

Responses

internal

syncOrder

Sync order from external source. It acts as snapshot and all required order structures must be filled.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_SYNC)
Request Body schema: application/json
tenant
required
string <uuid>

Tenant identifier

id
required
string <uuid>

Order identifier

extId
string

Additional identifier

created
required
string <date-time>

Timestamp of creation

due
string <date-time>

Timestamp of order due (for future orders)

etf
string <date-time>

Estimated Time of Fulfilment, defined as max(due, now + minDeliveryTime)

closedDate
string <date-time>

Timestamp of closing order

lastChanged
string <date-time>

Timestamp of last update

completedTime
string <date-time>

Timestamp of order completion

verifiedTime
string <date-time>

Timestamp of order verification

processingStartedTime
string <date-time>

Timestamp of order processing started (when first line got status above CONFIRMED)

deliveredTime
string <date-time>

Timestamp of delivery

source
required
string

Internal system param

Array of objects (OrderUser)

Users involved in this order

loyaltyId
string

Loyalty card id

Array of objects (OrderCoupon)

Coupons

orderType
required
string
Enum: "DELIVERY" "TAKE_AWAY" "DINE_IN_OPEN" "DINE_IN" "GLOVO_DELIVERY" "GLOVO_TAKE_AWAY" "JUSTEAT_DELIVERY" "JUSTEAT_TAKE_AWAY" "UBER_DELIVERY" "UBER_TAKE_AWAY" "UBER_DINE_IN" "WOLT_DELIVERY" "WOLT_TAKE_AWAY" "WOLT_DINE_IN" "BOLT_DELIVERY" "BOLT_TAKE_AWAY" "BOLT_DINE_IN" "TAZZ_DELIVERY" "TAZZ_TAKE_AWAY" "UPMENU_DELIVERY" "UPMENU_TAKE_AWAY" "UPMENU_DINE_IN"

Order type

object (Address)

Delivery address

object (GeoPosition)

Geo position for delivery

total
required
number

Order total

editTotal
required
number

Editing total (including lines that are not confirmed)

status
required
string

Order status

statusInfo
string

Additional status info

Array of objects (OrderComment)

Comments

claimCode
string

Secret code for order claims

variant
string 1 characters [AB]

Variant for AB testing

Array of objects (OrderBucket)

Buckets with order lines

Array of objects (OrderPayment)

Payments for this order

Array of objects (OrderFiscal)

Printed fiscal slips

Array of objects (TaxSummary) [ 0 .. 128 ] items

Tax summary

Array of objects (OrderDrsSummary) [ 0 .. 128 ] items

DRS summary

object

Extra params

object

Traces

Array of objects (OrderLog)

Logs

locked
boolean
completed
boolean
verified
boolean
closed
boolean

Responses

Request samples

Content type
application/json
{
  • "tenant": "93360892-48a4-4f76-a117-3304c9c61771",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "extId": "string",
  • "created": "2019-08-24T14:15:22Z",
  • "due": "2019-08-24T14:15:22Z",
  • "etf": "2019-08-24T14:15:22Z",
  • "closedDate": "2019-08-24T14:15:22Z",
  • "lastChanged": "2019-08-24T14:15:22Z",
  • "completedTime": "2019-08-24T14:15:22Z",
  • "verifiedTime": "2019-08-24T14:15:22Z",
  • "processingStartedTime": "2019-08-24T14:15:22Z",
  • "deliveredTime": "2019-08-24T14:15:22Z",
  • "source": "string",
  • "users": [
    ],
  • "loyaltyId": "string",
  • "coupons": [
    ],
  • "orderType": "DELIVERY",
  • "deliveryAddress": {
    },
  • "geoPosition": {
    },
  • "total": 0,
  • "editTotal": 0,
  • "status": "string",
  • "statusInfo": "string",
  • "comments": [
    ],
  • "claimCode": "string",
  • "variant": "s",
  • "buckets": [
    ],
  • "payments": [
    ],
  • "fiscal": [
    ],
  • "tax": [
    ],
  • "drsSummary": [
    ],
  • "extra": {
    },
  • "traces": {
    },
  • "logs": [
    ],
  • "locked": true,
  • "completed": true,
  • "verified": true,
  • "closed": true
}

stats

getTodayStats

Get paginated list of all venues stats for today. This endpoint is compatible with React AdminOnRest framework to provide DataSource.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_ORDERS)
query Parameters
required
object (StatsTodayFilter)
header Parameters
x-tenant
string <uuid>

Responses

getGlobalStats

Get paginated list of globals stats. This endpoint is compatible with React AdminOnRest framework to provide DataSource.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_ORDERS)
query Parameters
required
object (StatsFilter)
header Parameters
x-tenant
string <uuid>

Responses

getVenueStats

Get paginated list of single venue stats. This endpoint is compatible with React AdminOnRest framework to provide DataSource.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_ORDERSROLE_{venue}_MANAGERROLE_{venue}_ORDERS)
path Parameters
venue
required
string [ 1 .. 128 ] characters [a-zA-Z0-9_.-]+
query Parameters
required
object (StatsFilter)
header Parameters
x-tenant
string <uuid>

Responses

administration

getList

Get paginated list of orders. This endpoint is compatible with React AdminOnRest framework to provide DataSource.

Authorizations:
oauth2-clientoauth2 (ROLE_SUROLE_MANAGERROLE_ORDERSROLE_{venue}_MANAGERROLE_{venue}_ORDERS)
query Parameters
required
object (OrdersFilter)
header Parameters
x-tenant
string <uuid>

Responses