SubmitOrder

Submit an Order at a location. The maximum number of successful SubmitOrder calls per location per business date is capped at 18431.

Request Parameters
  • Options OrderingOptions(optional) Ordering options for this SubmitOrder request.

    OrderingOptions Properties
    • CalculateItemPrice bool — True if the item prices should be calculated by the server, or False if the specified custom prices in the request should be used. Default is False if not specified.
  • Order NewOrder — NewOrder to submit.

    NewOrder Properties
    • CustomerId Guid — Maps to the Id of the Customer on this NewOrder, or an empty guid if there was no specific Customer

    • DestinationId int — Maps to the Id of the Destination for this NewOrder

    • Discounts Array of NewOrderDiscount — Discounts to apply to this NewOrder

      NewOrderDiscount Properties
      • Amount decimal — Amount of discount to apply to the NewOrder
      • DiscountId int — Maps to the Id of the Discount of this NewOrderDiscount
      • Id int — Incremental Id within the NewOrder
      • LoyaltyRewardId int — Maps to the Id of the Award of the customer associated with the NewOrder, if using PAR POS Loyalty program
      • Name string — Name of this NewOrderDiscount
      • OrderItemIds List<int> — List of Id(s) of the Item(s) this NewOrderDiscount will be applied to
      • Percent decimal — Percentage of discount to apply to the NewOrder
    • ExternalLoyaltyAccount string — External Loyalty Account Number associated with NewOrder, if Loyalty is used outside PAR POS Loyalty program

    • FutureOrder NewFutureOrderDetails — Details for this new FutureOrder

      NewFutureOrderDetails Properties
      • Delivery NewDeliveryDetails — Details for this NewFutureOrder, if it's a delivery

        NewDeliveryDetails Properties
        • Address1 string — Address line 1 for this new Delivery
        • Address2 string — Address line 2 for this new Delivery
        • City string — City for this new Delivery
        • Country string — Country for this new Delivery
        • PostalCode string — Postal code for this new Delivery
        • StateCode string — State code for this new Delivery
      • EmailAddress string — Contact email address for this NewFutureOrder

      • ManualSend bool — True if you would like to tell the Register to not send the order to the Kitchen based on the Configured Send Time rules, False if not

      • PhoneNumber string — Contact phone number for this NewFutureOrder

      • PickupTime DateTimeOffset — Time for this NewFutureOrder to be picked up or delivered in UTC. The time specified here must be later than the time at which you submit your NewOrder.

      • SendReminderEmail bool — True if the Reminder Email is to be sent to the customer regarding their pending future order, False if not

    • IsTaxExempt bool — True if this Order is exempt from taxes, False if not. Default is False if not specified.

    • Items Array of NewOrderItem — Items being ordered in this NewOrder

      NewOrderItem Properties
      • ComboItems Array of NewOrderItem — Combo component items in this NewOrderItem, if this NewOrderItem is a combo and applicable (recursively uses NewOrderItem)

      • ComponentId int? — Maps to the Id of the ItemCompositeComponent for this OrderItem, if this NewOrderItem is part of a combo

      • Description string — Description of this NewOrderItem

      • DestinationId int — Maps to the Id of the Destination of this NewOrderItem

      • Id int — Incremental Id within the NewOrder

      • ItemId int — Maps to the Id of the Item of this NewOrderItem

      • MenuItemId int — Maps to the Id of the MenuItem if this NewOrderItem is from a specific menu

      • Modifiers Array of NewOrderItemModifier — Modifiers to apply to this NewOrderItem

        NewOrderItemModifier Properties
        • Description string — Description of this NewOrderItemModifier
        • Id int — Incremental Id within the NewOrder
        • ItemId int — Maps to the Id of the Item for this NewOrderItemModifier
        • MenuItemId int — Maps to the Id of the MenuItem if this NewOrderItem is from a specific menu. Affects valid modifier choices.
        • ModifierCodeId int — Maps to the Id of the ModifierCode for this NewOrderItemModifier
        • ModifierGroupId int — Maps to the Id of the ModifierGroup for this NewOrderItemModifier
        • Modifiers Array of NewOrderItemModifier — Nested modifiers to apply to this NewOrderItemModifier (recursively uses NewOrderItemModifier)
        • Price decimal — Price of this NewOrderItemModifier
        • Quantity int — Quantity of this NewOrderItemModifier
      • Note string — Note for this NewOrderItem

      • Price decimal — Price of this NewOrderItem

      • Quantity int — Quantity of this NewOrderItem

      • Seat byte — Seat number of this NewOrderItem

    • LaneId int? — Maps to the Id of the Lane associated to this NewOrder

    • Name string — Name of this NewOrder

    • Payments Array of NewOrderPayment — Payments to apply to this NewOrder. A NewOrderPayment can be of type NewCheckPayment, NewCreditCardPayment, NewExternalPayment, NewGiftCardPayment, NewGiftCertificatePayment, or NewExternallyTokenizedCreditCardPayment.

      NewCheckPayment Properties
      • Amount decimal — Amount of the check for this NewCheckPayment
      • CheckNumber string — Number of the check for this NewCheckPayment
      • Id int — Incremental Id within the NewOrder
      • TenderId int — Maps to the Id of the Tender of this NewCheckPayment
      • TipAmount decimal — Tip amount for this NewCheckPayment, if applicable
      NewCreditCardPayment Properties
      • AccountNumber string — Account number of the credit card for this NewCreditCardPayment
      • Amount decimal — Amount to be charged to the credit card for this NewCreditCardPayment
      • City string — City of the billing address of the credit card for this NewCreditCardPayment
      • Country string — Country of the billing address of the credit card for this NewCreditCardPayment
      • Cvv string — CVV code of the credit card for this NewCreditCardPayment
      • ExpirationDate string — Expiration date of the credit card for this NewCreditCardPayment
      • Id int — Incremental Id within the NewOrder
      • NameOnCard string — Name on the credit card for this NewCreditCardPayment
      • PostalCode string — Postal code of the billing address of the credit card for this NewCreditCardPayment
      • State string — State of the billing address of the credit card for this NewCreditCardPayment
      • StreetAddress string — Street address of the billing address of the credit card for this NewCreditCardPayment
      • TenderId int — Maps to the Id of the Tender of this NewCreditCardPayment
      • TipAmount decimal — Tip amount for this NewCreditCardPayment, if applicable
      NewExternalPayment Properties
      • Amount decimal — Amount charged to the external account from this NewExternalPayment

      • Id int — Incremental Id within the NewOrder

      • ReferenceDetails Array of PaymentReferenceDetail — Optional list of reference details to include about this NewExternalPayment

        PaymentReferenceDetail Properties
        • Name string — Name of the reference item, e.g. "Card Type"
        • Value string — Value of the reference item, e.g. "Visa"
      • TenderId int — Maps to the Id of the Tender of this NewExternalPayment

      • TipAmount decimal — Tip amount for this NewExternalPayment, if applicable

      NewGiftCardPayment Properties
      • AccountNumber string — Account number of the gift card for this NewGiftCardPayment
      • Amount decimal — Amount to be charged to the gift card for this NewGiftCardPayment
      • Cvv string — Cvv of the gift card for this NewGiftCardPayment
      • ExpirationDate string — Expiration date of the gift card for this NewGiftCardPayment
      • Id int — Incremental Id within the NewOrder
      • TenderId int — Maps to the Id of the Tender of this NewGiftCardPayment
      • TipAmount decimal — Tip amount for this NewGiftCardPayment, if applicable
      NewGiftCertificatePayment Properties
      • Amount decimal — Amount of the gift certificate for this NewGiftCertificatePayment
      • Id int — Incremental Id within the NewOrder
      • TenderId int — Maps to the Id of the Tender of this NewGiftCertificatePayment
      • TipAmount decimal — Tip amount for this NewGiftCertificatePayment, if applicable
      NewExternallyTokenizedCreditCardPayment Properties
      • Amount decimal — Amount charged to the external account from this NewExternalTokenizedCreditCardPayment
      • CardExpirationDate string — Expiration date of the credit card for this NewExternalTokenizedCreditCardPayment
      • City string — City of the billing address of the credit card for this NewExternalTokenizedCreditCardPayment
      • Country string — Country of the billing address of the credit card for this NewExternalTokenizedCreditCardPayment
      • Cvv string — CVV code of the credit card for this NewExternalTokenizedCreditCardPayment
      • Id int — Id of the NewExternalTokenizedCreditCardPayment
      • NameOnCard string — Name on the credit card for this NewExternalTokenizedCreditCardPayment
      • PostalCode string — Postal code of the billing address of the credit card for this NewExternalTokenizedCreditCardPayment
      • State string — State of the billing address of the credit card for this NewExternalTokenizedCreditCardPayment
      • StreetAddress string — Street address of the billing address of the credit card for this NewExternalTokenizedCreditCardPayment
      • TenderId int — Maps to the Id of the Tender of this NewExternalTokenizedCreditCardPayment
      • TipAmount decimal — Tip amount for this NewExternalTokenizedCreditCardPayment, if applicable
      • Token string — Token for this NewExternalTokenizedCreditCardPayment
    • Promotions Array of NewOrderPromotion — Promotions to apply to this NewOrder

      NewOrderPromotion Properties
      • Amount decimal — Amount of promotion to apply to the NewOrder
      • Code string — Code of the promotion of this NewOrderPromotion
      • Id int — Incremental Id within the NewOrder
      • Name string — Name of this NewOrderPromotion
      • PromotionId int — Maps to the Id of the Promotion of this NewOrderPromotion
      • RequiredOrderItemIds List<int> — List of Id(s) of the Item(s) that are required by this NewOrderPromotion
      • TargetOrderItemIds List<int> — List of Id(s) of the Item(s) that are targeted by this NewOrderPromotion
    • SectionId int — Maps to the Id of the Section of this NewOrder

    • Surcharges Array of NewOrderSurcharge — Surcharges to apply to this NewOrder

      NewOrderSurcharge Properties
      • Amount decimal — Amount of surcharge to apply to the NewOrder
      • Id int — Incremental Id within the NewOrder
      • Name string — Name of this NewOrderSurcharge
      • SurchargeId int — Maps to the Id of the Surcharge of this NewOrderSurcharge
    • Taxes Array of NewOrderTax — Order taxes applied to this NewOrder

      NewOrderTax Properties
      • Amount decimal — Amount that will be applied as tax amount.
      • Id int — Chronologically created unique identifier of tax object which will be applied on order.
      • TaxId int — Unique identifier of this tax, setup in Settings Editor against this location.
    • AdditionalData Dictionary<string,string> — Any additional information

  • SuppressConfirmationEmail bool(optional) True if you would like the confirmation email suppressed, False if not. Default is False if not specified.

