Skip to main content

Order API (2024-02)

APIs to manage orders and order-related resources, such as menus.

Cafeteria (Dine-in) Order

Creating, updating, and viewing cafeteria (dine-in) orders.

Query Order by ID

Get order information with status, customer information and currently added menus

path Parameters
id
required
string
query Parameters
lang
string

Responses

Begin Order

Begin the order, only allowed when the order is mutable.

path Parameters
id
required
string
Request Body schema: application/json
required
token
required
string

Token to authenticate the customer

Responses

Request samples

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

Append Menus to Order

Append menus to the order, only allowed when the order is mutable.

path Parameters
id
required
string
Request Body schema: application/json
required
token
required
string

Token to authenticate the customer

required
Array of objects (OrderMenuCreationDto_Front)

List of menus to append to the order

deviceTag
string [ 1 .. 32 ] characters

Arbitrary string to identify who made the request

lang
string

Language code to use for the response

Responses

Request samples

Content type
application/json
{
  • "token": "string",
  • "menus": [
    ],
  • "deviceTag": "string",
  • "lang": "string"
}

Finalize Order

Finalize the order, and no more menus can be added by user after this operation.

path Parameters
id
required
string
Request Body schema: application/json
required
token
required
string

Token to authenticate the customer

Responses

Request samples

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

Show Cart

Show the pending (un-submitted) cart of the order, including all menus and their quantities

path Parameters
id
required
string
query Parameters
lang
string

Language code to use for the response

Responses

Response samples

Content type
application/json
{
  • "menu": [
    ],
  • "subtotal": 2000,
  • "itemsCount": 2
}

Append to Cart

Append menus to pending (un-submitted) cart of the order

path Parameters
id
required
string
Request Body schema: application/json
required
token
required
string

Token to authenticate the customer

required
Array of objects (OrderMenuCreationDto_Front)

List of menus to append to the order

deviceTag
string [ 1 .. 32 ] characters

Arbitrary string to identify who made the request

lang
string

Language code to use for the response

Responses

Request samples

Content type
application/json
{
  • "token": "string",
  • "menus": [
    ],
  • "deviceTag": "string",
  • "lang": "string"
}

Response samples

Content type
application/json
{
  • "menu": [
    ],
  • "subtotal": 2000,
  • "itemsCount": 2
}

Clear Cart

Clear the pending (un-submitted) cart of the order

path Parameters
id
required
string
query Parameters
token
required
string

Responses

Append Menus from Cart

Append menus from the cart to the order and clear the cart. Only allowed when the order is mutable.

path Parameters
id
required
string
Request Body schema: application/json
required
token
required
string

Token to authenticate the customer

deviceTag
string [ 1 .. 32 ] characters

Arbitrary string to identify who made the request

Responses

Request samples

Content type
application/json
{
  • "token": "string",
  • "deviceTag": "string"
}

Response samples

Content type
application/json
{
  • "type": "cafeteria",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "status": 0,
  • "number": "1234",
  • "shopId": "70542939-296f-4335-b0b1-f4e5a2513ef7",
  • "amount": 1000,
  • "namePhonetic": "ちゅうもんしゃ",
  • "memo": "お箸をつけてください",
  • "predefinedPaymentToken": "string",
  • "paymentMethod": "creditcard(sp)",
  • "menu": [
    ],
  • "mutableToken": "string",
  • "tableNumber": "string",
  • "emailMasked": "e****s@t**.*m",
  • "phoneNumberMasked": "03****78",
  • "smaregiTempTransactionBarcode": "string"
}

Update Item in Cart

Update the quantity of a menu in the pending (un-submitted) cart of the order, or remove it if the quantity is 0

path Parameters
id
required
string
itemId
required
string
Request Body schema: application/json
required
token
required
string

Token to authenticate the customer

quantity
integer <int32> >= 0

Quantity of the menu

object

Merchant-specific metadata for the menu. It will not be stored.

Array of objects (VariationCreationDto_Front)

List of variations (toppings) for the menu

deviceTag
string [ 1 .. 32 ] characters

