Marketplace or White-label App Platform Integration Module
Introduction
Connect your marketplace or restaurant white-label app to Sinqro (consuming Sinqro APIs and listening Sinqro webhooks)
Getting started
The developer account is automatically created when your company's account is created.
In order to create your POS, marketplace, app or any other platform account, please go to our main site, select your company type and follow the instructions.
If your company's account was already created and you have problems to access your account, contact us through the chat in this site or by email at integrations@sinqro.com
API Environments
As you are going to develop using test accounts, you can work directly in production:
https://api.sinqro.com/market-platform/v1
API Security
Authorization
All services of this API require an authorization token sent in headers ‘x-api-server-access-token’.
You can get your integration module assigned token in your developer panel.
Authentication
All services of this API require an authentication token sent in headers 'x-api-user-access-token'.
You can get your integration module assigned token in your developer panel.
Guide & Examples
We show you some relevant use cases.
Understanding menus
MENUS
We have two 'menu' types: setMenus and menus. Both menu types have menuSections and a menuSection has a collection of products.
A setMenu (not common in all countries), has a fixed price itself and the client must select normally only one product for each menuSection.
In a standard menu, the client has no limitations selecting products within the menuSections and the price is defined for each of the products, a not for the menu itself.
Understanding order types
Delivery orders (code: delivery)
A delivery order is just an order to be delivered to the consumer by the restaurant staff, an external marketplace with its own riders or by an on-demand delivery company.
Takeaway orders (code: collection)
A takeaway order is an order placed to be collected at the restaurant by the consumer.
Reservations (code: reservation)
A reservation is a simple table reservation without order lines, without products.
Reservations with pre-order (code: insitu)
Can be understood as a simple reservation + an order, or an order + a reservation.
Also known as 'eat-in preorders'.
In both cases, the consumer decides what's gonna consume in the restaurant during the reservation.
Table service orders (code: inside)
Is an order placed by the consumer being at the restaurant, normally from the table.
Sinqro Global QR Code
The restaurants are exposed to multiple ordering, reservation and payment options, and that's why they need to use a global QR code to offer to the consumer all the options.
Is impossible for the restaurant to print a QR code for all the channels they accept, so they need a dynamic interface, real-time updated with all of them.
In Sinqro we automatically generate a global QR code for:
· The restaurant
· The restaurant with delivery order type
· The restaurant with collection order type
· The restaurant with reservation with pre-order type
· The restaurant with reservation type
· The restaurant with table-service order type
· The restaurant with table-service order type for each service zone and table of the restaurant
For your channel to be integrated, you have to:
1. Configure your router endpoint in your developer panel
2. Prepare your endpoint to understand the next GET parameters:
- sp: that is the restaurant Sinqro ID
- action: can be 'menu', 'order' or 'pay'
- orderType (optional): that is the order type code seen before
- serviceLocation (optional): that is the Sinqro table code
So, when the restaurant client scans our global QR code, if they select your channel option, we will redirect the user to {yourRouterEndPoint}?sp={spValue}&action={actionValue}&orderType={orderTypeValue}&serviceLocation={serviceLocationValue}
API SERVICES REFERENCE
SELLINGPOINT
Get market selling points
x-api-server-access-token | string | header | Authorization token |
x-api-user-access-token | string | header | Authentication token |
marketCode | string | path | Market code identifier |
tags ( optional ) | string | query | Filter by tags code |
HTTP Code | Description | Body |
200 | Ok | array SellingPoint |
400 | Error/s | object ErrorResponse |
Get market selling point
x-api-server-access-token | string | header | Authorization token |
x-api-user-access-token | string | header | Authentication token |
marketCode | string | path | Market code identifier |
sellingPointId | integer | path | Selling point identifier |
HTTP Code | Description | Body |
200 | Ok | object SellingPoint |
400 | Error/s | object ErrorResponse |
Get selling point menus
x-api-server-access-token | string | header | Authorization token |
x-api-user-access-token | string | header | Authentication token |
marketCode | string | path | Market code identifier |
sellingPointId | integer | path | sellingPoint identifier |
date ( optional ) | string | query | Used date to calculate current product selection flags. If no date is provided the system will use NOW(). Example: 2017-10-10 |
orderType ( optional ) | string | query | Used to filter by order type code. More info in 'Understanding order types' section. |
HTTP Code | Description | Body |
200 | Ok | array Menu |
400 | Error/s | object ErrorResponse |
Get selling point menus with availability
x-api-server-access-token | string | header | Authorization token |
x-api-user-access-token | string | header | Authentication token |
marketCode | string | path | Market code identifier |
sellingPointId | integer | path | sellingPoint identifier |
date ( optional ) | string | query | Used date to calculate menu availability. If no date is provided the system will use NOW(). Example: 2017-10-10 |
orderType ( optional ) | string | query | Used to filter by order type code. More info in 'Understanding order types' section. |
loadProducts ( optional ) | boolean | query | Default value is true if the parameter is not send in the request. If loadProducts is false, the menu will not return menuSections property. |
HTTP Code | Description | Body |
200 | Ok | array Menu |
400 | Error/s | object ErrorResponse |
Get selling point closing exceptions
x-api-server-access-token | string | header | Authorization token |
x-api-user-access-token | string | header | Authentication token |
marketCode | string | path | Market code identifier |
sellingPointId | integer | path | Selling point identifier |
HTTP Code | Description | Body |
200 | Ok | array SellingPointException |
400 | Error/s | object ErrorResponse |
ORDER
Post order
x-api-server-access-token | string | header | Authorization token |
x-api-user-access-token | string | header | Authentication token |
marketCode | string | path | Market code identifier |
parameters | body | Remember that in this API we won't validate the order / reservation elements because the responsibility of taking the order resides on your side |
HTTP Code | Description | Body |
200 | Ok | object Order |
400 | Error/s | object ErrorResponse |
Get order
x-api-server-access-token | string | header | Authorization token |
x-api-user-access-token | string | header | Authentication token |
marketCode | string | path | Market code identifier |
marketOrderId | string | path | Market order identifier |
HTTP Code | Description | Body |
200 | Ok | object Order |
400 | Error/s | object ErrorResponse |
Get order status
x-api-server-access-token | string | header | Authorization token |
x-api-user-access-token | string | header | Authentication token |
marketCode | string | path | Market code identifier |
marketOrderId | string | path | Market order identifier |
HTTP Code | Description | Body |
200 | Ok | object OrderStatus |
400 | Error/s | object ErrorResponse |
Cancel order
x-api-server-access-token | string | header | Authorization token |
x-api-user-access-token | string | header | Authentication token |
marketCode | string | path | Market code identifier |
marketOrderId | string | path | Market order identifier |
comment | string | formData | Cancellation comment |
HTTP Code | Description | Body |
200 | Ok | object Order |
400 | Error/s | object ErrorResponse |
TABLE SERVICE SPECIFIC
With this section services you can:
1. Read all the zones and tables from a restaurant
2. Create table-service orders (if your app takes consumer orders). (check the previous section POST ORDER service)
3. Read the orders and payments for a table in real time
4. Create payments for that table (if your app takes consumer payments).
For these services to work you need to:
- Enable "Order groups feature" in your test restaurant: pos.sinqro.com > Restaurant > Config > Inside services config > Enable order group checkbox
- Create zones and tables in your test restaurant: pos.sinqro.com > Restaurant > Config > Zones & tables > Generate
If you need to test payments and you have not implemented orders injection, you can generate test orders from the restaurant app:
- pos.sinqro.com > Restaurant > Config > Tests > Generate table-service order
Get selling point zones and tables
sellingPointId | integer | path | Selling point identifier |
marketCode | string | path | Market code identifier |
HTTP Code | Description | Body |
400 | Error/s | object ErrorResponse |
200 | Ok | object ServiceZonesCollection |
Get selling point service location
sellingPointId | integer | path | Selling point identifier |
marketCode | string | path | Market code identifier |
serviceLocationCode | string | path | Service location (table) code |
HTTP Code | Description | Body |
400 | Error/s | object ErrorResponse |
200 | Ok | object ServiceLocationLiveData |
Post service location payment
sellingPointId | integer | path | Selling point identifier |
marketCode | string | path | Market code identifier |
serviceLocationCode | string | path | Service location (table) code |
PaymentInputData | body | Payment input data |
HTTP Code | Description | Body |
400 | Error/s | object ErrorResponse |
201 | Created | object PaymentCreatedData |
NOTIFICATIONS REFERENCE
Be careful, we'll process the response, reading ONLY the HTTP STATUS CODE of your server's response, and understanding any status code different than 2XX as an error.
You can set your webhook endpoint in your developer panel.
In your app, you need to implement a websocket client and listen the notifications following the instructions in this test tool
You can enable websocket notifications in your developer panel.
Notification Title | Notification Event Code | Model of the payload | Expected OK response |
---|---|---|---|
Order status changed | order_status_changed | object Order | 200 - 299 HTTP Status |
Menu collection updated | menu_collection_updated | array Menu | 200 - 299 HTTP Status |
Items availability updated | items_availability_updated | Empty body | 200 - 299 HTTP Status |
MODELS REFERENCE
We show the definition of all the models used in the previous API services and notifications:Address
MODEL ATTRIBUTES
id | integer (int64) | Address identifier | |
street | string | Address street with number | |
details | string | Extra address information | |
city | string | Address city name | |
province | string | Address province name | |
postalCode | string | Address postal code | |
latitude | number (float) | Address latitude | |
longitude | number (float) | Address longitude | |
googlePlaceId | string | Google place identifier | |
placeName | string | Place name |
MODEL EXAMPLES
Example
{ "id": 1003, "street": "C/ Example, 23", "details": "Canada building", "city": "City name", "province": "Province name", "postalCode": "12345", "latitude": 41.308166, "longitude": 2.019725, "googlePlaceId": "xxxxxxxxxxxx", "placeName": "C/ Example, 23, City name" }
Address
MODEL ATTRIBUTES
id | integer (int64) | Address identifier | |
street | string | Address street with number | |
details | string | Extra address information | |
city | string | Address city name | |
province | string | Address province name | |
postalCode | string | Address postal code | |
latitude | number (float) | Address latitude | |
longitude | number (float) | Address longitude | |
googlePlaceId | string | Google place identifier | |
placeName | string | Place name |
MODEL EXAMPLES
Example
{ "id": 1003, "street": "C/ Example, 23", "details": "Canada building", "city": "City name", "province": "Province name", "postalCode": "12345", "latitude": 41.308166, "longitude": 2.019725, "googlePlaceId": "xxxxxxxxxxxx", "placeName": "C/ Example, 23, City name" }
Address
MODEL ATTRIBUTES
id | integer (int64) | Address identifier | |
street | string | Address street with number | |
details | string | Extra address information | |
city | string | Address city name | |
province | string | Address province name | |
postalCode | string | Address postal code | |
latitude | number (float) | Address latitude | |
longitude | number (float) | Address longitude | |
googlePlaceId | string | Google place identifier | |
placeName | string | Place name |
MODEL EXAMPLES
Example
{ "id": 1003, "street": "C/ Example, 23", "details": "Canada building", "city": "City name", "province": "Province name", "postalCode": "12345", "latitude": 41.308166, "longitude": 2.019725, "googlePlaceId": "xxxxxxxxxxxx", "placeName": "C/ Example, 23, City name" }
Consumer
MODEL ATTRIBUTES
id | integer (int64) | Consumer identifier | |
string | Consumer email | ||
name | string | Consumer name | |
lastname | string | Consumer last name | |
image | string | Consumer profile image url | |
phone | string | In international format. Ex. +34600000000 | |
marketClientId | string | Market client identifier |
MODEL EXAMPLES
Example
{ "id": 1003, "email": "john@example.com", "name": "John", "lastname": "Doe", "image": "https://cdn.sinqro.com/assets/images/placeholder_image.jpg", "phone": "+34600000000", "marketClientId": "MMMM-MMMM-MMMM" }
Coupon
MODEL ATTRIBUTES
code | string | Coupon code |
MODEL EXAMPLES
Example
{ "code": "first10" }
Day
MODEL ATTRIBUTES
id | integer (int64) | Day identifier | |
name | string | Day name |
MODEL EXAMPLES
Example
{ "id": 1, "name": "Lunes" }
Day
MODEL ATTRIBUTES
id | integer (int64) | Day identifier | |
name | string | Day name |
MODEL EXAMPLES
Example
{ "id": 1, "name": "Lunes" }
Delivery address
MODEL ATTRIBUTES
id | integer (int64) | Address identifier | |
street | string | Address street with number | |
details | string | Extra address information | |
city | string | Address city name | |
province | string | Address province name | |
postalCode | string | Address postal code | |
latitude | number (float) | Address latitude | |
longitude | number (float) | Address longitude | |
googlePlaceId | string | Google place identifier | |
placeName | string | Place name |
MODEL EXAMPLES
Example
{ "id": 1003, "street": "C/ Example, 23", "details": "Canada building", "city": "City name", "province": "Province name", "postalCode": "12345", "latitude": 41.308166, "longitude": 2.019725, "googlePlaceId": "xxxxxxxxxxxx", "placeName": "C/ Example, 23, City name" }
Delivery
MODEL ATTRIBUTES
id | integer (int64) | Delivery identifier | |
deliveryAccountName | string | Delivery company name | |
deliveryAccountPhone | string | Delivery company contact phone | |
pickupAddress | object Address | Delivery pickup address | |
deliveryAddress | object Address | Delivery address | |
pickupAgreedAt | string (date-time) | Pickup agreed time | |
pickupConfirmedAt | string (date-time) | Confirmed pickup time | |
deliveryAgreedAt | string (date-time) | Delivery agreed time | |
deliveryConfirmedAt | string (date-time) | Confirmed delivery time | |
deliveryInstructions | string | Driver instructions | |
linearDistance | number (float) | Linear distance between pickup and delivery points | |
realDistance | number (float) | Real distance between pickup and delivery points | |
estimatedDeliveryDuration | number (float) | Estimated delivery duration in minutes | |
status | object Status | Current delivery status | |
destinationContactEmail | string | Destination contact email | |
destinationContactName | string | Destination contact name | |
destinationContactPhone | string | Destination contact phone number | |
route | string | Polyline describing driver route | |
driver | object Driver | Delivery driver |
MODEL EXAMPLES
Example
{ "id": 1003, "deliveryAccountName": "DeliveryCompanyName", "deliveryAccountPhone": "600000001", "pickupAddress": { "id": 1003, "street": "C/ Example, 23", "details": "Canada building", "city": "City name", "province": "Province name", "postalCode": "12345", "latitude": 41.308166, "longitude": 2.019725, "googlePlaceId": "xxxxxxxxxxxx", "placeName": "C/ Example, 23, City name" }, "deliveryAddress": { "id": 1003, "street": "C/ Example, 23", "details": "Canada building", "city": "City name", "province": "Province name", "postalCode": "12345", "latitude": 41.308166, "longitude": 2.019725, "googlePlaceId": "xxxxxxxxxxxx", "placeName": "C/ Example, 23, City name" }, "pickupAgreedAt": "2017-02-09T12:00:00+0000", "pickupConfirmedAt": "2017-02-09T12:00:00+0000", "deliveryAgreedAt": "2017-02-09T12:15:00+0000", "deliveryConfirmedAt": "2017-02-09T12:15:00+0000", "deliveryInstructions": null, "linearDistance": "1.56", "realDistance": "1.97", "estimatedDeliveryDuration": "15", "status": { "code": "PICKING", "name": "Picking", "color": "blue", "isFinalStatus": false }, "destinationContactEmail": "jane@example.com", "destinationContactName": "Jane", "destinationContactPhone": "600000000", "route": "c_c{FmniKrBcBnAkA@QCMMg@_BbBoEzEEyD?GCQIKMAKB{DsDiBmBq@_A?EAKCICCtDqFtB}ChCwDPPxCrCj@h@", "driver": { "id": 1003, "email": "john@example.com", "name": "John", "lastname": "Doe", "image": "https://cdn.sinqro.com/assets/images/placeholder_image.jpg", "phone": "+34600000000", "transport": { "code": "SCOOTER", "name": "Scooter" }, "lastGeolocation": { "latitude": 41.308166, "longitude": 2.019725, "createdAt": "2018-03-015T12:15:00+0000" } } }
Discount
MODEL ATTRIBUTES
id | integer (int64) | Discount identifier |
MODEL EXAMPLES
Example
{ "id": "233" }
Driver
MODEL ATTRIBUTES
id | integer (int64) | Driver identifier | |
string | Driver email | ||
name | string | Driver name | |
lastname | string | Driver last name | |
image | string | Driver image url | |
phone | string | In international format. Ex. +34600000000 | |
transport | object TransportType | ||
lastGeolocation | object Geolocation | Driver last geolocation |
MODEL EXAMPLES
Example
{ "id": 1003, "email": "john@example.com", "name": "John", "lastname": "Doe", "image": "https://cdn.sinqro.com/assets/images/placeholder_image.jpg", "phone": "+34600000000", "transport": { "code": "SCOOTER", "name": "Scooter" }, "lastGeolocation": { "latitude": 41.308166, "longitude": 2.019725, "createdAt": "2018-03-015T12:15:00+0000" } }
Error
MODEL ATTRIBUTES
code | string | Error code identifier | |
message | string | Error description |
MODEL EXAMPLES
Example
{ "code": "ERROR_CODE_EXAMPLE", "message": "Error message" }
ErrorResponse
MODEL ATTRIBUTES
errors | array Error | Errors | |
code | string | Error code identifier | |
message | string | Error description | |
httpResponseCode | string | HTTP response code |
MODEL EXAMPLES
Example
{ "errors": [ { "code": "ERROR_CODE_EXAMPLE", "message": "Error message" } ], "code": "ERROR_CODE_EXAMPLE", "message": "Error message", "httpResponseCode": "400" }
Geolocation
MODEL ATTRIBUTES
latitude | number (float) | Geolocation latitude | |
longitude | number (float) | Geolocation longitude | |
createdAt | string (date-time) | Geolocation creation time |
MODEL EXAMPLES
Example
{ "latitude": 41.308166, "longitude": 2.019725, "createdAt": "2018-03-015T12:15:00+0000" }
Menu
MODEL ATTRIBUTES
id | integer (int64) | Menu identifier | |
externalId | string | Custom identifier |
MODEL EXAMPLES
Example
{ "id": 543 }
Menu
MODEL ATTRIBUTES
id | integer (int64) | Menu identifier | |
name | string | Menu name | |
type | string | Menu type code Possible values menu setmenu |
|
position | integer (int32) | Menu position | |
allowedOrderTypes | array | Menu allowed order types code. More info in 'Understanding order types' section. | |
availableFrom | string (date-time) | Menu available from time | |
availableTo | string (date-time) | Menu selection expiration time. If this value is null, menu selection doesn't expires | |
hasSelection | boolean | Returns true if the menu has a product selection | |
selectionAvailable | boolean | Returns true if the product selection is expired | |
selectionUpcoming | boolean | Returns true if the product selection is not available yet | |
price | number (float) | Menu price | |
shortDescription | string | Menu description | |
menuSections | array MenuSection | Menu sections containing products | |
urlKey | string | Encoded name for url | |
schedule | object Schedule | ||
scheduleLabel | string | Text describing menu schedule for given date |
MODEL EXAMPLES
Example
{ "id": 10674, "externalId": null, "name": "Nuestra carta", "price": null, "type": "menu", "shortDescription": "Nuestra carta de pizzas", "position": 0, "availableFrom": "2020-07-23T00:00:00+0000", "availableTo": null, "menuSections": [ { "id": 8398, "externalId": null, "name": "Recomendaciones del cheff", "shortDescription": null, "image": null, "position": 0, "showProductImages": true, "maxSelection": 0, "minSelection": 0, "selectionLabel": "", "products": [ { "id": 109837, "externalId": null, "urlKey": "109837-pizza-4-quesos", "name": "Pizza 4 quesos", "shortDescription": "", "description": "", "image": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "price": 11.95, "minOrderPreparationMinutes": 0, "minMinutesOrderInAdvance": 0, "tags": [], "parentName": null, "isAvailable": true, "productVariants": [], "productOptionsCategories": [ { "id": 13327, "externalId": null, "name": "¿Quieres añadir algo?", "shortDescription": null, "position": 3, "maxSelection": null, "maxSameOptionSelection": null, "minSelection": null, "selectionLabel": "", "productOptions": [ { "id": 234816, "externalId": null, "name": "Bacon", "shortDescription": null, "position": 1, "price": 1.0, "isAvailable": true }, { "id": 234817, "externalId": null, "name": "Jamón Serrano", "shortDescription": null, "position": 2, "price": 1.5, "isAvailable": true }, { "id": 234818, "externalId": null, "name": "Champiñones", "shortDescription": null, "position": 3, "price": 1.0, "isAvailable": true }, { "id": 234819, "externalId": null, "name": "Huevo duro", "shortDescription": null, "position": 4, "price": 1.0, "isAvailable": true }, { "id": 234820, "externalId": null, "name": "Cebolla", "shortDescription": null, "position": 5, "price": 0.5, "isAvailable": true } ] } ], "public": true, "featured": false }, { "id": 109838, "externalId": null, "urlKey": "109838-pizza-de-la-huerta", "name": "Pizza de la huerta", "shortDescription": "Con verduras de nuestro huerto", "description": "", "image": "https://content.sinqro.com/9119985658_cf48234047_79231551975571cheese-cooking-crispy-263041.png", "price": 11.0, "minOrderPreparationMinutes": 0, "minMinutesOrderInAdvance": 0, "tags": [], "parentName": null, "isAvailable": true, "productVariants": [], "productOptionsCategories": [ { "id": 13327, "externalId": null, "name": "¿Quieres añadir algo?", "shortDescription": null, "position": 3, "maxSelection": null, "maxSameOptionSelection": null, "minSelection": null, "selectionLabel": "", "productOptions": [ { "id": 234816, "externalId": null, "name": "Bacon", "shortDescription": null, "position": 1, "price": 1.0, "isAvailable": true }, { "id": 234817, "externalId": null, "name": "Jamón Serrano", "shortDescription": null, "position": 2, "price": 1.5, "isAvailable": true }, { "id": 234818, "externalId": null, "name": "Champiñones", "shortDescription": null, "position": 3, "price": 1.0, "isAvailable": true }, { "id": 234819, "externalId": null, "name": "Huevo duro", "shortDescription": null, "position": 4, "price": 1.0, "isAvailable": true }, { "id": 234820, "externalId": null, "name": "Cebolla", "shortDescription": null, "position": 5, "price": 0.5, "isAvailable": true } ] } ], "public": true, "featured": false } ] }, { "id": 8399, "externalId": null, "name": "Las clásicas", "shortDescription": null, "image": null, "position": 1, "showProductImages": true, "maxSelection": 0, "minSelection": 0, "selectionLabel": "", "products": [ { "id": 109839, "externalId": null, "urlKey": "109839-pizza-4-estaciones", "name": "Pizza 4 estaciones", "shortDescription": "", "description": "", "image": "https://content.sinqro.com/9119987668_cf48237359_28351551975571cheese-cooking-cuisine-845812.png", "price": 12.95, "minOrderPreparationMinutes": 0, "minMinutesOrderInAdvance": 0, "tags": [], "parentName": null, "isAvailable": true, "productVariants": [], "productOptionsCategories": [ { "id": 13327, "externalId": null, "name": "¿Quieres añadir algo?", "shortDescription": null, "position": 3, "maxSelection": null, "maxSameOptionSelection": null, "minSelection": null, "selectionLabel": "", "productOptions": [ { "id": 234816, "externalId": null, "name": "Bacon", "shortDescription": null, "position": 1, "price": 1.0, "isAvailable": true }, { "id": 234817, "externalId": null, "name": "Jamón Serrano", "shortDescription": null, "position": 2, "price": 1.5, "isAvailable": true }, { "id": 234818, "externalId": null, "name": "Champiñones", "shortDescription": null, "position": 3, "price": 1.0, "isAvailable": true }, { "id": 234819, "externalId": null, "name": "Huevo duro", "shortDescription": null, "position": 4, "price": 1.0, "isAvailable": true }, { "id": 234820, "externalId": null, "name": "Cebolla", "shortDescription": null, "position": 5, "price": 0.5, "isAvailable": true } ] } ], "public": true, "featured": false }, { "id": 109840, "externalId": null, "urlKey": "109840-pizza-barbacoa", "name": "Pizza Barbacoa", "shortDescription": "", "description": "", "image": "https://content.sinqro.com/d770d55550_2176741739_77361551975572cheese-crust-delicious-532779.png", "price": 12.5, "minOrderPreparationMinutes": 0, "minMinutesOrderInAdvance": 0, "tags": [], "parentName": null, "isAvailable": true, "productVariants": [], "productOptionsCategories": [ { "id": 13327, "externalId": null, "name": "¿Quieres añadir algo?", "shortDescription": null, "position": 3, "maxSelection": null, "maxSameOptionSelection": null, "minSelection": null, "selectionLabel": "", "productOptions": [ { "id": 234816, "externalId": null, "name": "Bacon", "shortDescription": null, "position": 1, "price": 1.0, "isAvailable": true }, { "id": 234817, "externalId": null, "name": "Jamón Serrano", "shortDescription": null, "position": 2, "price": 1.5, "isAvailable": true }, { "id": 234818, "externalId": null, "name": "Champiñones", "shortDescription": null, "position": 3, "price": 1.0, "isAvailable": true }, { "id": 234819, "externalId": null, "name": "Huevo duro", "shortDescription": null, "position": 4, "price": 1.0, "isAvailable": true }, { "id": 234820, "externalId": null, "name": "Cebolla", "shortDescription": null, "position": 5, "price": 0.5, "isAvailable": true } ] } ], "public": true, "featured": false } ] }, { "id": 8400, "externalId": null, "name": "Bebidas", "shortDescription": null, "image": null, "position": 2, "showProductImages": false, "maxSelection": 0, "minSelection": 0, "selectionLabel": "", "products": [ { "id": 109841, "externalId": null, "urlKey": "109841-agua-05l", "name": "Agua 0.5L", "shortDescription": null, "description": null, "image": null, "price": 1.5, "minOrderPreparationMinutes": 0, "minMinutesOrderInAdvance": 0, "tags": [], "parentName": null, "isAvailable": true, "productVariants": [], "productOptionsCategories": [], "public": true, "featured": false }, { "id": 109842, "externalId": null, "urlKey": "109842-cerveza-33cl", "name": "Cerveza 33cl", "shortDescription": null, "description": null, "image": null, "price": 2.0, "minOrderPreparationMinutes": 0, "minMinutesOrderInAdvance": 0, "tags": [], "parentName": null, "isAvailable": true, "productVariants": [], "productOptionsCategories": [], "public": true, "featured": false }, { "id": 109843, "externalId": null, "urlKey": "109843-refresco-limon", "name": "Refresco limón", "shortDescription": null, "description": null, "image": null, "price": 2.0, "minOrderPreparationMinutes": 0, "minMinutesOrderInAdvance": 0, "tags": [], "parentName": null, "isAvailable": true, "productVariants": [], "productOptionsCategories": [], "public": true, "featured": false } ] } ], "allowedOrderTypes": [ "collection", "delivery", "insitu", "inside" ], "scheduleLabel": "de 11h a 16h y de 20h a 23.30h", "schedule": { "id": 1193, "ranges": [ { "startTime": "19:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 1, "name": "Lunes" }, "endDay": { "id": 1, "name": "Lunes" } }, { "startTime": "11:00", "endTime": "16:00", "timezone": "Europe/Madrid", "startDay": { "id": 2, "name": "Martes" }, "endDay": { "id": 2, "name": "Martes" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 2, "name": "Martes" }, "endDay": { "id": 2, "name": "Martes" } }, { "startTime": "11:00", "endTime": "16:00", "timezone": "Europe/Madrid", "startDay": { "id": 3, "name": "Miércoles" }, "endDay": { "id": 3, "name": "Miércoles" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 3, "name": "Miércoles" }, "endDay": { "id": 3, "name": "Miércoles" } }, { "startTime": "11:00", "endTime": "16:00", "timezone": "Europe/Madrid", "startDay": { "id": 4, "name": "Jueves" }, "endDay": { "id": 4, "name": "Jueves" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 4, "name": "Jueves" }, "endDay": { "id": 4, "name": "Jueves" } }, { "startTime": "11:00", "endTime": "16:00", "timezone": "Europe/Madrid", "startDay": { "id": 5, "name": "Viernes" }, "endDay": { "id": 5, "name": "Viernes" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 5, "name": "Viernes" }, "endDay": { "id": 5, "name": "Viernes" } }, { "startTime": "11:00", "endTime": "17:00", "timezone": "Europe/Madrid", "startDay": { "id": 6, "name": "Sábado" }, "endDay": { "id": 6, "name": "Sábado" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 6, "name": "Sábado" }, "endDay": { "id": 6, "name": "Sábado" } }, { "startTime": "12:00", "endTime": "17:00", "timezone": "Europe/Madrid", "startDay": { "id": 7, "name": "Domingo" }, "endDay": { "id": 7, "name": "Domingo" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 7, "name": "Domingo" }, "endDay": { "id": 7, "name": "Domingo" } } ] }, "urlKey": "10674-nuestra-carta", "hasSelection": true, "selectionAvailable": true, "selectionExpired": false, "selectionUpcoming": false }
Menu
MODEL ATTRIBUTES
id | integer (int64) | Menu identifier | |
name | string | Menu name | |
type | string | Menu type code Possible values menu setmenu |
|
position | integer (int32) | Menu position | |
allowedOrderTypes | array | Menu allowed order types code. More info in 'Understanding order types' section. | |
availableFrom | string (date-time) | Menu available from time | |
availableTo | string (date-time) | Menu selection expiration time. If this value is null, menu selection doesn't expires | |
hasSelection | boolean | Returns true if the menu has a product selection | |
selectionAvailable | boolean | Returns true if the product selection is expired | |
selectionUpcoming | boolean | Returns true if the product selection is not available yet | |
price | number (float) | Menu price | |
shortDescription | string | Menu description | |
menuSections | array MenuSection | Menu sections containing products | |
urlKey | string | Encoded name for url | |
schedule | object Schedule | ||
scheduleLabel | string | Text describing menu schedule for given date | |
deliveryAvailability | object MenuDeliveryAvailability | ||
collectionAvailability | object MenuCollectionAvailability | ||
insituAvailability | object MenuInsituAvailability |
MODEL EXAMPLES
Example
{ "id": 543, "name": "Pizzas", "type": "menu", "position": 1, "allowedOrderTypes": [ null ], "availableFrom": "2017-02-12T21:30:00+0000", "availableTo": "2017-02-12T21:30:00+0000", "hasSelection": true, "selectionAvailable": false, "selectionUpcoming": false, "price": null, "shortDescription": "Our best pizzas", "menuSections": [ { "id": "298", "name": "Gluten free", "shortDescription": "Gluten free pizzas", "position": 1, "minSelection": 0, "maxSelection": 0, "showProductImages": true, "selectionLabel": "One required", "products": [ { "id": "843", "name": "Neapolitan Pizza", "image": "https://cdn.sinqro.com/assets/images/placeholder_image.jpg", "price": 11.5, "public": true, "featured": false, "shortDescription": "Tomatoes, cheese, oil, and garlic", "description": "It was our first pizza ...", "parentName": null, "isAvailable": true, "tags": [ null ], "productOptionsCategories": [ { "id": "102", "name": "Our ingredients", "shortDescription": "What do you put on your pizza?", "position": 1, "maxSelection": 10, "minSelection": null, "maxSameOptionSelection": 2, "selectionLabel": "Max. 10", "productOptions": [ { "id": "233", "name": "Cheddar", "shortDescription": "Add cheddar to your pizza", "position": 1, "isAvailable": true, "price": 0.75 } ] } ], "urlKey": "product-name", "productVariants": [ { "id": "843", "name": "XXL size", "image": "https://cdn.sinqro.com/assets/images/placeholder_image.jpg", "price": 14, "public": true, "featured": false, "shortDescription": "Tomatoes, cheese, oil, and garlic", "description": "It was our first pizza ...", "parentName": null, "isAvailable": true, "tags": [ null ], "productOptionsCategories": [ { "id": "102", "name": "Our ingredients", "shortDescription": "What do you put on your pizza?", "position": 1, "maxSelection": 10, "minSelection": null, "maxSameOptionSelection": 2, "selectionLabel": "Max. 10", "productOptions": [ { "id": "233", "name": "Cheddar", "shortDescription": "Add cheddar to your pizza", "position": 1, "isAvailable": true, "price": 0.75 } ] } ], "urlKey": "product-name" } ] } ] } ], "urlKey": "menu-name", "schedule": { "id": 2113, "ranges": [ { "startTime": "06:00:00", "endTime": "18:00:00", "timezone": "Europe/Madrid", "startDay": { "id": 1, "name": "Lunes" }, "endDay": { "id": 1, "name": "Lunes" } } ] }, "scheduleLabel": "All days from 09:00h to 22:00h", "deliveryAvailability": { "checkoutAllowed": true, "orderTypeAllowed": true, "availabilityLabel": "DISPONIBLE hoy 15/02", "availableRangesLabel": "Hoy de 08 a 22", "availableRanges": [ { "startTime": "2018-02-15T08:00:00+0000", "endTime": "2018-02-15T22:00:00+0000" } ] }, "collectionAvailability": { "checkoutAllowed": true, "orderTypeAllowed": true, "availabilityLabel": "DISPONIBLE hoy 15/02", "availableRangesLabel": "Hoy de 08 a 22", "availableRanges": [ { "startTime": "2018-02-15T08:00:00+0000", "endTime": "2018-02-15T22:00:00+0000" } ] }, "insituAvailability": { "checkoutAllowed": true, "orderTypeAllowed": true, "availabilityLabel": "DISPONIBLE hoy 15/02", "availableRangesLabel": "Hoy de 08 a 22", "availableRanges": [ { "startTime": "2018-02-15T08:00:00+0000", "endTime": "2018-02-15T22:00:00+0000" } ] } }
MenuCollectionAvailability
MODEL ATTRIBUTES
checkoutAllowed | boolean | ||
orderTypeAllowed | boolean | Returns true if the menu is allowed for given order type | |
availabilityLabel | string | Text describing availability | |
availableRangesLabel | string | Text describing available ranges | |
availableRanges | array TimeRange | Time ranges |
MODEL EXAMPLES
Example
{ "checkoutAllowed": true, "orderTypeAllowed": true, "availabilityLabel": "DISPONIBLE hoy 15/02", "availableRangesLabel": "Hoy de 08 a 22", "availableRanges": [ { "startTime": "2018-02-15T08:00:00+0000", "endTime": "2018-02-15T22:00:00+0000" } ] }
MenuDeliveryAvailability
MODEL ATTRIBUTES
checkoutAllowed | boolean | ||
orderTypeAllowed | boolean | Returns true if the menu is allowed for given order type | |
availabilityLabel | string | Text describing availability | |
availableRangesLabel | string | Text describing available ranges | |
availableRanges | array TimeRange | Time ranges |
MODEL EXAMPLES
Example
{ "checkoutAllowed": true, "orderTypeAllowed": true, "availabilityLabel": "DISPONIBLE hoy 15/02", "availableRangesLabel": "Hoy de 08 a 22", "availableRanges": [ { "startTime": "2018-02-15T08:00:00+0000", "endTime": "2018-02-15T22:00:00+0000" } ] }
MenuInsituAvailability
MODEL ATTRIBUTES
checkoutAllowed | boolean | ||
orderTypeAllowed | boolean | Returns true if the menu is allowed for given order type | |
availabilityLabel | string | Text describing availability | |
availableRangesLabel | string | Text describing available ranges | |
availableRanges | array TimeRange | Time ranges |
MODEL EXAMPLES
Example
{ "checkoutAllowed": true, "orderTypeAllowed": true, "availabilityLabel": "DISPONIBLE hoy 15/02", "availableRangesLabel": "Hoy de 08 a 22", "availableRanges": [ { "startTime": "2018-02-15T08:00:00+0000", "endTime": "2018-02-15T22:00:00+0000" } ] }
MenuSection
MODEL ATTRIBUTES
id | integer (int64) | Menu section identifier | |
externalId | string | Custom identifier | |
name | string | Menu section name | |
shortDescription | string | Menu section short description. Used in checkout. | |
position | integer (int32) | Menu section position | |
minSelection | integer (int32) | Required minimum of products selected by consumer. Only apply to setmenu menus | |
maxSelection | integer (int32) | Maximum of products that can be selected by consumer. Only apply to setmenu menus | |
showProductImages | boolean | Indicates if product images has to be shown | |
selectionLabel | string | Text describing the minimum and maximum number of products can be selected by the consumer in this section. Only apply to setmenu menus | |
products | array Product | Menu section products |
MODEL EXAMPLES
Example
{ "id": "298", "name": "Gluten free", "shortDescription": "Gluten free pizzas", "position": 1, "minSelection": 0, "maxSelection": 0, "showProductImages": true, "selectionLabel": "One required", "products": [ { "id": "843", "name": "Neapolitan Pizza", "image": "https://cdn.sinqro.com/assets/images/placeholder_image.jpg", "price": 11.5, "public": true, "featured": false, "shortDescription": "Tomatoes, cheese, oil, and garlic", "description": "It was our first pizza ...", "parentName": null, "isAvailable": true, "tags": [ null ], "productOptionsCategories": [ { "id": "102", "name": "Our ingredients", "shortDescription": "What do you put on your pizza?", "position": 1, "maxSelection": 10, "minSelection": null, "maxSameOptionSelection": 2, "selectionLabel": "Max. 10", "productOptions": [ { "id": "233", "name": "Cheddar", "shortDescription": "Add cheddar to your pizza", "position": 1, "isAvailable": true, "price": 0.75 } ] } ], "urlKey": "product-name", "productVariants": [ { "id": "843", "name": "XXL size", "image": "https://cdn.sinqro.com/assets/images/placeholder_image.jpg", "price": 14, "public": true, "featured": false, "shortDescription": "Tomatoes, cheese, oil, and garlic", "description": "It was our first pizza ...", "parentName": null, "isAvailable": true, "tags": [ null ], "productOptionsCategories": [ { "id": "102", "name": "Our ingredients", "shortDescription": "What do you put on your pizza?", "position": 1, "maxSelection": 10, "minSelection": null, "maxSameOptionSelection": 2, "selectionLabel": "Max. 10", "productOptions": [ { "id": "233", "name": "Cheddar", "shortDescription": "Add cheddar to your pizza", "position": 1, "isAvailable": true, "price": 0.75 } ] } ], "urlKey": "product-name" } ] } ] }
Order
MODEL ATTRIBUTES
id | integer (int64) | Order identifier | |
totalAmount | number (float) | Total order amount VAT included | |
executionTimeLabel | string | Short text representing order execution time | |
executionTime | string | Order execution time | |
comment | string | Consumer order comment | |
cancellationComment | string | Only if order is cancelled | |
consumer | object Consumer | ||
status | object OrderStatus | Current order status | |
type | string | Order type code. More info in 'Understanding order types' section. Possible values delivery collection insitu reservation inside |
|
sellingPoint | object SellingPoint | Selling point data | |
payments | array Payment | Order payments | |
orderLines | array OrderLine | Order items | |
deliveryAmount | number (float) | Delivery amount. Only for delivery orders. | |
deliveryAddress | object Delivery address | Only for delivery orders | |
deliveries | array Delivery | Order deliveries | |
dinersNumber | integer (int64) | Number of diners. Only for reservations, insitu and inside orders. | |
isCancellable | boolean | Returns true if order can be cancelled | |
posOrderId | string | POS order identifier | |
marketOrderId | string | Market order identifier | |
marketOrderCode | string | Market order code |
MODEL EXAMPLES
Delivery order example - MARKET
{ "id": 418774, "orderGroupId": null, "totalAmount": 68.0, "executionTimeLabel": "hoy 23/07 a las 09:06h", "preparationTimeLabel": "hoy 23/07 a las 08:56h", "comment": "This is the order comment!", "cancellationComment": null, "consumer": { "id": 18899, "name": "Client_73626", "lastname": "Lastname_73626", "email": null, "phone": "+34600000000", "image": null, "notificationsChannel": "1f4cac2743f504bb2a10cdff9bc2c365", "chatToken": null, "marketClientId": null }, "status": { "code": "waiting_sp_validation", "name": "Esperando validación del negocio", "color": "#f7981d", "isFinalStatus": false, "globalStatusCode": "processing" }, "type": "delivery", "sellingPoint": { "id": 3961, "name": "SuperPizza", "address": { "id": 16187, "street": "Carrer de la Tecnologia, 17", "details": "", "city": "Viladecans", "province": "Barcelona", "postalCode": "08840", "latitude": 41.31372, "longitude": 2.031222, "googlePlaceId": "ChIJRQPl5lmcpBIRXpga-ZW5xvY", "placeName": "Carrer de la Tecnologia, 17, 08840 Viladecans, Barcelona, España", "autoGeolocated": true }, "phone": "+34900000000", "email": "superpizza@example.com", "logo": "https://content.sinqro.com/e4cd836538_f79efe5783_82291551976531iconImagesqd2mt.png", "mainImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "mainImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "listImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "listImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "type": "Pizzería", "urlKey": "superpizza-viladecans", "timezone": "Europe/Madrid" }, "payments": [ { "id": 54712, "amount": 68.0, "paymentMethodName": "Efectivo", "prepaid": false } ], "orderLines": [ { "type": "PRODUCT", "totalAmount": 36.0, "unitPrice": 12.0, "quantity": 3, "label": "Pizza de la huerta", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.0, "unitPrice": 1.0, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "id": 234816, "externalId": null } } ], "baseAmount": 32.73, "vatAmount": 3.27, "vatValue": 10, "product": { "id": 109838, "externalId": null } }, { "type": "PRODUCT", "totalAmount": 27.0, "unitPrice": 13.5, "quantity": 2, "label": "Pizza Barbacoa", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.0, "unitPrice": 1.0, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "id": 234816, "externalId": null } } ], "baseAmount": 24.55, "vatAmount": 2.45, "vatValue": 10, "product": { "id": 109840, "externalId": null } }, { "type": "PRODUCT", "totalAmount": 4.0, "unitPrice": 2.0, "quantity": 2, "label": "Cerveza 33cl", "comment": "Comment 1", "childrenOrderLines": [], "baseAmount": 3.64, "vatAmount": 0.36, "vatValue": 10, "product": { "id": 109842, "externalId": null } }, { "type": "DELIVERY", "totalAmount": 1.0, "unitPrice": 1.0, "quantity": 1, "label": "Delivery cost", "comment": null, "childrenOrderLines": [], "baseAmount": 0.83, "vatAmount": 0.17, "vatValue": 21, "distance": 0.0 } ], "isCancellable": true, "isAcceptable": true, "baseAmount": 61.75, "vatAmount": 6.25, "currency": { "isoCode": "EUR", "symbol": "€", "displayPattern": "{{ amount }}€" }, "posOrderId": null, "marketOrderId": "73626", "marketOrderCode": "RNYLUD", "executionTime": "2020-07-23T07:06:52+0000", "deliveryAmount": 1.0, "deliveryAddress": { "id": 16188, "street": "Carrer de la Tecnologia, 17", "details": null, "city": "Viladecans", "province": "Barcelona", "postalCode": "08840", "latitude": 41.31372, "longitude": 2.031222, "googlePlaceId": "ChIJRQPl5lmcpBIRXpga-ZW5xvY", "placeName": "Carrer de la Tecnologia, 17, 08840 Viladecans, Barcelona, España", "autoGeolocated": true }, "deliveries": [ { "id": 283003, "status": { "code": "WAITING_SELLING_POINT_ACCEPTANCE", "name": "Esperando aceptación punto de venta", "color": "#f7981d", "isFinalStatus": false }, "driver": null, "deliveryAccountName": null, "deliveryAccountPhone": null, "pickupAddress": { "id": 16187, "street": "Carrer de la Tecnologia, 17", "details": "", "city": "Viladecans", "province": "Barcelona", "postalCode": "08840", "latitude": 41.31372, "longitude": 2.031222, "googlePlaceId": "ChIJRQPl5lmcpBIRXpga-ZW5xvY", "placeName": "Carrer de la Tecnologia, 17, 08840 Viladecans, Barcelona, España", "autoGeolocated": true }, "pickupAgreedAt": "2020-07-23T06:56:52+0000", "pickupConfirmedAt": "2020-07-23T06:56:52+0000", "deliveryAddress": { "id": 16188, "street": "Carrer de la Tecnologia, 17", "details": null, "city": "Viladecans", "province": "Barcelona", "postalCode": "08840", "latitude": 41.31372, "longitude": 2.031222, "googlePlaceId": "ChIJRQPl5lmcpBIRXpga-ZW5xvY", "placeName": "Carrer de la Tecnologia, 17, 08840 Viladecans, Barcelona, España", "autoGeolocated": true }, "deliveryAgreedAt": "2020-07-23T07:06:52+0000", "deliveryConfirmedAt": "2020-07-23T07:06:52+0000", "deliveryInstructions": null, "forSenderInstructions": null, "linearDistance": 0.0, "realDistance": null, "route": null, "estimatedDeliveryDuration": 0, "destinationContactEmail": null, "destinationContactName": "Client_73626 · Lastname_73626", "destinationContactPhone": "600000000", "trackingUrl": "https://tracking.sinqro.com/es-es/delivery?t=3b89b290f687eb6abc134d588be7be1a" } ] }
Collection order example - MARKET
{ "id": 418791, "orderGroupId": null, "totalAmount": 41.35, "executionTimeLabel": "hoy 23/07 a las 08:56h", "preparationTimeLabel": "hoy 23/07 a las 08:56h", "comment": "This is the order comment!", "cancellationComment": null, "consumer": { "id": 18900, "name": "Client_52405", "lastname": "Lastname_52405", "email": null, "phone": "+34600000000", "image": null, "notificationsChannel": "8068827f3ae88d499d52ebcc05f82c33", "chatToken": null, "marketClientId": null }, "status": { "code": "waiting_sp_validation", "name": "Esperando validación del negocio", "color": "#f7981d", "isFinalStatus": false, "globalStatusCode": "processing" }, "type": "collection", "sellingPoint": { "id": 3961, "name": "SuperPizza", "address": { "id": 16187, "street": "Carrer de la Tecnologia, 17", "details": "", "city": "Viladecans", "province": "Barcelona", "postalCode": "08840", "latitude": 41.31372, "longitude": 2.031222, "googlePlaceId": "ChIJRQPl5lmcpBIRXpga-ZW5xvY", "placeName": "Carrer de la Tecnologia, 17, 08840 Viladecans, Barcelona, España", "autoGeolocated": true }, "phone": "+34900000000", "email": "superpizza@example.com", "logo": "https://content.sinqro.com/e4cd836538_f79efe5783_82291551976531iconImagesqd2mt.png", "mainImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "mainImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "listImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "listImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "type": "Pizzería", "urlKey": "superpizza-viladecans", "timezone": "Europe/Madrid" }, "payments": [ { "id": 54713, "amount": 41.35, "paymentMethodName": "Efectivo", "prepaid": false } ], "orderLines": [ { "type": "PRODUCT", "totalAmount": 24.9, "unitPrice": 12.45, "quantity": 2, "label": "Pizza 4 quesos", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 0.5, "unitPrice": 0.5, "quantity": 1, "label": "Cebolla", "comment": null, "childrenOrderLines": [], "baseAmount": 0.45, "vatAmount": 0.05, "vatValue": 10, "productOption": { "id": 234820, "externalId": null } } ], "baseAmount": 22.64, "vatAmount": 2.26, "vatValue": 10, "product": { "id": 109837, "externalId": null } }, { "type": "PRODUCT", "totalAmount": 13.45, "unitPrice": 13.45, "quantity": 1, "label": "Pizza 4 estaciones", "comment": "Comment 1", "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 0.5, "unitPrice": 0.5, "quantity": 1, "label": "Cebolla", "comment": null, "childrenOrderLines": [], "baseAmount": 0.45, "vatAmount": 0.05, "vatValue": 10, "productOption": { "id": 234820, "externalId": null } } ], "baseAmount": 12.23, "vatAmount": 1.22, "vatValue": 10, "product": { "id": 109839, "externalId": null } }, { "type": "PRODUCT", "totalAmount": 3.0, "unitPrice": 1.5, "quantity": 2, "label": "Agua 0.5L", "comment": null, "childrenOrderLines": [], "baseAmount": 2.73, "vatAmount": 0.27, "vatValue": 10, "product": { "id": 109841, "externalId": null } } ], "isCancellable": true, "isAcceptable": true, "baseAmount": 37.6, "vatAmount": 3.75, "currency": { "isoCode": "EUR", "symbol": "€", "displayPattern": "{{ amount }}€" }, "posOrderId": null, "marketOrderId": "52405", "marketOrderCode": "UGCBAX", "executionTime": "2020-07-23T06:56:57+0000" }
Reservation example - MARKET
{ "id": 418825, "orderGroupId": null, "totalAmount": 0.0, "executionTimeLabel": "hoy 23/07 a las 08:57h", "preparationTimeLabel": "hoy 23/07 a las 08:57h", "comment": "This is the order comment!", "cancellationComment": null, "consumer": { "id": 18902, "name": "Client_74214", "lastname": "Lastname_74214", "email": null, "phone": "+34600000000", "image": null, "notificationsChannel": "21ab6add258b161f022c6c63eae13672", "chatToken": null, "marketClientId": null }, "status": { "code": "waiting_sp_validation", "name": "Esperando validación del negocio", "color": "#f7981d", "isFinalStatus": false, "globalStatusCode": "processing" }, "type": "reservation", "sellingPoint": { "id": 3961, "name": "SuperPizza", "address": { "id": 16187, "street": "Carrer de la Tecnologia, 17", "details": "", "city": "Viladecans", "province": "Barcelona", "postalCode": "08840", "latitude": 41.31372, "longitude": 2.031222, "googlePlaceId": "ChIJRQPl5lmcpBIRXpga-ZW5xvY", "placeName": "Carrer de la Tecnologia, 17, 08840 Viladecans, Barcelona, España", "autoGeolocated": true }, "phone": "+34900000000", "email": "superpizza@example.com", "logo": "https://content.sinqro.com/e4cd836538_f79efe5783_82291551976531iconImagesqd2mt.png", "mainImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "mainImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "listImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "listImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "type": "Pizzería", "urlKey": "superpizza-viladecans", "timezone": "Europe/Madrid" }, "payments": [], "orderLines": [], "isCancellable": true, "isAcceptable": true, "baseAmount": 0.0, "vatAmount": 0.0, "currency": { "isoCode": "EUR", "symbol": "€", "displayPattern": "{{ amount }}€" }, "posOrderId": null, "marketOrderId": "74214", "marketOrderCode": "PAB2YJ", "executionTime": "2020-07-23T06:57:08+0000", "dinersNumber": 2 }
Insitu order (pre-order with reservation) example - MARKET
{ "id": 418808, "orderGroupId": null, "totalAmount": 55.0, "executionTimeLabel": "hoy 23/07 a las 08:57h", "preparationTimeLabel": "hoy 23/07 a las 08:57h", "comment": "This is the order comment!", "cancellationComment": null, "consumer": { "id": 18901, "name": "Client_34266", "lastname": "Lastname_34266", "email": null, "phone": "+34600000000", "image": null, "notificationsChannel": "eb6f578f112877ec274a1dc0eb946a15", "chatToken": null, "marketClientId": null }, "status": { "code": "waiting_sp_validation", "name": "Esperando validación del negocio", "color": "#f7981d", "isFinalStatus": false, "globalStatusCode": "processing" }, "type": "insitu", "sellingPoint": { "id": 3961, "name": "SuperPizza", "address": { "id": 16187, "street": "Carrer de la Tecnologia, 17", "details": "", "city": "Viladecans", "province": "Barcelona", "postalCode": "08840", "latitude": 41.31372, "longitude": 2.031222, "googlePlaceId": "ChIJRQPl5lmcpBIRXpga-ZW5xvY", "placeName": "Carrer de la Tecnologia, 17, 08840 Viladecans, Barcelona, España", "autoGeolocated": true }, "phone": "+34900000000", "email": "superpizza@example.com", "logo": "https://content.sinqro.com/e4cd836538_f79efe5783_82291551976531iconImagesqd2mt.png", "mainImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "mainImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "listImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "listImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "type": "Pizzería", "urlKey": "superpizza-viladecans", "timezone": "Europe/Madrid" }, "payments": [ { "id": 54714, "amount": 55.0, "paymentMethodName": "Efectivo", "prepaid": false } ], "orderLines": [ { "type": "PRODUCT", "totalAmount": 25.0, "unitPrice": 12.5, "quantity": 2, "label": "Pizza de la huerta", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.5, "unitPrice": 1.5, "quantity": 1, "label": "Jamón Serrano", "comment": null, "childrenOrderLines": [], "baseAmount": 1.36, "vatAmount": 0.14, "vatValue": 10, "productOption": { "id": 234817, "externalId": null } } ], "baseAmount": 22.73, "vatAmount": 2.27, "vatValue": 10, "product": { "id": 109838, "externalId": null } }, { "type": "PRODUCT", "totalAmount": 27.0, "unitPrice": 13.5, "quantity": 2, "label": "Pizza Barbacoa", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.0, "unitPrice": 1.0, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "id": 234816, "externalId": null } } ], "baseAmount": 24.55, "vatAmount": 2.45, "vatValue": 10, "product": { "id": 109840, "externalId": null } }, { "type": "PRODUCT", "totalAmount": 3.0, "unitPrice": 1.5, "quantity": 2, "label": "Agua 0.5L", "comment": "Comment 1", "childrenOrderLines": [], "baseAmount": 2.73, "vatAmount": 0.27, "vatValue": 10, "product": { "id": 109841, "externalId": null } } ], "isCancellable": true, "isAcceptable": true, "baseAmount": 50.01, "vatAmount": 4.99, "currency": { "isoCode": "EUR", "symbol": "€", "displayPattern": "{{ amount }}€" }, "posOrderId": null, "marketOrderId": "34266", "marketOrderCode": "J1YMJA", "executionTime": "2020-07-23T06:57:00+0000", "dinersNumber": 4 }
Inside order (table service) example - MARKET
{ "id": 418842, "orderGroupId": 8546, "totalAmount": 58.5, "executionTimeLabel": "hoy 23/07 a las 08:58h", "preparationTimeLabel": "hoy 23/07 a las 08:58h", "comment": "This is the order comment!", "cancellationComment": null, "consumer": { "id": 18903, "name": "Client_20160", "lastname": "Lastname_20160", "email": null, "phone": "+34600000000", "image": null, "notificationsChannel": "aaa82bfd362a6daf5097ce8891cf6acf", "chatToken": null, "marketClientId": null }, "status": { "code": "waiting_sp_validation", "name": "Esperando validación del negocio", "color": "#f7981d", "isFinalStatus": false, "globalStatusCode": "processing" }, "type": "inside", "sellingPoint": { "id": 3961, "name": "SuperPizza", "address": { "id": 16187, "street": "Carrer de la Tecnologia, 17", "details": "", "city": "Viladecans", "province": "Barcelona", "postalCode": "08840", "latitude": 41.31372, "longitude": 2.031222, "googlePlaceId": "ChIJRQPl5lmcpBIRXpga-ZW5xvY", "placeName": "Carrer de la Tecnologia, 17, 08840 Viladecans, Barcelona, España", "autoGeolocated": true }, "phone": "+34900000000", "email": "superpizza@example.com", "logo": "https://content.sinqro.com/e4cd836538_f79efe5783_82291551976531iconImagesqd2mt.png", "mainImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "mainImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "listImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "listImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "type": "Pizzería", "urlKey": "superpizza-viladecans", "timezone": "Europe/Madrid" }, "payments": [ { "id": 54715, "amount": 58.5, "paymentMethodName": "Efectivo", "prepaid": false } ], "orderLines": [ { "type": "PRODUCT", "totalAmount": 12.0, "unitPrice": 12.0, "quantity": 1, "label": "Pizza de la huerta", "comment": "Comment 1", "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.0, "unitPrice": 1.0, "quantity": 1, "label": "Huevo duro", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "id": 234819, "externalId": null } } ], "baseAmount": 10.91, "vatAmount": 1.09, "vatValue": 10, "product": { "id": 109838, "externalId": null } }, { "type": "PRODUCT", "totalAmount": 40.5, "unitPrice": 13.5, "quantity": 3, "label": "Pizza Barbacoa", "comment": "Comment 2", "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.0, "unitPrice": 1.0, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "id": 234816, "externalId": null } } ], "baseAmount": 36.82, "vatAmount": 3.68, "vatValue": 10, "product": { "id": 109840, "externalId": null } }, { "type": "PRODUCT", "totalAmount": 6.0, "unitPrice": 2.0, "quantity": 3, "label": "Cerveza 33cl", "comment": null, "childrenOrderLines": [], "baseAmount": 5.45, "vatAmount": 0.55, "vatValue": 10, "product": { "id": 109842, "externalId": null } } ], "isCancellable": true, "isAcceptable": true, "baseAmount": 53.18, "vatAmount": 5.32, "currency": { "isoCode": "EUR", "symbol": "€", "displayPattern": "{{ amount }}€" }, "posOrderId": null, "marketOrderId": "20160", "marketOrderCode": "O6DJCP", "executionTime": "2020-07-23T06:58:36+0000", "dinersNumber": 4, "serviceLocation": { "code": "TZ10", "name": "Mesa 10", "serviceZone": { "code": "TZ", "name": "Terraza" } } }
OrderLine
MODEL ATTRIBUTES
totalAmount | number (float) | Order line total amount VAT included | |
unitPrice | number (float) | Order line total amount VAT included | |
quantity | integer (int64) | Order line quantity | |
comment | string | Order line comment | |
label | string | Order line label | |
type | string | Type code Possible values PRODUCT MENU PRODUCT_OPTION DISCOUNT DELIVERY CUSTOM POS_ITEM |
|
distance | number (float) | Only used in delivery order lines | |
product | object Product | Only for orderLine type PRODUCT | |
menu | object Menu | Only for orderLine type MENU | |
productOption | object ProductOption | Only for orderLine type PRODUCT_OPTION | |
discount | object Discount | Only for orderLine type DISCOUNT | |
coupon | object Coupon | Only for orderLine type DISCOUNT | |
childrenOrderLines | array SELF | Children order line has same schema as OrderLine | |
baseAmount | number (float) | Total order line amount VAT excluded | |
vatAmount | number (float) | Total order line VAT amount | |
vatValue | number (float) | Applied order line VAT value |
MODEL EXAMPLES
Example
{ "totalAmount": 29.9, "unitPrice": 14.95, "quantity": 2, "comment": "Order line comment", "label": "Pizza margherita", "type": "PRODUCT", "distance": null, "product": { "id": "843" }, "menu": { "id": 543 }, "productOption": { "id": "233" }, "discount": { "id": "233" }, "coupon": { "code": "first10" }, "childrenOrderLines": [ null ] }
OrderRaw
Despite this you can find the definition in other models in this document.
MODEL EXAMPLES
Create delivery order
{ "marketOrderId": "1406545518", "code": "LBJ8ZUJR", "productsAmount": 67, "deliveryAmount": 1, "discountsAmount": 0, "totalAmount": 68, "executionTime": "2020-07-23 14:07:04", "comment": "Consumer order notes", "currency": "EUR", "consumer": { "email": "consumer@example.com", "name": "Fulanito", "lastname": "Doe", "phone": "+34600000000", "billingName": null, "billingAddress": null, "billingVatNumber": null }, "type": "delivery", "sellingPoint": { "sinqroId": 3961 }, "payments": [ { "amount": 68, "tipAmount": 0, "methodCode": "EXTERNAL_PAYMENT" } ], "orderLines": [ { "type": "PRODUCT", "totalAmount": 36, "unitAdditionalAmount": 1, "unitAmount": 11, "quantity": 3, "label": "Pizza de la huerta", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1, "unitAdditionalAmount": 0, "unitFinalAmount": 1, "unitAmount": 1, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "sinqroId": 234816 } } ], "baseAmount": 32.73, "vatAmount": 3.27, "vatValue": 10, "product": { "sinqroId": 109838 } }, { "type": "PRODUCT", "totalAmount": 27, "unitAdditionalAmount": 1, "unitFinalAmount": 13.5, "unitAmount": 12.5, "quantity": 2, "label": "Pizza Barbacoa", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1, "unitAdditionalAmount": 0, "unitFinalAmount": 1, "unitAmount": 1, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "sinqroId": 234816 } } ], "baseAmount": 24.55, "vatAmount": 2.45, "vatValue": 10, "product": { "sinqroId": 109840 } }, { "type": "PRODUCT", "totalAmount": 4, "unitAdditionalAmount": 0, "unitFinalAmount": 2, "unitAmount": 2, "quantity": 2, "label": "Cerveza 33cl", "comment": "Comment 1", "childrenOrderLines": [], "baseAmount": 3.64, "vatAmount": 0.36, "vatValue": 10, "product": { "sinqroId": 109842 } }, { "type": "DELIVERY", "totalAmount": 1, "unitAmount": 1, "quantity": 1, "label": "Delivery cost", "comment": null, "childrenOrderLines": [], "baseAmount": 0.83, "vatAmount": 0.17, "vatValue": 21, "distance": 0 } ], "delivery": { "deliveryAddress": { "streetAndNumber": "Carrer de la Tecnologia, 17", "details": "Piso 2 - Puerta 3", "city": "Viladecans", "province": "Barcelona", "postalCode": "08840", "latitude": "41.31359311686318", "longitude": "2.0311733479297978", "forceCreation": true } } }
Create collection order
{ "marketOrderId": "1406545518", "code": "LBJ8ZUJR", "productsAmount": 67.0, "discountsAmount": 0.0, "totalAmount": 67.0, "executionTime": "2020-07-23 14:07:04", "comment": "Consumer order notes", "currency": "EUR", "consumer": { "email": "consumer@example.com", "name": "Fulanito", "lastname": "Doe", "phone": "+34600000000", "billingName": null, "billingAddress": null, "billingVatNumber": null }, "type": "collection", "sellingPoint": { "sinqroId": 3961 }, "payments": [ { "amount": 67.0, "tipAmount": 0, "methodCode": "EXTERNAL_PAYMENT" } ], "orderLines": [ { "type": "PRODUCT", "totalAmount": 36.0, "unitAdditionalAmount": 1.0, "unitAmount": 11.0, "quantity": 3, "label": "Pizza de la huerta", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.0, "unitAdditionalAmount": 0.0, "unitFinalAmount": 1.0, "unitAmount": 1.0, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "sinqroId": 234816 } } ], "baseAmount": 32.73, "vatAmount": 3.27, "vatValue": 10, "product": { "sinqroId": 109838 } }, { "type": "PRODUCT", "totalAmount": 27.0, "unitAdditionalAmount": 1.0, "unitFinalAmount": 13.5, "unitAmount": 12.5, "quantity": 2, "label": "Pizza Barbacoa", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.0, "unitAdditionalAmount": 0.0, "unitFinalAmount": 1.0, "unitAmount": 1.0, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "sinqroId": 234816 } } ], "baseAmount": 24.55, "vatAmount": 2.45, "vatValue": 10, "product": { "sinqroId": 109840 } }, { "type": "PRODUCT", "totalAmount": 4.0, "unitAdditionalAmount": 0.0, "unitFinalAmount": 2.0, "unitAmount": 2.0, "quantity": 2, "label": "Cerveza 33cl", "comment": "Comment 1", "childrenOrderLines": [], "baseAmount": 3.64, "vatAmount": 0.36, "vatValue": 10, "product": { "sinqroId": 109842 } } ] }
Create reservation
{ "marketOrderId": "1406545518", "code": "LBJ8ZUJR", "executionTime": "2020-07-23 14:07:04", "comment": "Consumer order notes", "consumer": { "email": "consumer@example.com", "name": "Fulanito", "lastname": "Doe", "phone": "+34600000000", "billingName": null, "billingAddress": null, "billingVatNumber": null }, "type": "reservation", "sellingPoint": { "sinqroId": 3961 }, "dinersNumber": 4 }
Create insitu order (pre-order with reservation)
{ "marketOrderId": "1406545518", "code": "LBJ8ZUJR", "productsAmount": 67.0, "discountsAmount": 0.0, "totalAmount": 67.0, "executionTime": "2020-07-23 14:07:04", "comment": "Consumer order notes", "currency": "EUR", "consumer": { "email": "consumer@example.com", "name": "Fulanito", "lastname": "Doe", "phone": "+34600000000", "billingName": null, "billingAddress": null, "billingVatNumber": null }, "type": "insitu", "sellingPoint": { "sinqroId": 3961 }, "payments": [ { "amount": 67.0, "tipAmount": 0, "methodCode": "EXTERNAL_PAYMENT" } ], "orderLines": [ { "type": "PRODUCT", "totalAmount": 36.0, "unitAdditionalAmount": 1.0, "unitAmount": 11.0, "quantity": 3, "label": "Pizza de la huerta", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.0, "unitAdditionalAmount": 0.0, "unitFinalAmount": 1.0, "unitAmount": 1.0, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "sinqroId": 234816 } } ], "baseAmount": 32.73, "vatAmount": 3.27, "vatValue": 10, "product": { "sinqroId": 109838 } }, { "type": "PRODUCT", "totalAmount": 27.0, "unitAdditionalAmount": 1.0, "unitFinalAmount": 13.5, "unitAmount": 12.5, "quantity": 2, "label": "Pizza Barbacoa", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.0, "unitAdditionalAmount": 0.0, "unitFinalAmount": 1.0, "unitAmount": 1.0, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "sinqroId": 234816 } } ], "baseAmount": 24.55, "vatAmount": 2.45, "vatValue": 10, "product": { "sinqroId": 109840 } }, { "type": "PRODUCT", "totalAmount": 4.0, "unitAdditionalAmount": 0.0, "unitFinalAmount": 2.0, "unitAmount": 2.0, "quantity": 2, "label": "Cerveza 33cl", "comment": "Comment 1", "childrenOrderLines": [], "baseAmount": 3.64, "vatAmount": 0.36, "vatValue": 10, "product": { "sinqroId": 109842 } } ], "dinersNumber": 4 }
Create inside order (table service)
{ "marketOrderId": "1406545518", "code": "LBJ8ZUJR", "productsAmount": 67.0, "discountsAmount": 0.0, "totalAmount": 67.0, "executionTime": "2020-07-23 14:07:04", "comment": "Consumer order notes", "currency": "EUR", "consumer": { "email": "consumer@example.com", "name": "Fulanito", "lastname": "Doe", "phone": "+34600000000", "billingName": null, "billingAddress": null, "billingVatNumber": null }, "type": "inside", "sellingPoint": { "sinqroId": 3961 }, "serviceLocationCode": "BAR4", "payments": [ { "amount": 67.0, "tipAmount": 0, "methodCode": "EXTERNAL_PAYMENT" } ], "orderLines": [ { "type": "PRODUCT", "totalAmount": 36.0, "unitAdditionalAmount": 1.0, "unitAmount": 11.0, "quantity": 3, "label": "Pizza de la huerta", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.0, "unitAdditionalAmount": 0.0, "unitFinalAmount": 1.0, "unitAmount": 1.0, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "sinqroId": 234816 } } ], "baseAmount": 32.73, "vatAmount": 3.27, "vatValue": 10, "product": { "sinqroId": 109838 } }, { "type": "PRODUCT", "totalAmount": 27.0, "unitAdditionalAmount": 1.0, "unitFinalAmount": 13.5, "unitAmount": 12.5, "quantity": 2, "label": "Pizza Barbacoa", "comment": null, "childrenOrderLines": [ { "type": "PRODUCT_OPTION", "totalAmount": 1.0, "unitAdditionalAmount": 0.0, "unitFinalAmount": 1.0, "unitAmount": 1.0, "quantity": 1, "label": "Bacon", "comment": null, "childrenOrderLines": [], "baseAmount": 0.91, "vatAmount": 0.09, "vatValue": 10, "productOption": { "sinqroId": 234816 } } ], "baseAmount": 24.55, "vatAmount": 2.45, "vatValue": 10, "product": { "sinqroId": 109840 } }, { "type": "PRODUCT", "totalAmount": 4.0, "unitAdditionalAmount": 0.0, "unitFinalAmount": 2.0, "unitAmount": 2.0, "quantity": 2, "label": "Cerveza 33cl", "comment": "Comment 1", "childrenOrderLines": [], "baseAmount": 3.64, "vatAmount": 0.36, "vatValue": 10, "product": { "sinqroId": 109842 } } ] }
OrderStatus
MODEL ATTRIBUTES
code | string | Status identifier code Possible values waiting_sp_validation accepted preparation ready delivering delivered incident cancelled finished reservation_accepted cancelled_by_sp cancelled_by_client cancelled_by_driver cancelled_by_team payment_authorisation_failed |
|
name | string | Status name | |
color | string | HEX color code for the status | |
isFinalStatus | boolean | Return if status is final status and doesn't require interaction | |
globalStatusCode | string | Order global status identifier code |
MODEL EXAMPLES
Example
{ "code": "waiting_sp_validation", "name": "Waiting selling point validation", "color": "#f7981d", "isFinalStatus": false, "globalStatusCode": "processing" }
OrderStatus
MODEL ATTRIBUTES
code | string | Status identifier code Possible values waiting_sp_validation accepted preparation ready delivering delivered incident cancelled finished reservation_accepted cancelled_by_sp cancelled_by_client cancelled_by_driver cancelled_by_team payment_authorisation_failed |
|
name | string | Status name | |
color | string | HEX color code for the status | |
callToAction | string | Call to action if is needed | |
globalStatusCode | string | Order global status identifier code |
MODEL EXAMPLES
Example
{ "code": "waiting_sp_validation", "name": "Waiting selling point validation", "color": "#f7981d", "callToAction": null, "globalStatusCode": "processing" }
Payment
MODEL ATTRIBUTES
id | integer (int64) | Order payment identifier | |
amount | number (float) | Payment amount | |
paymentMethodName | string | Payment method name | |
prepaid | boolean | True if the payment has already been paid |
MODEL EXAMPLES
Example
{ "id": 5922, "amount": 29.9, "paymentMethodName": "Credit card", "prepaid": true }
PaymentCreatedData
Despite this you can find the definition in other models in this document.
MODEL EXAMPLES
Example
{ "payment": { "id": 47315, "amount": 0.16, "debtAmount": 0.16, "tipAmount": 0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T07:16:38+0000" }, "orderGroup": { "id": 368646, "orderTypeCode": "inside", "openCheckouts": [], "closedCheckouts": [ { "id": 363524, "inProgress": false, "userName": "fadsfdsf f.", "totalAmount": 8.4, "lastUpdateAt": "2022-03-17T05:16:18+0000", "orderId": 363524, "marketOrderId": null, "marketOrderCode": "363524", "items": [ { "name": "Burger La Mia", "quantity": 1, "comment": "", "unitPrice": 7.9, "unitAdditionalPrice": 0.5, "unitFinalPrice": 8.4, "totalPrice": 8.4, "items": [ { "name": "Pan classic", "quantity": 1, "comment": null, "unitPrice": 0.5, "unitAdditionalPrice": 0.0, "unitFinalPrice": 0.5, "totalPrice": 0.5, "items": [] }, { "name": "Pollo Crispy", "quantity": 1, "comment": null, "unitPrice": 0.0, "unitAdditionalPrice": 0.0, "unitFinalPrice": 0.0, "totalPrice": 0.0, "items": [] } ] } ] }, { "id": 363541, "inProgress": false, "userName": "fadsfdsf f.", "totalAmount": 66.5, "lastUpdateAt": "2022-03-17T05:27:17+0000", "orderId": 363541, "marketOrderId": null, "marketOrderCode": "363541", "items": [ { "name": "Burger La Mia", "quantity": 7, "comment": "", "unitPrice": 7.9, "unitAdditionalPrice": 1.6, "unitFinalPrice": 9.5, "totalPrice": 66.5, "items": [ { "name": "Pan brioche", "quantity": 1, "comment": null, "unitPrice": 0.7, "unitAdditionalPrice": 0.0, "unitFinalPrice": 0.7, "totalPrice": 0.7, "items": [] }, { "name": "Pollo Crispy", "quantity": 1, "comment": null, "unitPrice": 0.0, "unitAdditionalPrice": 0.0, "unitFinalPrice": 0.0, "totalPrice": 0.0, "items": [] }, { "name": "Salsa Bacon", "quantity": 1, "comment": null, "unitPrice": 0.9, "unitAdditionalPrice": 0.0, "unitFinalPrice": 0.9, "totalPrice": 0.9, "items": [] } ] } ] } ], "payments": [ { "id": 47291, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:17:52+0000" }, { "id": 47292, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:20:49+0000" }, { "id": 47293, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:21:11+0000" }, { "id": 47294, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:21:39+0000" }, { "id": 47295, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:21:48+0000" }, { "id": 47296, "amount": 0.3, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:22:21+0000" }, { "id": 47297, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:24:23+0000" }, { "id": 47298, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:26:07+0000" }, { "id": 47299, "amount": 1.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:26:21+0000" }, { "id": 47301, "amount": 2.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:27:58+0000" }, { "id": 47302, "amount": 6.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:28:13+0000" }, { "id": 47303, "amount": 6.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:32:59+0000" }, { "id": 47304, "amount": 6.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:33:24+0000" }, { "id": 47305, "amount": 6.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:44:27+0000" }, { "id": 47306, "amount": 6.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "Demo User", "paidAt": "2022-03-17T05:47:54+0000" }, { "id": 47307, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "Demo User", "paidAt": "2022-03-17T05:49:17+0000" }, { "id": 47308, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:56:03+0000" }, { "id": 47309, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:05:29+0000" }, { "id": 47310, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:05:42+0000" }, { "id": 47311, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:09:06+0000" }, { "id": 47312, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:11:30+0000" }, { "id": 47313, "amount": 0.15, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:16:02+0000" }, { "id": 47314, "amount": 0.15, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:16:38+0000" }, { "id": 47291, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:17:52+0000" }, { "id": 47292, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:20:49+0000" }, { "id": 47293, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:21:11+0000" }, { "id": 47294, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:21:39+0000" }, { "id": 47295, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:21:48+0000" }, { "id": 47296, "amount": 0.3, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:22:21+0000" }, { "id": 47297, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:24:23+0000" }, { "id": 47298, "amount": 1.0, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:26:07+0000" }, { "id": 47299, "amount": 1.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:26:21+0000" }, { "id": 47301, "amount": 2.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:27:58+0000" }, { "id": 47302, "amount": 6.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:28:13+0000" }, { "id": 47303, "amount": 6.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:32:59+0000" }, { "id": 47304, "amount": 6.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:33:24+0000" }, { "id": 47305, "amount": 6.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:44:27+0000" }, { "id": 47306, "amount": 6.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "Demo User", "paidAt": "2022-03-17T05:47:54+0000" }, { "id": 47307, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "Demo User", "paidAt": "2022-03-17T05:49:17+0000" }, { "id": 47308, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T05:56:03+0000" }, { "id": 47309, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:05:29+0000" }, { "id": 47310, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:05:42+0000" }, { "id": 47311, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:09:06+0000" }, { "id": 47312, "amount": 0.1, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:11:30+0000" }, { "id": 47313, "amount": 0.15, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:16:02+0000" }, { "id": 47314, "amount": 0.15, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T06:16:38+0000" }, { "id": 47315, "amount": 0.16, "paymentMethodName": "External platforms", "prepaid": true, "methodCode": "EXTERNAL_PAYMENT", "userName": "John Doe", "paidAt": "2022-03-17T07:16:38+0000" } ], "amounts": { "ordersAmount": 74.9, "paymentsAmount": 42.06, "pendingPaymentsAmount": 32.84 } } }
PaymentInputData
Despite this you can find the definition in other models in this document.
MODEL EXAMPLES
Payment of 13.85 € (13 € of ordered items + 0.85 € for tip)
{ "marketPaymentId": "YOUR-PAYMENT-REFERENCE", "amount": 13.85, "tipAmount": 0.85, "consumer": { "name": "John", "lastname": "Doe", "email": "john.doe@example.com", "phone": "+34600000000" } }
Product
MODEL ATTRIBUTES
id | integer (int64) | Product identifier | |
externalId | string | Custom identifier |
MODEL EXAMPLES
Example
{ "id": "843" }
Product
MODEL ATTRIBUTES
id | integer (int64) | Product identifier | |
externalId | string | Custom identifier | |
name | string | Product name | |
image | string | Product image url | |
price | number (float) | Product price | |
public | boolean | Returns true if the product is public and can be displayed for consumers | |
featured | boolean | Returns true if the product is featured | |
shortDescription | string | Product short description | |
description | string | Product description | |
parentName | string | Parent product name, used in product variants | |
isAvailable | boolean | Returns true if the product can be purchased | |
tags | array | Array with product tags | |
productOptionsCategories | array ProductOptionsCategory | Product options categories | |
urlKey | string | Encoded name for url | |
productVariants | array Product | Product variants |
MODEL EXAMPLES
Example
{ "id": "843", "name": "Neapolitan Pizza", "image": "https://cdn.sinqro.com/assets/images/placeholder_image.jpg", "price": 11.5, "public": true, "featured": false, "shortDescription": "Tomatoes, cheese, oil, and garlic", "description": "It was our first pizza ...", "parentName": null, "isAvailable": true, "tags": [ null ], "productOptionsCategories": [ { "id": "102", "name": "Our ingredients", "shortDescription": "What do you put on your pizza?", "position": 1, "maxSelection": 10, "minSelection": null, "maxSameOptionSelection": 2, "selectionLabel": "Max. 10", "productOptions": [ { "id": "233", "name": "Cheddar", "shortDescription": "Add cheddar to your pizza", "position": 1, "isAvailable": true, "price": 0.75 } ] } ], "urlKey": "product-name", "productVariants": [ { "id": "843", "name": "XXL size", "image": "https://cdn.sinqro.com/assets/images/placeholder_image.jpg", "price": 14, "public": true, "featured": false, "shortDescription": "Tomatoes, cheese, oil, and garlic", "description": "It was our first pizza ...", "parentName": null, "isAvailable": true, "tags": [ null ], "productOptionsCategories": [ { "id": "102", "name": "Our ingredients", "shortDescription": "What do you put on your pizza?", "position": 1, "maxSelection": 10, "minSelection": null, "maxSameOptionSelection": 2, "selectionLabel": "Max. 10", "productOptions": [ { "id": "233", "name": "Cheddar", "shortDescription": "Add cheddar to your pizza", "position": 1, "isAvailable": true, "price": 0.75 } ] } ], "urlKey": "product-name" } ] }
Product
MODEL ATTRIBUTES
id | integer (int64) | Product identifier | |
externalId | string | Custom identifier | |
name | string | Product name | |
image | string | Product image url | |
price | number (float) | Product price | |
public | boolean | Returns true if the product is public and can be displayed for consumers | |
featured | boolean | Returns true if the product is featured | |
shortDescription | string | Product short description | |
description | string | Product description | |
parentName | string | Parent product name, used in product variants | |
isAvailable | boolean | Returns true if the product can be purchased | |
tags | array | Array with product tags | |
productOptionsCategories | array ProductOptionsCategory | Product options categories | |
urlKey | string | Encoded name for url |
MODEL EXAMPLES
Example
{ "id": "843", "name": "XXL size", "image": "https://cdn.sinqro.com/assets/images/placeholder_image.jpg", "price": 14, "public": true, "featured": false, "shortDescription": "Tomatoes, cheese, oil, and garlic", "description": "It was our first pizza ...", "parentName": null, "isAvailable": true, "tags": [ null ], "productOptionsCategories": [ { "id": "102", "name": "Our ingredients", "shortDescription": "What do you put on your pizza?", "position": 1, "maxSelection": 10, "minSelection": null, "maxSameOptionSelection": 2, "selectionLabel": "Max. 10", "productOptions": [ { "id": "233", "name": "Cheddar", "shortDescription": "Add cheddar to your pizza", "position": 1, "isAvailable": true, "price": 0.75 } ] } ], "urlKey": "product-name" }
ProductOption
MODEL ATTRIBUTES
id | integer (int64) | Product option identifier | |
externalId | string | Custom identifier |
MODEL EXAMPLES
Example
{ "id": "233" }
ProductOption
MODEL ATTRIBUTES
id | integer (int64) | Product option identifier | |
externalId | string | Custom identifier | |
name | string | Product option name | |
shortDescription | string | Product option short description | |
position | integer (int32) | Product option position | |
isAvailable | boolean | Returns true if the product option can be purchased | |
price | number (float) | Product option price |
MODEL EXAMPLES
Example
{ "id": "233", "name": "Cheddar", "shortDescription": "Add cheddar to your pizza", "position": 1, "isAvailable": true, "price": 0.75 }
ProductOptionsCategory
MODEL ATTRIBUTES
id | integer (int64) | Product option category identifier | |
externalId | string | Custom identifier | |
name | string | Product option category name | |
shortDescription | string | Product option category description | |
position | integer (int32) | Product option category position | |
maxSelection | integer (int32) | Maximum of options selected for product option category | |
minSelection | integer (int32) | Required minimum of product options selected by consumer. If this value is NULL the consumer may not select any option in this category | |
maxSameOptionSelection | integer (int32) | Maximum times wich the same product option can be selected by consumer. If this value is NULL the consumer can select the same option as many times as he want limited by maxOptions value | |
selectionLabel | string | Text describing minimum and maximum selection options | |
productOptions | array ProductOption | Product options for product option category |
MODEL EXAMPLES
Example
{ "id": "102", "name": "Our ingredients", "shortDescription": "What do you put on your pizza?", "position": 1, "maxSelection": 10, "minSelection": null, "maxSameOptionSelection": 2, "selectionLabel": "Max. 10", "productOptions": [ { "id": "233", "name": "Cheddar", "shortDescription": "Add cheddar to your pizza", "position": 1, "isAvailable": true, "price": 0.75 } ] }
Schedule
MODEL ATTRIBUTES
id | integer (int64) | Schedule identifier | |
ranges | array ScheduleRange | Schedule ranges |
MODEL EXAMPLES
Example
{ "id": 2113, "ranges": [ { "startTime": "06:00:00", "endTime": "18:00:00", "timezone": "Europe/Madrid", "startDay": { "id": 1, "name": "Lunes" }, "endDay": { "id": 1, "name": "Lunes" } } ] }
ScheduleRange
MODEL ATTRIBUTES
MODEL EXAMPLES
Example
{ "startTime": "06:00:00", "endTime": "18:00:00", "timezone": "Europe/Madrid", "startDay": { "id": 1, "name": "Lunes" }, "endDay": { "id": 1, "name": "Lunes" } }
SellingPoint
MODEL ATTRIBUTES
id | integer (int64) | Selling point identifier | |
name | string | Selling point name | |
address | object Address | Selling point address | |
phone | string | Selling point phone | |
string | Selling point contact email | ||
logo | string | Selling point logo url | |
mainImage | string | Selling point main image | |
listImage | string | Selling point list image | |
urlKey | string | Encoded name for url | |
type | string | Type of selling point | |
timezone | string | Selling point time zone | |
description | string | Selling point description | |
schedule | object Schedule | ||
allowedOrderTypes | array | Codes of the allowed order types. More info in 'Understanding order types' section. | |
tags | array Tag | Array with selling point tags |
MODEL EXAMPLES
Example
{ "id": 3442, "name": "My restaurant", "address": { "id": 1003, "street": "C/ Example, 23", "details": "Canada building", "city": "City name", "province": "Province name", "postalCode": "12345", "latitude": 41.308166, "longitude": 2.019725, "googlePlaceId": "xxxxxxxxxxxx", "placeName": "C/ Example, 23, City name" }, "phone": "+34600000000", "email": "myrestaurant@example.com", "logo": "http://mycdn.com/selling-point-logo.jpeg", "mainImage": "http://mycdn.com/selling-point-main-image.jpeg", "listImage": "http://mycdn.com/selling-point-list-image.jpeg", "urlKey": "restaurant-name-city", "type": "Italian", "timezone": "Europe/Madrid", "description": "This restaurant...", "schedule": { "id": 2113, "ranges": [ { "startTime": "06:00:00", "endTime": "18:00:00", "timezone": "Europe/Madrid", "startDay": { "id": 1, "name": "Lunes" }, "endDay": { "id": 1, "name": "Lunes" } } ] }, "allowedOrderTypes": [ null ], "tags": [ { "name": "Veggie", "code": "veggie" } ] }
SellingPoint
MODEL ATTRIBUTES
id | integer (int64) | Selling point identifier | |
name | string | Selling point name | |
address | object Address | Selling point address | |
phone | string | Selling point phone | |
string | Selling point contact email | ||
logo | string | Selling point logo url | |
mainImage | string | Selling point main image | |
listImage | string | Selling point list image | |
urlKey | string | Encoded name for url | |
type | string | Type of selling point | |
timezone | string | Selling point time zone | |
mainImageLarge | string | Selling point main image large | |
listImageLarge | string | Selling point list image large |
MODEL EXAMPLES
Example
{ "id": 3442, "name": "My restaurant", "address": { "id": 1003, "street": "C/ Example, 23", "details": "Canada building", "city": "City name", "province": "Province name", "postalCode": "12345", "latitude": 41.308166, "longitude": 2.019725, "googlePlaceId": "xxxxxxxxxxxx", "placeName": "C/ Example, 23, City name" }, "phone": "+34600000000", "email": "myrestaurant@example.com", "logo": "http://mycdn.com/selling-point-logo.jpeg", "mainImage": "http://mycdn.com/selling-point-main-image.jpeg", "listImage": "http://mycdn.com/selling-point-list-image.jpeg", "urlKey": "restaurant-name-city", "type": "Italian", "timezone": "Europe/Madrid" }
SellingPoint
MODEL ATTRIBUTES
id | integer (int64) | Selling point identifier | |
name | string | Selling point name | |
address | object Address | Selling point address | |
phone | string | Selling point phone | |
string | Selling point contact email | ||
logo | string | Selling point logo url | |
mainImage | string | Selling point main image | |
listImage | string | Selling point list image | |
urlKey | string | Encoded name for url | |
type | string | Type of selling point | |
timezone | string | Selling point time zone | |
description | string | Selling point description | |
schedule | object Schedule | ||
allowedOrderTypes | array | Codes of the allowed order types. More info in 'Understanding order types' section. | |
tags | array Tag | Array with selling point tags |
MODEL EXAMPLES
Example
{ "id": 3961, "name": "SuperPizza", "address": { "id": 16187, "street": "Carrer de la Tecnologia, 17", "details": "", "city": "Viladecans", "province": "Barcelona", "postalCode": "08840", "latitude": 41.31372, "longitude": 2.031222, "googlePlaceId": "ChIJRQPl5lmcpBIRXpga-ZW5xvY", "placeName": "Carrer de la Tecnologia, 17, 08840 Viladecans, Barcelona, España", "autoGeolocated": true }, "phone": "+34900000000", "email": "superpizza@example.com", "logo": "https://content.sinqro.com/e4cd836538_f79efe5783_82291551976531iconImagesqd2mt.png", "mainImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "mainImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "listImage": "https://content.sinqro.com/d770d57632_4e01533575_85091551975570baked-cheese-cherry-tomato-1552635.png", "listImageLarge": "https://content.sinqro.com/1551975570_bab77d7d5bbcec5e64cd3c1ac22c56ee.png", "type": "Pizzería", "allowedOrderTypes": [ "delivery", "collection", "insitu", "reservation", "inside" ], "urlKey": "superpizza-viladecans", "description": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin euismod ante sit amet nulla pretium imperdiet. Nunc laoreet ultricies metus a dictum. Aliquam lorem dui, volutpat vitae orci ut, efficitur pretium erat. Nulla consectetur varius ullamcorper. In ut tristique odio, vitae dignissim magna. Cras euismod eleifend commodo. Cras iaculis felis non mauris mattis, quis pulvinar tellus tincidunt.\n\nEtiam congue augue dapibus odio rhoncus, vel gravida est mattis. In ultrices suscipit ante ut dapibus. Curabitur quis nisl eu lacus sollicitudin vestibulum ac non magna. Vivamus et diam ac odio aliquam efficitur. Fusce ultrices aliquam massa id viverra. Suspendisse eu fringilla nisi. Nullam accumsan neque non lorem ultricies vestibulum id eget tellus.", "schedule": { "id": 1193, "ranges": [ { "startTime": "19:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 1, "name": "Lunes" }, "endDay": { "id": 1, "name": "Lunes" } }, { "startTime": "11:00", "endTime": "16:00", "timezone": "Europe/Madrid", "startDay": { "id": 2, "name": "Martes" }, "endDay": { "id": 2, "name": "Martes" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 2, "name": "Martes" }, "endDay": { "id": 2, "name": "Martes" } }, { "startTime": "11:00", "endTime": "16:00", "timezone": "Europe/Madrid", "startDay": { "id": 3, "name": "Miércoles" }, "endDay": { "id": 3, "name": "Miércoles" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 3, "name": "Miércoles" }, "endDay": { "id": 3, "name": "Miércoles" } }, { "startTime": "11:00", "endTime": "16:00", "timezone": "Europe/Madrid", "startDay": { "id": 4, "name": "Jueves" }, "endDay": { "id": 4, "name": "Jueves" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 4, "name": "Jueves" }, "endDay": { "id": 4, "name": "Jueves" } }, { "startTime": "11:00", "endTime": "16:00", "timezone": "Europe/Madrid", "startDay": { "id": 5, "name": "Viernes" }, "endDay": { "id": 5, "name": "Viernes" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 5, "name": "Viernes" }, "endDay": { "id": 5, "name": "Viernes" } }, { "startTime": "11:00", "endTime": "17:00", "timezone": "Europe/Madrid", "startDay": { "id": 6, "name": "Sábado" }, "endDay": { "id": 6, "name": "Sábado" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 6, "name": "Sábado" }, "endDay": { "id": 6, "name": "Sábado" } }, { "startTime": "12:00", "endTime": "17:00", "timezone": "Europe/Madrid", "startDay": { "id": 7, "name": "Domingo" }, "endDay": { "id": 7, "name": "Domingo" } }, { "startTime": "20:00", "endTime": "23:30", "timezone": "Europe/Madrid", "startDay": { "id": 7, "name": "Domingo" }, "endDay": { "id": 7, "name": "Domingo" } } ] }, "tags": [], "timezone": "Europe/Madrid", "customStatusMessage": null }
SellingPointException
MODEL ATTRIBUTES
id | integer (int64) | Selling point exception identifier | |
startsAt | string (date-time) | Exception start time | |
expiresAt | string (date-time) | Exception end time |
MODEL EXAMPLES
Example
{ "id": 872, "startsAt": "2017-10-14T22:00:00+0000", "expiresAt": "2017-10-15T21:59:00+0000" }
ServiceLocationLiveData
Despite this you can find the definition in other models in this document.
MODEL EXAMPLES
Example
{ "id": 4482, "code": "TERZ1", "name": "Mesa 1", "serviceZone": { "code": "TERZ", "name": "Terraza" }, "currentOrderGroup": { "id": 888353, "orderTypeCode": "inside", "openCheckouts": [], "closedCheckouts": [ { "id": 21847529, "inProgress": false, "userName": "John D.", "totalAmount": 12.0, "lastUpdateAt": "2022-03-17T10:32:18+0000", "orderId": 21847529, "marketOrderId": null, "marketOrderCode": "21847529", "items": [ { "name": "Pizza de la huerta", "quantity": 1, "comment": "", "unitPrice": 11.0, "unitAdditionalPrice": 1.0, "unitFinalPrice": 12.0, "totalPrice": 12.0, "items": [ { "name": "Champiñones", "quantity": 1, "comment": null, "unitPrice": 1.0, "unitAdditionalPrice": 0.0, "unitFinalPrice": 1.0, "totalPrice": 1.0, "items": [] } ] } ] } ], "payments": [], "amounts": { "ordersAmount": 12.0, "paymentsAmount": 0.0, "pendingPaymentsAmount": 12.0 } } }
ServiceZonesCollection
Despite this you can find the definition in other models in this document.
MODEL EXAMPLES
Example of 2 service zones with tables
[ { "code": "TZ", "name": "Terraza", "serviceLocations": [ { "code": "TZ1", "name": "Mesa 1" }, { "code": "TZ2", "name": "Mesa 2" }, { "code": "TZ3", "name": "Mesa 3" }, { "code": "TZ4", "name": "Mesa 4" }, { "code": "TZ5", "name": "Mesa 5" }, { "code": "TZ6", "name": "Mesa 6" }, { "code": "TZ7", "name": "Mesa 7" }, { "code": "TZ8", "name": "Mesa 8" }, { "code": "TZ9", "name": "Mesa 9" }, { "code": "TZ10", "name": "Mesa 10" }, { "code": "TZ11", "name": "Mesa 11" }, { "code": "TZ12", "name": "Mesa 12" }, { "code": "TZ13", "name": "Mesa 13" }, { "code": "TZ14", "name": "Mesa 14" }, { "code": "TZ15", "name": "Mesa 15" }, { "code": "TZ16", "name": "Mesa 16" }, { "code": "TZ17", "name": "Mesa 17" }, { "code": "TZ18", "name": "Mesa 18" }, { "code": "TZ19", "name": "Mesa 19" }, { "code": "TZ20", "name": "Mesa 20" } ] }, { "code": "BAR", "name": "Bar", "serviceLocations": [ { "code": "BAR1", "name": "Mesa 1" }, { "code": "BAR2", "name": "Mesa 2" }, { "code": "BAR3", "name": "Mesa 3" }, { "code": "BAR4", "name": "Mesa 4" }, { "code": "BAR5", "name": "Mesa 5" } ] } ]
Status
MODEL ATTRIBUTES
code | string | Delivery status identifier code Possible values WAITING_DRIVER_ACCEPTANCE PICKING WAITING_SELLING_POINT_ACCEPTANCE WAITING_SELLING_POINT_PREPARATION DELIVERING WAITING_CUSTOMER DELIVERED CANCELLED INCIDENT ACCEPTED_BY_DRIVER |
|
name | string | Delivery status name | |
color | string | HEX color code for the status | |
isFinalStatus | boolean | Return if is the last possible status |
MODEL EXAMPLES
Example
{ "code": "PICKING", "name": "Picking", "color": "blue", "isFinalStatus": false }
Tag
MODEL ATTRIBUTES
name | string | Tag name | |
code | string | Tag identifier code |
MODEL EXAMPLES
Example
{ "name": "Veggie", "code": "veggie" }
TimeRange
MODEL ATTRIBUTES
startTime | string (date-time) | Range start time | |
endTime | string (date-time) | Range end time |
MODEL EXAMPLES
Example
{ "startTime": "2018-02-15T08:00:00+0000", "endTime": "2018-02-15T22:00:00+0000" }
TransportType
MODEL ATTRIBUTES
code | string | Transport type identifier code Possible values BIKE SCOOTER MOTORBIKE CAR VAN WALKING |
|
name | string | Transport type name |
MODEL EXAMPLES
Example
{ "code": "SCOOTER", "name": "Scooter" }