Epson TrueOrder KDS Epson TrueOrder KDS API Specification

Epson TrueOrder KDS Manual

Epson TrueOrder KDS manual content summary:

  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 1
    111-56-URM-010 TrueOrder KDS API Specification About this Specification This specification presents the TrueOrder KDS API (Application Programming Interface), which is served over HTTP for customers looking for deeper integration with the KDS. The endpoint accepts HTTP POST requests to provide
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 2
    Table of Contents 1. Introduction...3 2. API Interface...4 3. API and POS Parsers 5 4. Typical Order Receipt 6 4.1. JSON Schema ...7 4.1.1. JSON Schema: Detailed Description 7 4.2. Sample JSON Payload ...10 4.3. Response Error Codes ...11 5. Order Types...12 5.1. "new" Order...12 5.1.1. Request
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 3
    traditionally parses incoming "print jobs" from a Point of Sale System (POS) to an Epson POS printer. Each POS system that the Epson KDS supports requires a "parser" module to understand the format of the print job. This parser module is configured using the KDS Configuration Utility and the format
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 4
    between POS and KDS is done using HTTP port 80 (and port 443 if SSL is enabled): http(s)://192.168.192.168/cgi-bin/kdsapi/service.cgi HTTP POST (MAIN DELIVERY OPTION) - JSON data will be the body of HTTP POST request and response using the following Content-Type: Content-Type
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 5
    multiple inputs to the POS system. The POS parser would still listen to the traditional inputs -> TCP port 9100 (or ePOS XML). The KDS API service is listening on TCP port 80 (and port 443 if SSL is enabled). A POS parser needs to be selected when configuring the KDS. If a traditional
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 6
    4. Typical Order Receipt A sample of a typical order receipt or kitchen chit (printout): Server William Table 7 CK# 0012 1 Steak Burger 1 Fries No salt 1 Coke Regular No ice It can be broken down into the following basic fields: • Server Name • Table Number • Check Number • Item Qty •
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 7
    4.1. JSON Schema The interface to the KDS API is based on the following JSON schema: { "seq" : number, "type" : "string", "server" : "string", "table" : "string", "check" : "string", "cust_name" : "string", "cust_phone" : "string", "cust_email" : "string", "itemlist" : [ { "itemid" : number, "item"
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 8
    • "server" - Server name as it would be displayed in the KDS order header. It could be replaced with other text such as "Pickup", or "Delivery". While 0-35 ASCII characters are accepted the server name should be kept small so as to be displayed fully in the order header. • "table" - Table number as
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 9
    . The best practice is for the first item in the list to have an id of 1 and then increase for every item. Numbers 1-99 are supported. • "modifier" - Description of the modifier as displayed on the Epson KDS. 0-35 ASCII characters. • "colour" - can be "normal" (default) or "alert" to show the text
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 10
    4.2. Sample JSON Payload { "seq" : 1, "type" : "new", "server" : "William", "table" : "7", "check" : "12", "cust_name" : "Robert", "cust_phone" : "5555555555", "cust_email" : "[email protected]", "itemlist" : [ { "itemid" : 1, "qty" : 1, "item" : "Steak Burger" }, { "itemid" : 2, "qty" : 1, "item" :
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 11
    4.3. Response Error Codes The KDS will send back a response indicating success or failure. Upon success the following is returned: { "errorcode" : 0, "description" : "success" } Upon failure, an appropriate "errorcode" from the list below is returned: • 1 - json syntax error • 2 - callback entry
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 12
    5. Order Types 5.1. "new" Order 5.1.1. Request to KDS Request for a brand-new order to be sent to the KDS: { "seq" : 1, "type" : "new", "server" : "William", "table" : "7", "check" : "12", "cust_name" : "Robert", "cust_phone" : "5555555555", "cust_email" : "[email protected]", "itemlist
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 13
    5.1.2. Response from KDS The KDS sends back a response indicating success or failure. Response error codes are listed in Section 4.3. 5.1.3. Example JSON { "seq": 1, "type": "new", "server": "John Smith", "table": "Tbl 10", "check": "Chk 2022", "itemlist": [ { "itemid": 1, "header": "-- Dine In
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 14
    5.2. "append" Order 5.2.1. Request to KDS Request for an addition to be sent to an already existing order. The check number should match a previous order: { "seq" : 2, "type" : "append", "server" : "William", "table" : "7", "check" : "12" "itemlist" : [ { "itemid" : 8, Unique positive number within
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 15
    5.2.3. Example Here we append to the same order sent in Example 5.1.3. JSON { "seq": 2, "type": "append", "server": "John Smith", "table": "Tbl 10", "check": "Chk 2202", "itemlist": [ { "itemid": 4, "qty": 1, "item": "Classic Hamburger", "modifierlist": [ { "modifier": "No Pickle" } ] } ] } On-
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 16
    5.3. "void" Order 5.3.1. Request to KDS Voiding the order will be facilitated with 'itemid' field to un-ambiguously find the exact item within the order. When voiding "Fries" and "Coke" from above order, POS will send { "seq" : 3, "type" : "void", "server" : "William", "table" : "7", "check" : "
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 17
    5.3.3. Example Here we void a single item, and then void the entire order from Section 5.1.3. JSON Single item void: { "seq": 1, "type": "void", "server": "John Smith", "table": "Tbl 10", "check": "Chk 2022", "itemlist": [ { "itemid": 3 } ] } On-Screen Order Full order void: { "seq": 1, "type": "
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 18
    5.4. "status" of Order(s) 5.4.1. Requests to KDS 5.4.1.1. Single Order Status Request For a single order, { "seq" : 4, "type" : "status", "statusof" : "ordersonly", "orderlist" : [ { "table" : "7", "check" : "12" } ] } 5.4.1.2. Multiple Orders Status Request For multiple orders, orderlist will
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 19
    If orderslist is missing from the request to the KDS, then it implies all active orders, in which case all active orders will indeed be returned. Furthermore, the parameter statusof can be: • "ordersonly" - for the status of orders, and the counts of active, bumped, voided items. • "ordersanditems"
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 20
    • "activeitemcount" - the number of active items • "bumpeditemcount" - the number of bumped items • "voideditemcount" - the number of voided items • "totalitemcount" - the number of items in total, which is sum of above counts. 5.4.2.1. "ordersonly" Response Type If the request was "ordersonly",
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 21
    5.4.2.2. "ordersanditems" Response Type If the request was "ordersanditems", then KDS will return order status, item counts, and item status in further detail. { "errorcode" : 0, "description" : "success", "orderlist" : [ { "check" : "15", "table" : "Table 9", "server" : "William", "cust_name" : "
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 22
    5.4.2.3. "status" Error Response If there is an error responding to a "status" request on the KDS side, the response will contain the appropriate error code as per Section 4.3. Form: F-730-028 v1.00 TrueOrder KDS API Specification Page 22 of 32 Trademarks 111-56-URM-010 R3.00
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 23
    6. Callback Registration Callbacks can be registered with a KDS device for the customer's own server to receive information for various events, such as new order entry, or an order or item bump. 6.1. "callback" Request to KDS { "seq" : 11, "type" : "callback", "callbackid" : 1, "action" : "set", "
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 24
    o "onunbump" - KDS will return both check, table and itemid when an item is unbumped. o "onrecall" - KDS will return both check, table when an order recall takes place. 6.2. "callback" Response from KDS The KDS sends back a response indicating success or failure. Response error codes are listed in
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 25
    7. Callback Notifications from KDS 7.1. "onenter" Callback The "new", "append", "void" requests will all generate "onenter" callback, with type "new", "append", or "void" separately. If the trigger is "onenter" then the KDS will send the original print job to the registered callback URL in the
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 26
    { "type" : "append", "check" : "0025", "table" : "Table 15", "server" : "Mark"," "cust_name" : "Robert", "cust_phone" : "5555555555", "cust_email" : "[email protected]", "itemlist" : [ { "itemid" : 8, "qty" : 1, "item" : "Classic Burger", "modifierlist" : [ { "modifier" : "No pickle" } ] } ] } Form
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 27
    • Callback for "void" Callback generated by void item 1 of above example will be: { "type" : "void", "check" : "0025", "table" : "Table 15", "server" : "Mark"," "cust_name" : "Robert", "cust_phone" : "5555555555", "cust_email" : "[email protected]", "itemlist" : [ { "itemid" : 1, "qty" : 1, "item" :
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 28
    7.2. "onbump" Callback If the trigger is "onbump" and an order is bumped, then KDS will send check, table of the bumped order. Optional "cust_name", "cust_phone" and "cust_name" will be included if these fields were included in "new" order request. { "type" : "callback", "callbackid" : 1, "trigger"
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 29
    7.3. "onpriority" Callback If the trigger is "onpriority" or "onrush", and an order becomes Priority or Rush, respectively, then KDS will send check, table of that order. { "type" : "callback", "callbackid" : 2, "trigger" : "onpriority", "check" : "12", "table" : "Table 7" } 7.4. "onrush" Callback {
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 30
    7.6. "onrecall" Callback If the trigger is "onrecall" and an order is recalled, then KDS will send check, table of the bumped order. { "type" : "callback", "callbackid" : 1, "trigger" : "onrecall", "check" : "12", "table" : "Table 7", "cust_name" : "Robert", "cust_phone" : "5555555555", "cust_email"
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 31
    8. "status" of Callback 8.1. Request to KDS { "type" : "status", "seg" : 12, "statusof" : "callback", "callbacklist" : [ { "callbackid" : 1 }, { "callbackid" : 2 }, { "callbackid" : 3 } ] } If callbacklist is missing or empty, then it implies all existing callbacks. 8.2. Response from KDS { "
  • Epson TrueOrder KDS | Epson TrueOrder KDS API Specification - Page 32
    9. Callback Behavior in Multi-Station Mode In single station mode the behavior is simple: when a certain action occurs, and if the corresponding callback is registered, then the KDS station sends the callback data to the registered server URL (endpoint). For multi-station mode, each KDS device
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

TrueOrder KDS
API Specification
Page 1 of 32
111-56-URM-010
R3.00
Form: F-730-028 v1.00
About this Specification
This specification presents the TrueOrder KDS API (Application Programming Interface),
which is served over HTTP for customers looking for deeper integration with the KDS. The
endpoint accepts HTTP POST requests to provide details on active orders; the client can
either poll order status or register for callbacks from the KDS for actions such as item and
order bumps and new order entry.
EPSON is a registered trademark and EPSON is a registered logomark of Seiko Epson Corporation.
All other product and brand names
are trademarks and/or registered trademarks of their respective companies. Epson disclaims any and all rights in these marks.
Copyright 2023 Seiko Epson Corporation.
111-56-URM-010
TrueOrder KDS
API Specification