Arbitrary string to identify who made the request

lang
string

Language code to use for the response

Responses

Request samples

Content type
application/json
{
  • "token": "string",
  • "quantity": 1,
  • "metadata": {
    },
  • "variations": [
    ],
  • "deviceTag": "string",
  • "lang": "string"
}

Response samples

Content type
application/json
{
  • "menu": [
    ],
  • "subtotal": 2000,
  • "itemsCount": 2
}

(Admin) Create Order

Create a dine-in order for a shop.

Authorizations:
API Key
Request Body schema: application/json
required
shopId
required
string <uuid>

ID of the shop to place the order

Array of objects (OrderMenuCreationDto)

List of menu items to order

object (OrderMenuCreationDto)

Option for the order, corresponding to Shop.optionMenu

memo
string [ 0 .. 300 ] characters

Memo from the user who placed the order

payOffline
boolean
Default: false

Whether the order is paid offline (by cash or at register)

messageTo
string

Used for sending LINE message to the user who placed the order

membershipNumber
string [ 0 .. 32 ] characters

Membership number of the user who placed the order

extraParams
string

Extra parameters for the order, in HTTP query string format. Typically this will store unhandled parameters from order web app.

phoneNumber
string [ 0 .. 20 ] characters

Phone number for the order.

email
string [ 0 .. 100 ] characters

Email for the order.

tableNumber
string

Table number for the order.

mutable
boolean
Default: false

Whether the order is mutable (can append more items)

Responses

Request samples

Content type
application/json
{
  • "shopId": "193e9090-b271-11e9-a98f-06c62891570b",
  • "menu": [
    ],
  • "option": {
    },
  • "memo": "お箸をつけてください",
  • "payOffline": true,
  • "messageTo": "string",
  • "membershipNumber": "3000123456789",
  • "extraParams": "is_push=1",
  • "phoneNumber": "09012345678",
  • "email": "string",
  • "tableNumber": "001",
  • "mutable": true
}

Response samples

Content type
application/json
{
  • "type": "cafeteria",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "status": 0,
  • "number": "1234",
  • "shopId": "70542939-296f-4335-b0b1-f4e5a2513ef7",
  • "amount": 1000,
  • "namePhonetic": "ちゅうもんしゃ",
  • "memo": "お箸をつけてください",
  • "predefinedPaymentToken": "string",
  • "paymentMethod": "creditcard(sp)",
  • "menu": [
    ],
  • "mutableToken": "string",
  • "tableNumber": "string",
  • "emailMasked": "e****s@t**.*m",
  • "phoneNumberMasked": "03****78",
  • "smaregiTempTransactionBarcode": "string"
}

(Admin) Fetch Order Info

Fetch detailed information about an order.

Authorizations:
API Key
path Parameters
id
required
string

Responses

Response samples

Content type
application/json
{
  • "type": "cafeteria",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "status": 0,
  • "number": "1234",
  • "shopId": "70542939-296f-4335-b0b1-f4e5a2513ef7",
  • "amount": 1000,
  • "namePhonetic": "ちゅうもんしゃ",
  • "memo": "お箸をつけてください",
  • "predefinedPaymentToken": "string",
  • "paymentMethod": "creditcard(sp)",
  • "menu": [
    ],
  • "mutableToken": "string",
  • "tableNumber": "string",
  • "emailMasked": "e****s@t**.*m",
  • "phoneNumberMasked": "03****78",
  • "smaregiTempTransactionBarcode": "string"
}

Order Shop & Menus

Retrieve shop and menu information.

Get Shop Info

Get shop with order related information (menus, settings etc)

path Parameters
id
required
string <uuid>

ID of the shop

query Parameters
lang
string

Desired display language for translatable fields

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "number": "string",
  • "tel": "string",
  • "orderMenus": [
    ],
  • "orderOptionMenus": [
    ],
  • "deliveryAddresses": [
    ],
  • "orderSchedules": [
    ],
  • "isTakeoutSupported": "string",
  • "isDeliverySupported": "string",
  • "isCafeteriaSupported": "string",
  • "orderSettings": {
    },
  • "name": "string",
  • "address": "string",
  • "desc": "string",
  • "imageArray": [
    ]
}

