Skip to main content

Pragma API (1)

Download OpenAPI specification:Download

Pragma provides a REST API exposing a set resources from our compatible POS solutions. This API is designed to be used by third-party applications from partners.

Server Health

This section contains an endpoint for checking if the server is online.

Get server health

Get the health of the server and some useful information.

Authorizations:
apiKey

Responses

Response Schema: application/json
status
required
string

Status of the server

uptime
required
string

Uptime of the server

docURL
required
string <uri>

URL of the API documentation

apiVersions
required
string

List of API versions

Response samples

Content type
application/json
{}

Reports

This section contains endpoints for managing reports.

Get list of reports

Get a list of reports ordered by created date from a location depending on the page parameters provided.

Authorizations:
apiKey
query Parameters
since
string^[0-9]{4}-(((0[13578]|(10|12))-(0[1-9]|[1-2][...

Start date for date range (first day included). Accepts a date in the format ISO 8601 : YYYY-MM-DD

until
string^[0-9]{4}-(((0[13578]|(10|12))-(0[1-9]|[1-2][...

End date for date range (last day included). Accepts a date in the format ISO 8601 : YYYY-MM-DD

index
integer >= 0
Default: 0

Index of the page query parameter

size
integer [ 1 .. 100 ]
Default: 10

Number of record on a page query parameter (capped to 100)

Responses

Response Schema: application/json
required
Array of objects
Example: "[object Object]"
required
object

Metadata for list of elements

object

Links for pagination

nextPageToken
string

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "meta": {
    }
}

Get a report

Get a report based on the id provided.

Authorizations:
apiKey
path Parameters
id
required
string <uuid>

Report id path parameter

Responses

Response Schema: application/json
id
required
string <uuid>

Unique identifier of the report

createdAt
required
string <date-time>

Date when the report was first recorded by the server

updatedAt
required
string <date-time>

Date when the report was last updated

locationId
required
string <uuid>

Unique identifier of the seller location that this order is associated with

startedAt
required
string <date-time>

Start date of the report. This date is generated by the customer's device. As such, we cannot guarantee its consistency.

finalizedAt
required
string <date-time>

End date of the report. This date is generated by the customer's device. As such, we cannot guarantee its consistency.

deviceName
required
string

Name of the customer's device

deviceIdentifier
required
string or null

Unique identifier of the POS that opened the report session.

reportNumber
required
integer >= 1

The report number

guestsNumber
required
integer >= 0

Number of guests

totalSales
required
number

Total report sales (tax included). This amount does not include transferred orders (see also Order Transferred)

required
object

Header info of the location

required
Array of objects

List of aggregated sales data for each product

required
Array of objects

List of shift data for each clerk

clerkName
required
string or null

Name of the clerk who closed the till session

clerkId
required
string or null <uuid>

Unique identifier of the clerk who closed the till session

required
Array of objects

List of discounts

required
Array of objects

List of taxes

required
Array of objects

List of payments

required
Array of objects

List of accounting entries

initialCashBalance
required
integer or null >= 0

Initial cash fund when the till session was opened.

finalCashBalance
required
integer or null >= 0

Final cash fund once the till session was closed.

orders
required
Array of strings

List of unique identifiers of orders

Response samples

Content type
application/json
{
  • "id": "9f3ffd49-7148-469d-ae3e-b34f84e16d33",
  • "createdAt": "2024-04-29T14:21:04.225Z",
  • "updatedAt": "2024-04-29T14:21:04.225Z",
  • "locationId": "671bd3b3-c942-4989-95ba-76776a6b6cb7",
  • "startedAt": "2024-03-13T13:24:14.000Z",
  • "finalizedAt": "2024-03-13T14:14:08.000Z",
  • "deviceName": "TestBox",
  • "deviceIdentifier": null,
  • "reportNumber": 1,
  • "guestsNumber": 146,
  • "totalSales": 1000,
  • "reportHeaderInfo": {
    },
  • "reportProducts": [
    ],
  • "reportClerksShift": [
    ],
  • "clerkName": null,
  • "clerkId": null,
  • "reportDiscounts": [
    ],
  • "reportTaxes": [
    ],
  • "reportPayments": [
    ],
  • "initialCashBalance": 3000,
  • "finalCashBalance": 11000,
  • "reportEntries": [
    ],
  • "orders": [
    ]
}

Get list of reports

Get a list of reports ordered by created date from a location depending on the page parameters provided.

Authorizations:
apiKey
query Parameters
since
string^[0-9]{4}-(((0[13578]|(10|12))-(0[1-9]|[1-2][...

Start date for date range (first day included). Accepts a date in the format ISO 8601 : YYYY-MM-DD

until
string^[0-9]{4}-(((0[13578]|(10|12))-(0[1-9]|[1-2][...

End date for date range (last day included). Accepts a date in the format ISO 8601 : YYYY-MM-DD

index
integer >= 0
Default: 0

Index of the page query parameter

size
integer [ 1 .. 100 ]
Default: 10

Number of record on a page query parameter (capped to 100)

locationId
string <uuid>

Location id query parameter

Responses

Response Schema: application/json
required
Array of objects
required
object

Metadata for list of elements

object

Links for pagination

nextPageToken
string

Response samples

Content type
application/json
{}

Get a report by id

Get a report based on the id provided.

Authorizations:
apiKey
path Parameters
id
required
string <uuid>

Report id path parameter

query Parameters
locationId
string <uuid>

Location id query parameter

Responses

Response Schema: application/json
id
string <uuid>
locationId
required
string <uuid>
tillId
required
string <uuid>
required
string or string <date-time>
required
string or string <date-time>
deviceName
required
string
deviceIdentifier
required
string or null
reportNumber
required
integer
guestsNumber
required
integer
totalSales
required
integer
clerkName
required
string or null
clerkId
required
string or null
initialCashBalance
required
integer or null >= 0
finalCashBalance
required
integer or null >= 0
orderCount
required
integer >= 0
required
Array of objects
required
Array of objects
required
Array of objects
required
Array of objects
required
Array of objects
required
Array of objects
required
Array of objects
required
Array of objects

List of Report V2 clerk shifts

required
Array of objects
required
Array of objects
required
Array of objects

List of Report V2 Aggregated sales data for a menu

required
Array of objects
reportVersion
required
integer >= 1
required
Array of objects
establishmentName
string or null

Report establishment name

siretCode
string or null

Report company SIRET code

customHeader
string or null

Report custom header

customFooter
string or null

Report custom footer

companyName
string or null

Report company name

phoneNumber
string or null

Report phone number

website
string or null

Report website URL

locale
string or null
Enum: "ff_Adlm_GN" "hr_BA" "en_CM" "en_BI" "en_AE" "rw_RW" "en_SZ" "he_IL" "en_PN" "en_NF" "es_KY" "rwk_TZ" "zh_Hant_TW" "en_CN" "gsw_LI" "ta_IN" "th_TH" "es_EA" "fr_GF" "en_RW" "tr_TR" "de_CH" "ee_TG" "en_NG" "fr_TG" "fr_SC" "rhg_Rohg_MM" "es_HN" "en_CO" "pa_Aran_PK" "en_AG" "ccp_IN" "ru_KZ" "nv_US" "so_ET" "ff_Adlm_NG" "zh_Hant_MO" "de_BE" "km_KH" "nus_SS" "my_MM" "mgh_MZ" "ee_GH" "es_EC" "kw_GB" "sm_WS" "rm_CH" "mk_MK" "bs_Cyrl_BA" "ar_MR" "en_BM" "en_AI" "gl_ES" "apw_US" "en_PR" "trv_TW" "ne_IN" "en_BN" "or_IN" "byn_ER" "khq_ML" "en_MG" "iu_CA" "en_LC" "pt_TL" "ta_SG" "tn_ZA" "jmc_TZ" "ceb_PH" "om_ET" "lv_LV" "ps_PK" "es_US" "en_PT" "vai_Latn_LR" "en_NL" "to_TO" "cgg_UG" "en_MH" "ur_Arab_PK" "zu_ZA" "shi_Latn_MA" "brx_IN" "ar_KM" "en_AL" "chr_US" "yo_BJ" "fr_VU" "ksh_DE" "sw_CD" "te_IN" "fr_RE" "yo_NG" "es_HT" "nqo_GN" "guz_KE" "kl_GL" "ksf_CM" "mua_CM" "lag_TZ" "fr_TN" "es_PA" "pl_PL" "hi_IN" "dje_NE" "en_CV" "es_GQ" "en_BR" "kok_IN" "ss_ZA" "fr_GN" "es_CA" "en_PW" "en_NO" "nyn_UG" "nr_ZA" "oc_FR" "sr_Latn_RS" "gsw_FR" "ps_AF" "lu_CD" "mgo_CM" "qu_BO" "en_BS" "sn_ZW" "doi_IN" "ss_SZ" "gu_IN" "wo_SN" "en_CX" "en_ZM" "fr_HT" "fr_GP" "pt_GQ" "es_TT" "ln_CD" "el_GR" "en_MM" "en_KE" "ff_Latn_GW" "ur_Aran_PK" "en_CY" "es_GT" "twq_NE" "zh_Hant_HK" "kln_KE" "fr_GQ" "es_UY" "fr_CA" "ms_BN" "en_NR" "fr_SN" "es_PE" "sw_TZ" "wae_CH" "dz_BT" "en_CZ" "teo_KE" "en_AR" "ar_JO" "yue_Hans_CN" "mer_KE" "ln_CF" "nn_NO" "ve_ZA" "en_MO" "ar_TD" "en_BW" "en_AS" "ar_IL" "es_BB" "bo_CN" "ff_Latn_GM" "hy_AM" "ln_CG" "sr_Latn_BA" "teo_UG" "en_MP" "sd_Deva_IN" "ksb_TZ" "ar_SA" "smn_FI" "ar_LY" "en_AT" "so_KE" "fr_CD" "af_NA" "en_NU" "es_PH" "en_KI" "ba_RU" "en_JE" "ff_Latn_GH" "dv_MV" "en_AU" "fa_IR" "pt_FR" "uz_Latn_UZ" "zh_Hans_CN" "ewo_CM" "jv_ID" "fr_PF" "ca_IT" "es_GY" "en_BZ" "ar_KW" "am_ET" "fr_FR" "ff_Latn_SL" "en_VC" "es_DM" "fr_DJ" "pt_GW" "fr_CF" "es_SV" "en_MS" "pt_ST" "ar_SD" "luy_KE" "gd_GB" "de_LI" "it_VA" "ff_Adlm_GW" "fr_CG" "ckb_IQ" "pt_CH" "zh_Hans_SG" "en_MT" "sc_IT" "ha_NE" "en_ID" "af_ZA" "om_KE" "os_GE" "nl_SR" "es_ES" "es_DO" "ar_IQ" "sat_Olck_IN" "en_UA" "tig_ER" "fr_CH" "nnh_CM" "en_MU" "en_US_POSIX" "yav_CM" "luo_KE" "dua_CM" "et_EE" "en_IE" "ak_GH" "es_CL" "kea_CV" "fr_CI" "ckb_IR" "fr_BE" "en_NZ" "syr_IQ" "en_MV" "en_LR" "ha_NG" "en_KN" "nb_SJ" "tn_BW" "sr_Cyrl_RS" "ru_RU" "en_ZW" "ff_Adlm_GM" "ga_IE" "sv_AX" "en_VG" "ky_KG" "agq_CM" "fr_BF" "naq_NA" "mr_IN" "en_MW" "de_AT" "en_LS" "sat_Deva_IN" "sr_Latn_ME" "wa_BE" "fr_NC" "fr_WF" "is_IS" "kpe_LR" "ig_NG" "fo_FO" "ff_Adlm_GH" "en_MX" "en_LT" "bas_CM" "pcm_NG" "sd_Arab_PK" "se_NO" "nl_BE" "ar_QA" "rn_BI" "es_CO" "az_Latn_AZ" "en_VI" "es_AG" "rhg_Rohg_BD" "en_MY" "fr_SY" "ar_TN" "en_JM" "fr_PM" "ff_Adlm_SL" "st_ZA" "fr_NE" "fr_MA" "co_FR" "nso_ZA" "ru_MD" "kaj_NG" "saq_KE" "fr_CM" "lb_LU" "gv_IM" "fr_BI" "en_LV" "en_KR" "ks_Arab_IN" "es_NI" "en_GB" "nl_SX" "dav_KE" "tr_CY" "en_UG" "es_BM" "en_TC" "ar_EG" "fr_BJ" "es_PR" "fr_RW" "lrc_IQ" "sr_Cyrl_BA" "fr_MC" "bez_TZ" "ga_GB" "es_CR" "ms_ID" "asa_TZ" "ar_EH" "fo_DK" "ms_Arab_BN" "en_JP" "sbp_TZ" "en_IL" "lt_LT" "en_GD" "moh_CA" "es_LC" "ca_FR" "ts_ZA" "ff_Latn_SN" "ug_CN" "es_BO" "en_SA" "fr_BL" "bn_IN" "uz_Cyrl_UZ" "lrc_IR" "en_IM" "sw_KE" "en_SB" "haw_US" "ar_SO" "en_IN" "hi_Latn_IN" "cv_RU" "fr_MF" "en_WS" "es_CU" "es_BQ" "ja_JP" "fy_NL" "en_SC" "yue_Hant_HK" "en_IO" "pt_PT" "en_HK" "ks_Aran_IN" "en_GG" "fr_MG" "ff_Latn_MR" "de_LU" "zh_Hant_CN" "tzm_MA" "es_BR" "en_TH" "en_SD" "nds_DE" "ln_AO" "ny_MW" "ain_JP" "as_IN" "en_GH" "ms_MY" "ro_RO" "jgo_CM" "es_CW" "en_UM" "es_BS" "en_SE" "kn_IN" "en_KY" "vun_TZ" "en_GI" "ca_ES" "mni_Mtei_IN" "pt_CV" "pt_BR" "ar_DJ" "fi_FI" "es_PY" "ar_SS" "sr_Cyrl_ME" "vai_Vaii_LR" "nl_NL" "en_TK" "fr_DZ" "en_SG" "ca_AD" "si_LK" "sv_SE" "pt_AO" "xog_UG" "ff_Adlm_SN" "syr_SY" "seh_MZ" "es_AR" "sk_SK" "en_SH" "ti_ER" "az_Cyrl_AZ" "nd_ZW" "kcg_NG" "el_CY" "wal_ET" "nl_BQ" "da_GL" "fr_ML" "gaa_GH" "en_VU" "ff_Latn_BF" "ebu_KE" "rof_TZ" "ru_KG" "en_SI" "sa_IN" "sg_CF" "mfe_MU" "ff_Latn_LR" "en_GM" "en_FI" "en_EE" "zgh_MA" "kam_KE" "ar_ER" "ti_ET" "ur_Arab_IN" "ff_Adlm_MR" "fa_AF" "nl_CW" "en_FJ" "pt_MO" "en_US" "en_TO" "en_SK" "mi_NZ" "arn_CL" "ru_BY" "it_IT" "ml_IN" "gsw_CH" "qu_EC" "zh_Hans_JP" "ff_Latn_CM" "sv_FI" "en_FK" "ff_Latn_NE" "ta_LK" "es_BZ" "en_SL" "es_VC" "ar_BH" "ar_SY" "lo_LA" "ne_NP" "ks_Deva_IN" "be_BY" "es_IC" "sr_Latn_XK" "ar_MA" "pa_Guru_IN" "kde_TZ" "fur_IT" "gez_ER" "hu_HU" "ar_AE" "en_HU" "sah_RU" "en_FM" "fr_MQ" "ko_KP" "en_DE" "ce_RU" "en_CA" "hsb_DE" "sq_AL" "en_TR" "sm_AS" "ro_MD" "es_VE" "tg_TJ" "mt_MT" "nmg_CM" "ms_SG" "en_GR" "ru_UA" "fr_MR" "xh_ZA" "zh_Hans_MO" "de_IT" "ku_TR" "ccp_BD" "kpe_GN" "myv_RU" "ff_Adlm_BF" "es_KN" "nds_NL" "sw_UG" "ko_KR" "tt_RU" "en_DG" "bo_IN" "en_CC" "shi_Tfng_MA" "it_SM" "en_TT" "ms_Arab_MY" "os_RU" "sq_MK" "es_VG" "ff_Adlm_LR" "bem_ZM" "ar_OM" "kk_KZ" "gez_ET" "scn_IT" "es_MX" "en_GU" "fr_MU" "fr_KM" "ar_LB" "en_TV" "mzn_IR" "mai_IN" "es_VI" "ff_Adlm_CM" "kab_DZ" "fil_PH" "ff_Adlm_NE" "se_SE" "hr_HR" "bs_Latn_BA" "nl_AW" "so_SO" "ar_PS" "en_FR" "en_BB" "ki_KE" "en_TW" "en_SS" "mg_MG" "mas_KE" "ff_Latn_GN" "en_PG" "dyo_SN" "bn_BD" "nb_NO" "da_DK" "en_DK" "st_LS" "cy_GB" "fr_YT" "ses_ML" "en_PH" "de_DE" "ar_YE" "es_TC" "bm_ML" "lkt_US" "uz_Arab_AF" "sl_SI" "gn_PY" "pt_LU" "en_CH" "en_BD" "lg_UG" "qu_PE" "id_ID" "en_NA" "en_GY" "ff_Latn_NG" "fr_LU" "pt_MZ" "mas_TZ" "en_DM" "es_GD" "en_BE" "ta_MY" "fr_GA" "ka_GE" "en_TZ" "eu_ES" "ar_DZ" "so_DJ" "su_Latn_ID" "pa_Arab_PK" "en_ER" "se_FI" "vi_VN" "en_PK" "ast_ES" "ha_GH" "sq_XK" "it_CH" "tk_TM" "en_CK" "br_FR" "en_BG" "sr_Cyrl_XK" "en_SX" "bg_BG" "en_PL" "cs_CZ" "fr_TD" "zh_Hans_HK" "mn_MN" "dsb_DE" "ii_CN" "en_CL" "en_ZA" "mni_Beng_IN" "en_RU" "kkj_CM" "uk_UA"

Report locale

address1
string or null

Report address 1

address2
string or null

Report address 2

logoUrl
string or null

Report image URL

zipCode
string or null

Report ZIP code

tvaCode
string or null

Report TVA code

country
string or null

Report country

nafCode
string or null

Report NAF code

city
string or null

Report city

note
string or null

Report note

Response samples

Content type
application/json
{
  • "deviceName": "POS Terminal 01",
  • "deviceIdentifier": "abc123-987zyx",
  • "startedAt": "2024-10-01T08:00:00.000Z",
  • "finalizedAt": "2024-10-01T16:00:00.000Z",
  • "reportNumber": 124578,
  • "clerkName": "Marie Dupont",
  • "clerkId": "clerk-7894",
  • "initialCashBalance": 500,
  • "finalCashBalance": 1300.5,
  • "tillId": "9f3ffd49-7148-469d-ae3e-b34f84e16d33",
  • "locationId": "671bd3b3-c942-4989-95ba-76776a6b6cb7",
  • "orders": [
    ],
  • "guestsNumber": 25,
  • "totalSales": 2000.75,
  • "reportProducts": [
    ],
  • "reportClerksShift": [
    ],
  • "reportDiscounts": [
    ],
  • "reportTaxes": [
    ],
  • "reportPayments": [
    ],
  • "reportEntries": [
    ],
  • "orderCount": 20,
  • "reportRecordedPayments": [
    ],
  • "reportCancellations": [
    ],
  • "reportTransferred": [
    ],
  • "reportModifiers": [
    ],
  • "reportRooms": [
    ],
  • "reportMenus": [
    ],
  • "reportVersion": 1,
  • "id": "rep-123456",
  • "establishmentName": "Le Gourmet Restaurant",
  • "siretCode": "123 456 789 00012",
  • "customHeader": "Daily Report",
  • "customFooter": "Thank you for visiting!",
  • "companyName": "Le Gourmet Inc.",
  • "phoneNumber": "01 23 45 67 89",
  • "website": "www.GT.com",
  • "locale": "fr_GF",
  • "address1": "12 Rue de Paris",
  • "address2": "Floor 2",
  • "zipCode": "75001",
  • "tvaCode": "FR123456789",
  • "country": "France",
  • "nafCode": "5610A",
  • "city": "Paris",
  • "note": "No issues reported during the shift."
}

Catalog

This section contains endpoints for managing the catalog.

Get catalog products

Get all catalog products configured on the POS.

Authorizations:
apiKey

Responses

Response Schema: application/json
Array
id
required
string <uuid>

Product ID in the catalog

name
required
string

Product name

category
required
string

Product category

categoryId
required
string <uuid>

Product category ID in the catalog

Array of objects
Default: []

List of subcategories - keep in mind that a product can be in multiple subcategories. If this array is empty, the product is not in any subcategory and has been archived.

required
Array of objects

List of price and tax rate for each type of price (we also provide the type name)

sku
string or null

Product stock keeping unit. More info here

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    },
  • {
    }
]

Get the catalog payments

Get catalog payments configured on the POS.

Authorizations:
apiKey

Responses

Response Schema: application/json
Array
id
required
string <uuid>

Payment method client id

name
required
string

Payment method name

enabled
required
boolean

Availability of the payment method

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    }
]

Get the catalog taxes

Get catalog taxes list configured on the POS.

Authorizations:
apiKey

Responses

Response Schema: application/json
Array
id
required
string <uuid>

Tax client id

name
required
string

Tax name

percentage
required
integer

Tax rate

Response samples

Content type
application/json
[
  • {
    },
  • {
    },
  • {
    }
]

Get the catalog modifiers

Get catalog modifiers list configured on the POS.

Authorizations:
apiKey

Responses

Response Schema: application/json
Array
id
required
string <uuid>

Modifier client id

name
required
string

Modifier name

required
Array of objects

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Get catalog's categories

Get the catalog category list configured on the POS.

Authorizations:
apiKey

Responses

Response Schema: application/json
Array
id
required
string <uuid>

The unique id of the category

name
required
string

The name of the category

index
required
integer >= 0

The position of the category in the configuration

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Orders

This section contains endpoints for managing orders.

Get list of orders

Get a list of orders ordered by created date from a location depending on the page parameters provided.

Authorizations:
apiKey
query Parameters
since
string^[0-9]{4}-(((0[13578]|(10|12))-(0[1-9]|[1-2][...

Start date for date range (first day included). Accepts a date in the format ISO 8601 : YYYY-MM-DD

until
string^[0-9]{4}-(((0[13578]|(10|12))-(0[1-9]|[1-2][...

End date for date range (last day included). Accepts a date in the format ISO 8601 : YYYY-MM-DD

index
integer >= 0
Default: 0

Index of the page query parameter

size
integer [ 1 .. 100 ]
Default: 10

Number of record on a page query parameter (capped to 100)

reportId
string <uuid>

Report id query parameter

Responses

Response Schema: application/json
required
Array of objects

List of orders

required
object

Metadata for list of elements

object

Links for pagination

nextPageToken
string

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "meta": {
    },
}

Get an order

Get an order based on the id provided.

Authorizations:
apiKey
path Parameters
id
required
string <uuid>

Order id path parameter

Responses

Response Schema: application/json
id
required
string <uuid>

Order unique identifier

createdAt
required
string <date-time>

Date when the order was first recorded by the server

updatedAt
required
string <date-time>

Date when the order was last updated

customerId
required
string or null

Unique identifier of a customer. The value is set to null for anonymous transactions

deviceId
required
string or null

Unique identifier of the device

deviceName
string or null

Name of the device

locationId
required
string <uuid>

Unique identifier of the seller location that this order is associated with

reportId
required
string <uuid>

Unique identifier of the generated report that this order is associated with

openedAt
required
string <date-time>

Date when the order was opened

closedAt
required
string <date-time>

Date when the order was closed

guests
required
number >= 0

Number of guests

orderPlace
required
string

Order selling place

orderNumber
required
string

Order number

operatorId
required
string <uuid>

Unique identifier of the operator

operatorName
required
string

Operator name

total
required
number

Total order amount (discounts and taxes included)

totalTax
required
number

Total order tax amount

totalDiscount
required
number

Total order discount amount

required
Array of objects

List of items

required
Array of objects

List of menus

required
Array of objects

List of payments

required
Array of objects or null

List of tips

isCanceled
required
boolean

Order canceled state. An order cancelled after or before payment will not count in the total for the day (see also Order canceled)

isTransferred
required
boolean

Order transferred state. An order can be transferred to a PMS for hotel (Property Management System app). A guest of a hotel-restaurant can request to transfer the order made from the restaurant to their room account (see also Order transferred)

transferReason
required
string or null

Order transfer reason, related to the attribute isTransferred

cancelReason
required
string or null

Order cancellation reason, related to the attribute isCancelled

channel
string
Default: "unknown"
serviceType
string
Default: "unknown"
Enum: "takeout" "eatin" "delivery" "unknown"
isTraining
boolean
Default: false

Order has been created in training mode

Response samples

Content type
application/json
{
  • "id": "b3b4c5d6-e7f8-a9b0-c1d2-e3f4a5b6c7d8",
  • "deviceId": "a2049f39-026a-4c54-a411-8a1d9271804b",
  • "createdAt": "2022-06-10T12:30:00.000Z",
  • "updatedAt": "2022-06-10T12:15:00.000Z",
  • "locationId": "d6f5e4d3-c2b1-42a0-9c68-31a3b4d5e6f7",
  • "reportId": "9cad608b-48cc-40ed-ae8b-032ec54a0472",
  • "openedAt": "2022-06-10T12:00:00.000Z",
  • "closedAt": "2022-06-10T13:30:00.000Z",
  • "guests": 2,
  • "orderPlace": "Terrasse",
  • "orderNumber": "10",
  • "operatorId": "70c3d28a-1b3a-43f0-aa4f-5b78a932f7dc",
  • "operatorName": "Jane Doe",
  • "total": 20,
  • "totalTax": 1.82,
  • "totalDiscount": 5,
  • "customerId": "-Mkw59Hj9X7iGwz0Y866",
  • "isCanceled": false,
  • "isTransferred": false,
  • "transferReason": null,
  • "cancelReason": null,
  • "items": [
    ],
  • "menus": [ ],
  • "payments": [
    ],
  • "tips": null,
  • "channel": "Uber eats",
  • "serviceType": "delivery",
  • "isTraining": false
}

Get an order

Get an order based on the id provided.

Authorizations:
apiKey
path Parameters
id
required
string <uuid>

Order id path parameter

query Parameters
locationId
string <uuid>

Location id query parameter

Responses

Response Schema: application/json
id
required
string <uuid>
tillId
required
string <uuid>

Till Unique Identifier associated with the Order

roomId
required
string or null <uuid>

Identifier of the Room associated with the Order from the catalog domain

revisionHash
required
string or null <uuid>

Unique Identifier renewed on each Order change (generated by the POS main device)

deviceIdentifier
required
string

Device Identifier associated with the Order (isn't UUID because sunmi devices send only 10chars')

required
string or string

Date of Order Opening

required
string or string

Date of the last Order modification

required
string or string

Date when the Order was closed

required
(string or null) or (string or null)

Date of Order Payment

required
(string or null) or (string or null)

Date of Order Cancellation

required
(string or null) or (string or null)

Date of Order Transfer to external service

required
(string or null) or (string or null)

Date of the first printed bill

required
(string or null) or (string or null)

Date of the first Post-Payment Print

total
required
integer

Total order amount (discounts and taxes included)

totalTax
required
integer

Total order tax amount

totalDiscount
required
integer

Total order discount

totalWithoutTax
required
integer

Total order amount without tax

leftToPay
required
integer >= 0

Amount left to pay

guestsCount
required
integer >= 0

Number of Guests

billPrintCount
required
integer >= 0

Count of printed bills

proofsOfPaymentCount
required
integer >= 0

Count of printed proofs of Payment emitted

postPaymentPrintCount
required
integer >= 0

Count of Post-Payment duplicates & tickets

roomType
required
string or null
Enum: "room" "bar" "takeOut" "extOrder"

Type of the Room associated with the Order

roomPricing
required
string
Enum: "custom" "normal" "happyHour" "bar" "takeOut" "terrace" "special" "weightPrice" "event0" "event1" "event2" "event3" "event4" "event5" "event6"

Pricing Type of the Room applied to the Order

roomName
required
string

Name of the Room associated with the Order

tableId
required
string or null <uuid>

Identifier of the Table associated with the Order

tableName
required
string
tablePosX
required
integer

Table Position X

tablePosY
required
integer

Table Position Y

tableShape
required
string

Table shape

beeperNumber
required
integer or null

Beeper Number associated with the Order (used by waiters or customers to notify pickup availability)

deviceName
required
string

Device Name associated with the Order

comment
required
string or null

Order Comment

preparationActivated
required
boolean

Activation Status of the Preparation mode, display the send button when preparation management is enable

isMerged
required
boolean

Merge Status of the Order (when an order has been created merging several orders)

manuallyClosed
required
boolean

Has been manually closed with zero or negative total amount

isPaid
required
boolean

Payment Status of the Order

isCanceled
required
boolean

Cancellation Status of the Order

canceledReason
required
string or null

Cancellation Reason

fiscalNumber
required
integer

Fiscal Number of the Order

signature
required
string or null

Mandatory legal ticket signature

operatorId
required
string

Identifier of the Operator associated with the Order

operatorName
required
string

Name of the Operator associated with the Order

firebaseCustomerName
required
string or null

Customer name from firebase

firebaseCustomerRefKey
required
string or null

Customer Identifier from Firebase

firebaseReservationRefKey
required
string or null

Reservation Identifier from Firebase

isPrepaid
required
boolean

Ext services use: for the POS app to display an order even if it is already paid

isTransferred
required
boolean

Transfer Status of the Order

transferredTo
required
string or null

Transfer Destination Name

externalServiceId
required
string or null

Identifier of the Order given by the external service provider

extOctorateReservationId
required
integer or null

Identifier of the Octorate Reservation for hotel checkout service transfer

extQoodosCheckInId
required
string or null <uuid>

Identifier of a Qoodos entry (loyalty reward and discount service)

extQoodosUserId
required
string or null <uuid>

Identifier of the Qoodos user provided by their api

extQoodosUserName
required
string or null

Name of the Qoodos user provided by their api

pickupHour
required
string or null

Time of order's pickup by the delivery external service

Array of objects or null
customerInfo
string or null

Customer information

deliveryCustomerInfo
string or null

Customer information from the delivery service

deliveryAddress
string or null

Delivery address

deliveryComment
string or null

Delivery Address or Order comment

channel
string
Default: "unknown"

Order's source - usually represents the provider name

serviceType
string
Default: "unknown"
Enum: "takeout" "eatin" "delivery" "unknown"

Method of ordering

isTraining
boolean
Default: false

Has been created in training mode

required
Array of objects
required
Array of objects
required
Array of objects
required
Array of objects
required
Array of objects

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "tillId": "19818646-df1d-4c99-b178-4fe04bb8d522",
  • "roomId": "c3631f02-ff67-42b8-8775-18c47f52a678",
  • "revisionHash": "2942a7c8-bcb1-484c-832a-7c5ee7186169",
  • "deviceIdentifier": "string",
  • "openedAt": "2019-08-24T14:15:22Z",
  • "modifiedAt": "2019-08-24T14:15:22Z",
  • "closedAt": "2019-08-24T14:15:22Z",
  • "paidAt": "2019-08-24T14:15:22Z",
  • "canceledAt": "2019-08-24T14:15:22Z",
  • "transferredAt": "2019-08-24T14:15:22Z",
  • "firstBillPrintDate": "2019-08-24T14:15:22Z",
  • "postPaymentPrintDate": "2019-08-24T14:15:22Z",
  • "total": 0,
  • "totalTax": 0,
  • "totalDiscount": 0,
  • "totalWithoutTax": 0,
  • "leftToPay": 0,
  • "guestsCount": 0,
  • "billPrintCount": 0,
  • "proofsOfPaymentCount": 0,
  • "postPaymentPrintCount": 0,
  • "roomType": "room",
  • "roomPricing": "custom",
  • "roomName": "string",
  • "tableId": "073fbfcb-cd05-4203-be18-a1ce6f8e4d2d",
  • "tableName": "string",
  • "tablePosX": 0,
  • "tablePosY": 0,
  • "tableShape": "string",
  • "beeperNumber": 0,
  • "deviceName": "string",
  • "comment": "string",
  • "preparationActivated": true,
  • "isMerged": true,
  • "manuallyClosed": true,
  • "isPaid": true,
  • "isCanceled": true,
  • "canceledReason": "string",
  • "fiscalNumber": 0,
  • "signature": "string",
  • "operatorId": "string",
  • "operatorName": "string",
  • "firebaseCustomerName": "string",
  • "firebaseCustomerRefKey": "string",
  • "firebaseReservationRefKey": "string",
  • "isPrepaid": true,
  • "isTransferred": true,
  • "transferredTo": "string",
  • "externalServiceId": "string",
  • "extOctorateReservationId": 0,
  • "extQoodosCheckInId": "1b12bc29-552f-4d46-9828-266b1455d502",
  • "extQoodosUserId": "e4c75c72-b2c4-494e-9a8f-3c0b17a1ffc3",
  • "extQoodosUserName": "string",
  • "pickupHour": "string",
  • "groupedTableInfo": [
    ],
  • "customerInfo": "string",
  • "deliveryCustomerInfo": "string",
  • "deliveryAddress": "string",
  • "deliveryComment": "string",
  • "channel": "unknown",
  • "serviceType": "takeout",
  • "isTraining": false,
  • "paymentRowList": [
    ],
  • "productRowList": [
    ],
  • "menuRowList": [
    ],
  • "modifierRowList": [
    ],
  • "discountRowList": [
    ]
}

Locations

This section contains endpoints for managing locations.

Get location info

GET the location info related to your API key. You can opt-in to get the device list as well

Authorizations:
apiKey
query Parameters
devices
boolean
Value: true

Pass true if you want the device list of the location.

Responses

Response Schema: application/json
id
required
string <uuid>

Unique identifier of the location

address
required
string or null

Address of the location

siret
required
string or null

SIRET code of the location

city
required
string or null

City of the location

country
required
string or null

Country of the location

naf
required
string or null

NAF code of the location

name
required
string or null

Name of the location

phone
required
string or null

Phone number of the location

text
required
string or null

Text of the location

tva
required
string or null

VAT number of the location

url
required
string or null

URL of the location

zip
required
string or null

Zip code of the location

Array of objects

List of POS devices

Response samples

Content type
application/json
{
  • "id": "d6f5e4d3-c2b1-42a0-9c68-31a3b4d5e6f7",
  • "name": "Monzù Grands Hommes",
  • "address": "Centre commercial des, 12 Pl. des Grands Hommes",
  • "siret": "43779154400012",
  • "city": "Bordeaux",
  • "country": "France",
  • "naf": "5610A",
  • "phone": "05 56 48 55 24",
  • "text": "",
  • "tva": "FR76437791544",
  • "zip": "33000",
  • "deviceList": [
    ]
}