Response Parameters
  • Message string — Returns a PAR POS Error message if the request did not go through. Otherwise, this field will be null.
  • ResultCode int — Returns one of the following:
    • 0 — Success
    • 1 — Unknown Error
    • 2 — Invalid Request
    • 3 — Server Unavailable
    • 4 — Access Denied
    • 101 — The store did not respond, please try again
    • 102 — Loyalty award already redeemed
    • 103 — Ordering not allowed
    • 104 — Error corresponding to the order specified in the SubmitOrder request
    • 105 — Order already submitted
    • 106 — Future date orders not allowed
    • 107 — One or more of the payments could not be processed
    • 108 — One or more of the payments on the order could not be cancelled
    • 109 — No more of item is available
  • OrderId long — Id of the Order you submitted, if the request was successful.
Headers
  • SOAPAction
    Type: string
    required
Body
required
application/json

SOAP envelope containing the SubmitOrder request with Options, Order, and optional SuppressConfirmationEmail.

Responses
  • text/xml; charset=utf-8
Request Example for post/SubmitOrder
cURL
curl --request POST \
  --url 'https://{server_name_goes_here}.parpos.com/Ordering.svc?SubmitOrder' \
  --header 'Content-Type: text/xml; charset=utf-8' \
  --header 'AccessToken: your-access-token' \
  --header 'LocationToken: your-location-token' \
  --header 'SOAPAction: "http://www.brinksoftware.com/webservices/ordering/20140219/IOrderingWebService/SubmitOrder"' \
  --data '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
        xmlns:ns="http://www.brinksoftware.com/webservices/ordering/20140219"
        xmlns:arr="http://schemas.microsoft.com/2003/10/Serialization/Arrays"
        xmlns:sys="http://schemas.datacontract.org/2004/07/System"
        xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
        <soapenv:Header/>
        <soapenv:Body>
          <ns:SubmitOrder>
            <ns:request>
              <ns:Options>
                <ns:CalculateItemPrice>true</ns:CalculateItemPrice>
              </ns:Options>
              <ns:Order>
                <ns:DestinationId>1</ns:DestinationId>
                <ns:FutureOrder>
                  <ns:PickupTime>
                    <sys:DateTime>2024-01-15T12:00:00Z</sys:DateTime>
                    <sys:OffsetMinutes>0</sys:OffsetMinutes>
                  </ns:PickupTime>
                  <ns:SendReminderEmail>false</ns:SendReminderEmail>
                </ns:FutureOrder>
                <ns:Items>
                  <ns:NewOrderItem>
                    <ns:Description>Cheeseburger</ns:Description>
                    <ns:Id>1</ns:Id>
                    <ns:ItemId>123</ns:ItemId>
                    <ns:DestinationId>1</ns:DestinationId>
                  </ns:NewOrderItem>
                </ns:Items>
                <ns:Name>Online Order</ns:Name>
              </ns:Order>
            </ns:request>
          </ns:SubmitOrder>
        </soapenv:Body>
      </soapenv:Envelope>'
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Body>
    <SubmitOrderResponse xmlns="http://www.brinksoftware.com/webservices/ordering/20140219">
      <SubmitOrderResult>
        <Message>Success</Message>
        <ResultCode>0</ResultCode>
        <OrderId>67890</OrderId>
      </SubmitOrderResult>
    </SubmitOrderResponse>
  </s:Body>
</s:Envelope>