Get Menu by ID

path Parameters
id
required
string <uuid>
query Parameters
lang
string

Desired display language for translatable fields

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "status": 20,
  • "type": 30,
  • "name": "親子丼",
  • "menuPrice": 1000,
  • "shortDesc": "たまごと鶏肉の親子丼",
  • "desc": "甘めのお出汁が染みた鶏肉にふわとろ卵が最高に美味しい親子丼です",
  • "imageArray": "/images/shop/[UUID]/filename.jpg",
  • "variations": [
    ],
  • "variationCategoryId": "2ea5d840-6de8-420f-afad-a9897b42a19b",
  • "variationCategoryRequired": true,
  • "variationCategoryExclusive": true,
  • "variationCategorySortOrder": 0,
  • "stockAvailable": true,
  • "variationCategoryDefaultChoiceName": "普通",
  • "variationCategoryName": "ご飯の量"
}

Get Multiple Menus by IDs

Lookup multiple menus by their IDs, with variations. Please use POST for large ids list.

query Parameters
ids
required
string <uuid>
lang
string

Desired display language for translatable fields

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Get Multiple Menus by IDs

Lookup multiple menus by their IDs, with variations. Please use POST for large ids list.

query Parameters
ids
required
string <uuid>
lang
string

Desired display language for translatable fields

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

List Menu Categories

List menu categories for a shop

query Parameters
shop
required
string <uuid>
lang
string

Desired display language for translatable fields

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List Menus by Category

List menus by category

query Parameters
category
required
string <uuid>
lang
string

Desired display language for translatable fields

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List Menus by Category

List menus by category

query Parameters
category
required
string <uuid>
lang
string

Desired display language for translatable fields

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List Menus by Category

List uncategorized menus

query Parameters
shop
required
string <uuid>
lang
string

Desired display language for translatable fields

Responses

Response samples

Content type
application/json
[
  • {
    }
]

List Menus by Category

List uncategorized menus

query Parameters
shop
required
string <uuid>
lang
string

Desired display language for translatable fields

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Order Menu Management

Managing order menus and menu items.

Create Import Session

Create signed upload URL to s3 for menu importing. Use PUT method to upload file.

Authorizations:
API Key

Responses

Start Import

Start import asynchronously. Use import-state to get import progress and result.

Authorizations:
API Key
query Parameters
shop
required
string
dryRun
boolean

If true, the menu file will be read, but not really imported.

deleteOld
boolean
Default: false

If true, ALL the menu data before upload will be deleted.

updateExisting
boolean
Default: false

If true, menu with same ID will be updated, instead of ignored.

keepStatus
boolean
Default: false
objectId
required
string
Example: objectId=order-imports/45558e90-9c3a-11e6-8faa-06f50ad66f63/7e920464-b0fc-4fd9-a47e-48e17eb1be51.zip

Object ID obtained from import-create

Responses

Import State

Get import progress and result.

Authorizations:
API Key
query Parameters
shop
required
string
objectId
string
Example: objectId=order-imports/45558e90-9c3a-11e6-8faa-06f50ad66f63/7e920464-b0fc-4fd9-a47e-48e17eb1be51.zip

Object ID obtained from import-create

Responses

Run Import Synchronously Deprecated

Run import synchronously. Deprecated due to bad user experience. Use import-start and import-state instead, to get import progress and result.

Authorizations:
API Key
query Parameters
shop
required
string
dryRun
boolean

If true, the menu file will be read, but not really imported.

deleteOld
boolean
Default: false

If true, ALL the menu data before upload will be deleted.

updateExisting
boolean
Default: false

If true, menu with same ID will be updated, instead of ignored.

keepStatus
boolean
Default: false
objectId
required
string
Example: objectId=order-imports/45558e90-9c3a-11e6-8faa-06f50ad66f63/7e920464-b0fc-4fd9-a47e-48e17eb1be51.zip

Object ID obtained from import-create

Responses