POST v{version}/OnlineOrders/SubmitCalculatedOnlineOrder
Sends an order to the POS
Request Information
URI Parameters
Name | Type | Description | Additional information |
---|---|---|---|
version | string |
None. |
Body Parameters
SubmitCalculatedOnlineOrderV2ApiModelName | Type | Description | Additional information |
---|---|---|---|
SiteId | integer |
Required |
|
UID | globally unique identifier |
The UID of the Calculated Order you are trying to Submit |
Required |
CRMMemberID | string |
Optional - send the CRM Member ID that the order is for |
|
RequestedDeliveryTimeUTC | date |
Optionally supply a delivery time for the order. This works the same way as hold order at a site, and is based on table rules that are setup. E.g. order for tomorrow at 10pm, the order will sit in the system and fire 45minutes before this time (so at 9:15pm) and will then be sent to the kitchen etc and act like a normal order. Stock is consumed when the order is initially placed so that the item is not out of stock when it's time to make the item |
|
GratuityAmount | decimal number |
Specify if the bill contains gratuity/tip. This must be balanced by a Tender, e.g. £20 bill + £5 gratuity = £25 tender |
|
DeliveryChargeAmount | decimal number |
Specify if the bill contains Delivery Charge. This must be balanced by a Tender e.g. £20 bill + £5 delivery charge = £25 tender |
|
ThirdPartyOrigin | string |
Free text field to store the order origin if you are collaborating orders, e.g. deliveroo, ubereats. Leave empty otherwise |
String length: inclusive between 0 and 10000 |
ThirdPartyTransactionID | string |
Free text field to store the partner order ID |
String length: inclusive between 0 and 10000 |
ThirdPartyReference | string |
Free text field to store the partner order reference |
String length: inclusive between 0 and 10000 |
OrderParams | string |
String length: inclusive between 0 and 10000 |
|
MergeOnToExistingBill | boolean |
Specify if the Bill should merge into existing bills on a Table. |
|
CustomerInfo | SubmitCalculatedOnlineOrderV2CustomerApiModel |
Customer Info |
Required |
Tenders | Collection of SubmitCalculateOrderV2TenderApiModel |
Tenders for the bill, if tenders do not match the full bill amount the order will remain open on the POS and will not auto-finalize. This can be finalized either on the POS, or paid later via the TablePayment Endpoint |
Request Formats
application/json, text/json
{ "SiteId": 1, "UID": "6e3163b0-6b64-4053-a0a2-bdae1f8ecf41", "CRMMemberID": "sample string 1", "RequestedDeliveryTimeUTC": "2024-11-21T06:29:12.1260139+00:00", "GratuityAmount": 1.0, "DeliveryChargeAmount": 1.0, "ThirdPartyOrigin": "sample string 2", "ThirdPartyTransactionID": "sample string 3", "ThirdPartyReference": "sample string 4", "OrderParams": "sample string 5", "MergeOnToExistingBill": true, "CustomerInfo": { "FirstName": "sample string 1", "LastName": "sample string 2", "Line1": "sample string 3", "Line2": "sample string 4", "City": "sample string 5", "PostCode": "sample string 6", "ContactNumber": "sample string 7", "ContactAccessCode": "sample string 8", "AdditionalDetails": { "SaftCompanyName": "sample string 1", "SaftCompanyAddress": "sample string 2", "SaftTaxId": "sample string 3" } }, "Tenders": [ { "TenderTypeID": 1, "PLU": "sample string 2", "Amount": 1.0 }, { "TenderTypeID": 1, "PLU": "sample string 2", "Amount": 1.0 } ] }
application/xml, text/xml
<SubmitCalculatedOnlineOrderV2ApiModel xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Tevalis.API.Core.Models.v2.OnlineOrdersV2.APIModels"> <CRMMemberID>sample string 1</CRMMemberID> <CustomerInfo> <AdditionalDetails> <SaftCompanyAddress>sample string 2</SaftCompanyAddress> <SaftCompanyName>sample string 1</SaftCompanyName> <SaftTaxId>sample string 3</SaftTaxId> </AdditionalDetails> <City>sample string 5</City> <ContactAccessCode>sample string 8</ContactAccessCode> <ContactNumber>sample string 7</ContactNumber> <FirstName>sample string 1</FirstName> <LastName>sample string 2</LastName> <Line1>sample string 3</Line1> <Line2>sample string 4</Line2> <PostCode>sample string 6</PostCode> </CustomerInfo> <DeliveryChargeAmount>1</DeliveryChargeAmount> <GratuityAmount>1</GratuityAmount> <MergeOnToExistingBill>true</MergeOnToExistingBill> <OrderParams>sample string 5</OrderParams> <RequestedDeliveryTimeUTC>2024-11-21T06:29:12.1260139+00:00</RequestedDeliveryTimeUTC> <SiteId>1</SiteId> <Tenders> <SubmitCalculateOrderV2TenderApiModel> <Amount>1</Amount> <PLU>sample string 2</PLU> <TenderTypeID>1</TenderTypeID> </SubmitCalculateOrderV2TenderApiModel> <SubmitCalculateOrderV2TenderApiModel> <Amount>1</Amount> <PLU>sample string 2</PLU> <TenderTypeID>1</TenderTypeID> </SubmitCalculateOrderV2TenderApiModel> </Tenders> <ThirdPartyOrigin>sample string 2</ThirdPartyOrigin> <ThirdPartyReference>sample string 4</ThirdPartyReference> <ThirdPartyTransactionID>sample string 3</ThirdPartyTransactionID> <UID>6e3163b0-6b64-4053-a0a2-bdae1f8ecf41</UID> </SubmitCalculatedOnlineOrderV2ApiModel>
application/x-www-form-urlencoded
Sample not available.
Response Information
Resource Description
CalculateOnlineOrderV2ResponseDtoName | Type | Description | Additional information |
---|---|---|---|
UID | globally unique identifier |
The UID of your calculated order. This is used to submit the order when doing Submit Calculated Order |
|
TableNumber | integer |
None. |
|
PriceGroupID | integer |
None. |
|
Covers | integer |
None. |
|
ServiceChargeAmount | decimal number |
None. |
|
Terminal | string |
Name of the Terminal that served the request |
|
TotalGross | decimal number |
The total amount payable for the bill |
|
EstimatedTimeUTC | date |
This returns either the KMS Average time, or the Minimum time specified via System Settings |
|
StandardOrderItems | Collection of CalculateOnlineOrderV2ItemResponseDto |
None. |
|
StandardMacroItems | Collection of CalculateOnlineOrderV2MacroItemResponseDto |
None. |
|
Promotions | Collection of CalculateOnlineOrderV2PromotionResponseDto |
None. |
|
ConfigurableDiscounts | Collection of CalculateOnlineOrderV2ConfigurableDiscountResponseDto |
None. |
Response Formats
application/json, text/json
{ "UID": "97e862e9-d642-4105-8f74-c80a029f289e", "TableNumber": 1, "PriceGroupID": 2, "Covers": 3, "ServiceChargeAmount": 1.0, "Terminal": "sample string 4", "TotalGross": 5.0, "EstimatedTimeUTC": "2024-11-21T06:29:12.1519906+00:00", "StandardOrderItems": [ { "PLU": "sample string 1", "Quantity": 2, "OverridePrice": 1.0, "ItemRef": "sample string 3", "ExpGross": 4.0, "ItemNotes": [ "sample string 1", "sample string 2" ], "Modifiers": [ { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] }, { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] } ] }, { "PLU": "sample string 1", "Quantity": 2, "OverridePrice": 1.0, "ItemRef": "sample string 3", "ExpGross": 4.0, "ItemNotes": [ "sample string 1", "sample string 2" ], "Modifiers": [ { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] }, { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] } ] } ], "StandardMacroItems": [ { "ParentOrderItem": { "PLU": "sample string 1", "Quantity": 2, "OverridePrice": 1.0, "ItemRef": "sample string 3", "ExpGross": 4.0, "ItemNotes": [ "sample string 1", "sample string 2" ], "Modifiers": [ { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] }, { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] } ] }, "ChildrenOrderItems": [ { "PLU": "sample string 1", "Quantity": 2, "OverridePrice": 1.0, "ItemRef": "sample string 3", "ExpGross": 4.0, "ItemNotes": [ "sample string 1", "sample string 2" ], "Modifiers": [ { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] }, { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] } ] }, { "PLU": "sample string 1", "Quantity": 2, "OverridePrice": 1.0, "ItemRef": "sample string 3", "ExpGross": 4.0, "ItemNotes": [ "sample string 1", "sample string 2" ], "Modifiers": [ { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] }, { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] } ] } ] }, { "ParentOrderItem": { "PLU": "sample string 1", "Quantity": 2, "OverridePrice": 1.0, "ItemRef": "sample string 3", "ExpGross": 4.0, "ItemNotes": [ "sample string 1", "sample string 2" ], "Modifiers": [ { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] }, { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] } ] }, "ChildrenOrderItems": [ { "PLU": "sample string 1", "Quantity": 2, "OverridePrice": 1.0, "ItemRef": "sample string 3", "ExpGross": 4.0, "ItemNotes": [ "sample string 1", "sample string 2" ], "Modifiers": [ { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] }, { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] } ] }, { "PLU": "sample string 1", "Quantity": 2, "OverridePrice": 1.0, "ItemRef": "sample string 3", "ExpGross": 4.0, "ItemNotes": [ "sample string 1", "sample string 2" ], "Modifiers": [ { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] }, { "OptionGroupID": 1, "OptionItemID": 2, "IsRemove": true, "OverridePrice": 1.0, "ExpGross": 4.0, "Modifiers": [] } ] } ] } ], "Promotions": [ { "PromotionID": 1, "ExpGross": 2.0, "AffectedItemRefs": [ "sample string 1", "sample string 2" ], "AffectedItems": [ { "ItemRef": "sample string 1", "AffectedValue": 2.0 }, { "ItemRef": "sample string 1", "AffectedValue": 2.0 } ] }, { "PromotionID": 1, "ExpGross": 2.0, "AffectedItemRefs": [ "sample string 1", "sample string 2" ], "AffectedItems": [ { "ItemRef": "sample string 1", "AffectedValue": 2.0 }, { "ItemRef": "sample string 1", "AffectedValue": 2.0 } ] } ], "ConfigurableDiscounts": [ { "DiscountID": 1, "ExpGross": 2.0, "AffectedItemRefs": [ "sample string 1", "sample string 2" ], "AffectedItems": [ { "ItemRef": "sample string 1", "AffectedValue": 2.0 }, { "ItemRef": "sample string 1", "AffectedValue": 2.0 } ] }, { "DiscountID": 1, "ExpGross": 2.0, "AffectedItemRefs": [ "sample string 1", "sample string 2" ], "AffectedItems": [ { "ItemRef": "sample string 1", "AffectedValue": 2.0 }, { "ItemRef": "sample string 1", "AffectedValue": 2.0 } ] } ] }
application/xml
Sample not available.
text/xml
Sample not available.