Order-Api (1.3.0)

Download OpenAPI specification:

The OktoPOS Manager OrderAPI provides a way to send orders into the OktoPOS Manager from third party applications.

Authentication

All functions in this API require a valid authentication token. You can find this token in your instance of OktoPOS Manager in OktoPOS -> System.

Preconditions

The OktoPOS Manager can only process orders with known articles identified by its ID. Also distribution channels and tax rates need to be identifiable. These information are available in the Article-Api. See article/openapi.yaml.

Changes:

1.1.0

  • Optional distributionchannel and tax in items

1.2.0

  • Additional field intermediary

1.3.0

  • Optional article identification

orders

create orders

Authorizations:
ApiKeyAuth
Request Body schema: */*
required
orderId
required
string

unique id of this order in sending system

required
object (Payment)
object (Customer)
object (Location)
required
Array of objects (Item)

A list of order items

status
required
string
required
object (PurchaseTime)

A datetime object with a separate named time zone.

object (Pickup)
orderType
string
Enum: "LOCAL" "PICKUP" "DELIVERY" "SHIPPING"

Type of order. Used to determine tax and handling.

Array of objects (TipTransaction)

list of tip transactions

sessionToken
string

feature for multiple related orders.

intermediary
string/^[\w\d\. \-]+$/u

The intermediary, marketplace or third party platform this specific order was generated on.

Responses

Response samples

Content type
application/json
{
  • "internalId": 12345
}

get all orders with status ready

Authorizations:
ApiKeyAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

set new status to an order

Authorizations:
ApiKeyAuth
Request Body schema: */*
required
orderId
required
integer

The ID of the order in OktoPOS Manager. Given when creating the order using order/create.

status
required
string
payload
object

Information about status change, this could be

  • produced orderId from another client, which want to change the status
  • date of change
  • some else information

Responses

Response samples

Content type
application/json
{
  • "success": true
}

set a new status for payment

Authorizations:
ApiKeyAuth
Request Body schema: */*
required
orderId
required
string
status
required
string

The status of the referenced payment. Should be one of

  • appointed
  • call_for_payment
  • paid
  • canceled
  • error
date
required
string

Responses