Skip to content

Introduction

Overview

Bite exposes online ordering functionality through a REST API which third party developers can use to create applications on top of the Bite platform.

Bite Nomenclature

Customers

A Bite "Customer" represents a full end-user account created on Bite's platform. Customers can be created with a Bite password or can be authenticated against a Single Sign-On provider such as Paytronix or Punchh. Bite Customers have the following features:

  • A single set of credentials could be used to create completely different accounts under different brands that Bite works with.
  • Storing credit cards on file so that they could be used for future purchases.
  • Access to the customer's favorite ordered items and recent order history.
  • Storing delivery addresses on file for future purchases.

After creating or authenticating a Bite Customer through the API, a unique authentication token will be returned which can be used to refer to that user from that moment on without the need to store their password in your application.

Usage Basics

Environments

A dedicated sandbox environment will be provisioned for each new third-party developer. All development and testing must be carried out through that environment. It will include both an API sandbox as well as Admin Portal sandbox so that test locations could be modified by the developers for the purposes of testing their integration with Bite. The Sandbox environment runs the same code as production. https://YOUR_SANDBOX_SUB_DOMAIN.getbite.com/api

The production environment endpoint is: [REDACTED]

All communication must be encrypted over TLS 1.2

Request/Response Basics

Headers and Status Codes

https://<environment_domain>/<API_version>/<resource>?[params]

  • Bite API expects both the request and the response bodies to encoded with JSON, so both the HTTP Accept and Content-Type headers should be set to application/json.
  • HTTP Status Codes will be returned as follows:
    • 200 OK - The requested operation completed successfully!
    • 400 Bad Request - An error occurred on the Bite side or on the POS side. Please reference the response body's "code" value in the Bite Error Codes documentation.
    • 403 Forbidden - Invalid API credentials or insufficient access to a resource or operation.
    • 500 Server Error - An unexpected error occurred. Please verify that your request is correctly formatted.
  • Every API call must include the following headers:
    Header
    DescriptionExample
    x-md-api-versionMust be set to 4x-md-api-version: 4
    x-bite-org-idMust be set to the brand id that you are working with. This value will be provided along with the sandbox environment.x-bite-org-id: 5fa31dc97acd2f0031e023eb
    x-customer-app-scopeMust be set to the brand's account scope. This value will be provided along with the sandbox environment.x-customer-app-scope: my-brand-scope
    AuthorizationMust be set to Bearer: API_TOKEN. The API_TOKEN will be provided along with the sandbox environment.Authorization: Bearer 2979c798-c901-4ceb-8478-3b26c24a998d
    User-AgentUnique user agent value that identifies the app. Please send this formatted as application_name/version.User-Agent: SomeApp/v1.2.3
    X-Device-IdUnique hardware identifier for the device.X-Device-Id: 993e0082-5bfd-4bbc-98ec-d13b50bbd54a

Response Structure

A success response structure will look as follows:

{
  success: true;
  data?: {...};
}

An error response structure will look as follows:

{
  success: false;
  code: number;
  message?: string;
  data?: {...};
}

Bite Error Codes

Any error response will contain an error code:

CodeMeaningSuggested Action
60Customer Password Already Used: The customer is trying to use a password they have previously used.
61Customer Token Invalid: The token has been malformed or has expired.Maybe the customer needs to log out and log in again because they've changed their password.
62Customer Account Not Verified: The customer resource being accessed requires a verified customer account.
63Customer Account Disabled: The specified customer account has been disabled by one of the brand admins.
64Customer Account Deleted: The specified customer account has been deleted by one of the brand admins.

Versioning and Compatibility

Please treat all IDs in the API as strings.

We will not remove properties from the current API version, but we do add new properties to return objects from time to time.

There is no guaranteed ordering of properties. We request that properties are accessed by name and not by index.

Please do not rely on error messages for logic. Error text may change periodically. Rather rely on error codes, which are guaranteed to not change.

Rate Limiting

Some API endpoints are protected through the use of rate limiting. The base rate limit can be found in the description of the API endpoint.

Information about the current usage can be found in the headers of the response:

  • Ratelimit-Limit: The amount of requests permitted
  • Ratelimit-Remaining: How many requests can be made in the interval
  • Ratelimit-Reset: How long, in seconds, until the rate-limit interval ends and the remaining amount of requests resets

The rate limit maximum is adjusted by the number of locations associated with the token. For example, if an API has a base rate limit of 50 requests per minute, then an organization with 10 locations may use the API endpoint 500 times per minute.

Changelog

2026-02-24

  • Updated definitions of openingHoursByFulfillmentMethod

2025-07-23

  • Updated security for Bite API Token based requests

2024-08-29

  • Added consentedToMarketing field to order

2024-01-22

  • Added section to ordered item schema

2024-01-03

  • More details regarding rate limiting

2023-11-07

  • Deprecated: POST /api/v2/reporting/orders/day
  • New Endpoint: GET /api/v2/reporting/orders/day/:date

2022-12-19

  • Updated rate limits of API calls
  • Reversed order of change log

2022-10-25

  • New endpoints:
    • POST /api/v2/reporting/orders/day
    • GET /api/v2/locations
  • Rate Limiting

2021-10-19

  • First Draft
Download OpenAPI description
Languages
Servers
Mock server
https://documentation.getbite.com/_mock/openapi/v2/bite-api-v2
Sandbox
https://{sandboxApiSubDomain}.getbite.com/api

Customer account signup/login and other CRUD operations.

Operations

Management of saved delivery addresses on the customer account.

Operations

Past orders associated with the customer account.

Operations

Management of saved payment methods on the customer account.

Operations

Save mobile app push notification tokens on the customer account.

Operations

Endpoints for picking a location from which to order.

Operations

Endpoints for ordering actions

Operations

Endpoints for getting the config bundle of a mobile app

Operations

Endpoints for generating reports

Operations

Request

Returns a report with detailed information about the orders of a given day at a specified location. Requires an API token with the "Reporting" scope. The base rate limit of an organization with one location is 75 requests per 10 minutes.

Security
BearerAuthApiTokenSecurityScheme
Path
datestringrequired

The date of the orders to retrieve in a YYYY-MM-DD format

Example: 2023-07-21
Query
newerThanstring

The order ID of the last order returned in the previous page of results

Example: newerThan=654b3c2d537fd6b2dab2a2cc
Headers
x-md-api-versionstringrequired
Value"4"
x-bite-location-idstringrequired

The location ID you are working with.

curl -i -X GET \
  'https://documentation.getbite.com/_mock/openapi/v2/bite-api-v2/v2/reporting/orders/day/2023-07-21?newerThan=654b3c2d537fd6b2dab2a2cc' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-bite-location-id: string' \
  -H 'x-md-api-version: 4'

Responses

Success!

Bodyapplication/json
successbooleanrequired
dataobjectrequired
data.​ordersArray of objects(OrderExternalFirstParty)required
data.​orders[].​createTimestringrequired

The ISO time of order creation with timezone offset.

data.​orders[].​orgNamestringrequired

The name of the org at which the customer placed the order.

data.​orders[].​orgIdstring(OrgId)required

The ID of the org at which the customer placed the order.

data.​orders[].​siteNamestringrequired

The name of the site at which the customer placed the order.

data.​orders[].​siteIdstringrequired

The ID of the site at which the customer placed the order.

data.​orders[].​locationIdstring(LocationId)required

The ID of the location (in the specified org) at which the customer placed the order.

data.​orders[].​orderChannelstring(OrderChannel)required

Denotes the ordering channel through which orders are placed:

  • catering - Catering Website
  • flash - Contactless (QR-code)
  • kiosk - Kiosk
  • linebuster - Linebuster
  • web - Online Ordering Website
Enum"catering""flash""kiosk""linebuster""web"
data.​orders[].​diningOptionstringrequired

The name of the dining option with which the customer placed the order.

data.​orders[].​sourcestringrequired

Whether the order was made from a kiosk, mobile, or desktop browser.

data.​orders[].​orderIdstringrequired

The Bite ID of the order.

data.​orders[].​checkIdsArray of objectsrequired

The IDs of the check from POS integrations.

data.​orders[].​checkIds[].​valuestringrequired

The check ID value.

data.​orders[].​checkIds[].​namestringrequired

The name of the check ID. ex: posCheckId

data.​orders[].​checkIds[].​vendorNamestringrequired

The name of the vendor from which the check ID originated. If location is single-vendor or does not have a POS, defaults to "Default Vendor".

data.​orders[].​loyaltyCheckIdsstringrequired

The IDs of the loyalty check from loyalty integrations (if any). Absent if loyalty doesn't exist or order was not checked into loyalty.

data.​orders[].​isCancelledbooleanrequired

Indicates if the order was cancelled after it was closed.

data.​orders[].​orderNumberstringrequired

Sequential client ID that loops around.

data.​orders[].​itemsArray of objectsnon-emptyrequired

Items of the order.

data.​orders[].​items[].​specialRequeststring(OrderedItemSpecialRequest)

A special request that the guest added for this menu item. The max length of this field depends on the specific POS.

data.​orders[].​items[].​vendorNamestringrequired

The name of the vendor from which the item originated. If location is single-vendor or does not have a POS, defaults to "Default Vendor".

data.​orders[].​items[].​scannedBarcodestring(^[0-9A-Z]+$)(OrderedItemScannedBarcode)

Value of the barcode that was scanned at the kiosk to add this menu item to the order.

data.​orders[].​items[].​posIdstring

ID of the item on the POS. Absent if item does not come from a POS.

data.​orders[].​items[].​namestring(OrderedItemName)required

Name of the menu item as it appeared on the menu.

data.​orders[].​items[].​priceinteger(int32)(OrderedPriceOptionPrice)required

Final price of the item (in cents) that accounts for quantity but not including any priced modifiers.

data.​orders[].​items[].​quantityinteger(int32)(OrderedPriceOptionQuantity)>= 1required

Quantity of the menu item ordered.

data.​orders[].​items[].​unitPriceinteger(int32)(OrderedPriceOptionUnitPrice)required

Price of a single unit of the menu item in cents (given the ordered price option).

data.​orders[].​items[].​saleUnitinteger(int32)(OrderedPriceOptionSaleUnit)

Sale unit:

  • 0 - single unit
  • 2 - pounds
  • 3 - ounces
data.​orders[].​items[].​addToCartSourcestringrequired

A short description of how the item was added to the cart.

data.​orders[].​items[].​weightnumber(float)(OrderedPriceOptionWeight)>= 0
data.​orders[].​items[].​sectionobject(OrderExternalSection)required

The section of the menu from which the item originated.

data.​orders[].​items[].​section.​namestringrequired

The name of the section.

data.​orders[].​items[].​section.​posIdstring

ID of the section on the POS. Absent if section does not come from a POS.

data.​orders[].​items[].​modGroupsArray of objects(OrderExternalModGroup)required

Mod groups of the item.

data.​orders[].​items[].​modGroups[].​posIdstring

ID of the mod group on the POS. Absent if mod group does not come from a POS.

data.​orders[].​items[].​modGroups[].​namestring(OrderedModGroupName)required

Name of the mod group as it appears on the menu.

data.​orders[].​items[].​modGroups[].​modsArray of objects(OrderExternalMod)required

Ordered mods of the mod group.

data.​orders[].​subTotalinteger(int32)(SubTotal)required

The order sub total in cents.

data.​orders[].​taxTotalinteger(int32)(TaxTotal)required

The amount of tax collected on the order in cents.

data.​orders[].​tipTotalinteger(int32)(TipTotal)>= 0required

The tip amount on the order in cents.

data.​orders[].​discountNamesArray of stringsrequired

Names of the discounts applied to the order.

data.​orders[].​discountTotalinteger(int32)(DiscountTotal)required

The amount discounted from the order sub total in cents.

data.​orders[].​totalinteger(int32)(Total)required

The total amount that the guest paid in cents. This number includes the tip.

data.​orders[].​refundedAmountinteger(int32)required

Amount refunded from order in cents.

data.​orders[].​transactionsArray of objectsrequired

Transactions of the order.

data.​orders[].​transactions[].​cardTypestringrequired

The type of the card used by the transaction. ex: Visa, Gift Card

data.​orders[].​transactions[].​transactionTypestringrequired

The type of the transaction.

Enum"sale""refund"
data.​orders[].​transactions[].​amountinteger(int32)required

The amount of the transaction in cents.

data.​orders[].​transactions[].​lastFourstring

Last four digits of card used in transaction. Absent if a card was not used, such as by paying in cash.

data.​orders[].​transactions[].​gatewaystringrequired

The gateway used to process the transaction. ex: Stripe, Worldpay

data.​orders[].​transactions[].​cardEntryMethodstringrequired

The method used to used the card during the transaction. ex: Swipe, Google Pay

data.​orders[].​orderUrlstringrequired

A URL pointing to the Bite Admin entry of the order.

data.​orders[].​futureOrderTimestring

The time the customer is expected to pickup an order, in ISO with timezone offset. Only available if the order is a future-order.

data.​orders[].​outpostDeliveryLocationstring

The name of the outpost. Only available if the dining option is an Outpost dining option.

data.​orders[].​deliveryAddressobject(DeliveryAddress)

The delivery address for this order. This value is required if this is a delivery address.

data.​orders[].​tableNumberstring(TableNumber)

Number of the table or table tent that the order is associated with.

data.​orders[].​isTaxExemptbooleanrequired

Whether or not the order is tax exempt

data.​orders[].​serviceChargeTotalinteger(int32)(ServiceChargeTotal)required

The sum of all the service charges added to the order in cents.

data.​orders[].​serviceChargesArray of objects(ServiceCharges)non-emptyrequired

A list of all the service charges added to the order. If this property is available, then serviceChargeTotal is definitely available on the order. However, this property may not be available even if there is a serviceChargeTotal because not every POS will provide a breakdown of the service charges.

data.​orders[].​serviceCharges[].​namestringrequired

A name of the service charge as it should appear on the receipt.

data.​orders[].​serviceCharges[].​amountinteger(int32)required

The amount of the service charge in cents.

data.​orders[].​redeemedLoyaltyRewardboolean

Whether or not the guest redeemed a loyalty reward for the order.

data.​orders[].​guestobjectrequired

Info about the guest who placed the order.

data.​orders[].​guest.​guestIdstringrequired

Bite ID of the guest.

data.​orders[].​guest.​namestring

Name of the guest. Only available if the Guest Name identifier was used.

data.​orders[].​guest.​emailstring(email)

Email of the guest. Only available if the guest requested the receipt to be emailed after placing their order or if it was provided during payment.

data.​orders[].​guest.​phoneNumberstring

Phone Number of the guest. Only available if the Guest Vehicle identifier was used.

data.​orders[].​guest.​vehicleobject

Info about the guest's vehicle. Only available if the Guest Vehicle identifier was used.

data.​orders[].​guest.​satisfactionScoreinteger(int32)>= 1

How satisfied the guest was with their experience. Only available if the guest completed the survey.

data.​orders[].​guest.​satisfactionMaximuminteger(int32)>= 1

The maximum possible satisfaction score for the survey. Only available if the guest completed the survey.

data.​orders[].​guest.​ageRangestring

An approximate age range of the guest. Only available if the guest used facial recognition. ex: 22 - 28

data.​orders[].​guest.​genderstring

A calculated guess as to the gender of the guest. Only available if the guest used facial recognition.

Enum"M""F"
data.​orders[].​guest.​consentedToMarketingboolean

Whether the guest consented to marketing. Only present if the location os configured to ask the guest for consent. The guest may be asked while submitting their email address or phone number.

data.​orders[].​selectedLanguagestring

The language the guest selected for their order. Only available if the guest selected a language.

data.​orders[].​loyaltyIdsArray of objectsrequired

The IDs of the guest's loyalty account. If the array is empty, then the guest did not connect a loyalty account. There may be multiple entries if the guest used multiple methods of connecting to their account.

data.​orders[].​loyaltyIds[].​valuestringrequired

The loyalty ID value.

data.​orders[].​loyaltyIds[].​entryMethodstring(LoyaltyAuthEntryMethod)required

How the information connecting a guest to their loyalty account was collected.

Enum"barcode-scanned""card-number-manually-entered""email-manually-entered""email-and-password-manually-entered""email-and-phone-number-manually-entered""email-and-phone-number-provided-externally""phone-number-manually-entered""phone-number-provided-externally""redemption-code-manually-entered""unknown-manually-entered"
data.​nextstring

The path to the next page of results. Only present if there are more results to retrieve

Example: "/api/v2/reporting/orders/day/2023-07-21?newerThan=654b3c2d537fd6b2dab2a2cc"
Response
application/json
{ "success": true, "data": { "orders": [], "next": "/api/v2/reporting/orders/day/2023-07-21?newerThan=654b3c2d537fd6b2dab2a2cc" } }

Generate an Orders Report (Deprecated)

Request

This API endpoint is deprecated and will be removed in a future release. Returns a report with detailed information about the orders of a given day at a specified location. Requires an API token with the "Reporting" scope. The base rate limit of an organization with one location is 75 requests per 10 minutes.

Security
BearerAuthApiTokenSecurityScheme
Headers
x-md-api-versionstringrequired
Value"4"
Bodyapplication/jsonrequired
locationIdstring(PropertyId)required

The Bite ID of the location.

datestringrequired

The date of the orders to retrieve in a YYYY-MM-DD format

Example: "2023-07-21"
pageinteger(int32)>= 0
Example: 1
limitinteger(int32)[ 1 .. 50 ]
Example: 25
curl -i -X POST \
  https://documentation.getbite.com/_mock/openapi/v2/bite-api-v2/v2/reporting/orders/day \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'x-md-api-version: 4' \
  -d '{
    "locationId": "0123456789abcdef01234567",
    "date": "2023-07-21",
    "page": 1,
    "limit": 25
  }'

Responses

Success!

Bodyapplication/json
successbooleanrequired
dataArray of objects(OrderExternalFirstParty)required
data[].​createTimestringrequired

The ISO time of order creation with timezone offset.

data[].​orgNamestringrequired

The name of the org at which the customer placed the order.

data[].​orgIdstring(OrgId)required

The ID of the org at which the customer placed the order.

data[].​siteNamestringrequired

The name of the site at which the customer placed the order.

data[].​siteIdstringrequired

The ID of the site at which the customer placed the order.

data[].​locationIdstring(LocationId)required

The ID of the location (in the specified org) at which the customer placed the order.

data[].​orderChannelstring(OrderChannel)required

Denotes the ordering channel through which orders are placed:

  • catering - Catering Website
  • flash - Contactless (QR-code)
  • kiosk - Kiosk
  • linebuster - Linebuster
  • web - Online Ordering Website
Enum"catering""flash""kiosk""linebuster""web"
data[].​diningOptionstringrequired

The name of the dining option with which the customer placed the order.

data[].​sourcestringrequired

Whether the order was made from a kiosk, mobile, or desktop browser.

data[].​orderIdstringrequired

The Bite ID of the order.

data[].​checkIdsArray of objectsrequired

The IDs of the check from POS integrations.

data[].​checkIds[].​valuestringrequired

The check ID value.

data[].​checkIds[].​namestringrequired

The name of the check ID. ex: posCheckId

data[].​checkIds[].​vendorNamestringrequired

The name of the vendor from which the check ID originated. If location is single-vendor or does not have a POS, defaults to "Default Vendor".

data[].​loyaltyCheckIdsstringrequired

The IDs of the loyalty check from loyalty integrations (if any). Absent if loyalty doesn't exist or order was not checked into loyalty.

data[].​isCancelledbooleanrequired

Indicates if the order was cancelled after it was closed.

data[].​orderNumberstringrequired

Sequential client ID that loops around.

data[].​itemsArray of objectsnon-emptyrequired

Items of the order.

data[].​items[].​specialRequeststring(OrderedItemSpecialRequest)

A special request that the guest added for this menu item. The max length of this field depends on the specific POS.

data[].​items[].​vendorNamestringrequired

The name of the vendor from which the item originated. If location is single-vendor or does not have a POS, defaults to "Default Vendor".

data[].​items[].​scannedBarcodestring(^[0-9A-Z]+$)(OrderedItemScannedBarcode)

Value of the barcode that was scanned at the kiosk to add this menu item to the order.

data[].​items[].​posIdstring

ID of the item on the POS. Absent if item does not come from a POS.

data[].​items[].​namestring(OrderedItemName)required

Name of the menu item as it appeared on the menu.

data[].​items[].​priceinteger(int32)(OrderedPriceOptionPrice)required

Final price of the item (in cents) that accounts for quantity but not including any priced modifiers.

data[].​items[].​quantityinteger(int32)(OrderedPriceOptionQuantity)>= 1required

Quantity of the menu item ordered.

data[].​items[].​unitPriceinteger(int32)(OrderedPriceOptionUnitPrice)required

Price of a single unit of the menu item in cents (given the ordered price option).

data[].​items[].​saleUnitinteger(int32)(OrderedPriceOptionSaleUnit)

Sale unit:

  • 0 - single unit
  • 2 - pounds
  • 3 - ounces
data[].​items[].​addToCartSourcestringrequired

A short description of how the item was added to the cart.

data[].​items[].​weightnumber(float)(OrderedPriceOptionWeight)>= 0
data[].​items[].​sectionobject(OrderExternalSection)required

The section of the menu from which the item originated.

data[].​items[].​section.​namestringrequired

The name of the section.

data[].​items[].​section.​posIdstring

ID of the section on the POS. Absent if section does not come from a POS.

data[].​items[].​modGroupsArray of objects(OrderExternalModGroup)required

Mod groups of the item.

data[].​items[].​modGroups[].​posIdstring

ID of the mod group on the POS. Absent if mod group does not come from a POS.

data[].​items[].​modGroups[].​namestring(OrderedModGroupName)required

Name of the mod group as it appears on the menu.

data[].​items[].​modGroups[].​modsArray of objects(OrderExternalMod)required

Ordered mods of the mod group.

data[].​items[].​modGroups[].​mods[].​posIdstring

ID of the mod on the POS. Absent if mod does not come from a POS.

data[].​items[].​modGroups[].​mods[].​namestring(OrderedModName)required

Name of the modifier as it appears on the menu.

data[].​items[].​modGroups[].​mods[].​priceinteger(int32)(OrderedPriceOptionPrice)required

Final price of the item (in cents) that accounts for quantity but not including any priced modifiers.

data[].​items[].​modGroups[].​mods[].​quantityinteger(int32)(OrderedPriceOptionQuantity)>= 1required

Quantity of the menu item ordered.

data[].​items[].​modGroups[].​mods[].​unitPriceinteger(int32)(OrderedPriceOptionUnitPrice)required

Price of a single unit of the menu item in cents (given the ordered price option).

data[].​items[].​modGroups[].​mods[].​saleUnitinteger(int32)(OrderedPriceOptionSaleUnit)

Sale unit:

  • 0 - single unit
  • 2 - pounds
  • 3 - ounces
data[].​items[].​modGroups[].​mods[].​weightnumber(float)(OrderedPriceOptionWeight)>= 0
data[].​items[].​modGroups[].​mods[].​addToCartSourcestring

A short description of how the mod was added to the cart. Only available if mod was selected through recommendations.

data[].​items[].​modGroups[].​mods[].​modGroupsArray of objects(OrderExternalModGroup)required

Mod groups of the mod.

data[].​subTotalinteger(int32)(SubTotal)required

The order sub total in cents.

data[].​taxTotalinteger(int32)(TaxTotal)required

The amount of tax collected on the order in cents.

data[].​tipTotalinteger(int32)(TipTotal)>= 0required

The tip amount on the order in cents.

data[].​discountNamesArray of stringsrequired

Names of the discounts applied to the order.

data[].​discountTotalinteger(int32)(DiscountTotal)required

The amount discounted from the order sub total in cents.

data[].​totalinteger(int32)(Total)required

The total amount that the guest paid in cents. This number includes the tip.

data[].​refundedAmountinteger(int32)required

Amount refunded from order in cents.

data[].​transactionsArray of objectsrequired

Transactions of the order.

data[].​transactions[].​cardTypestringrequired

The type of the card used by the transaction. ex: Visa, Gift Card

data[].​transactions[].​transactionTypestringrequired

The type of the transaction.

Enum"sale""refund"
data[].​transactions[].​amountinteger(int32)required

The amount of the transaction in cents.

data[].​transactions[].​lastFourstring

Last four digits of card used in transaction. Absent if a card was not used, such as by paying in cash.

data[].​transactions[].​gatewaystringrequired

The gateway used to process the transaction. ex: Stripe, Worldpay

data[].​transactions[].​cardEntryMethodstringrequired

The method used to used the card during the transaction. ex: Swipe, Google Pay

data[].​orderUrlstringrequired

A URL pointing to the Bite Admin entry of the order.

data[].​futureOrderTimestring

The time the customer is expected to pickup an order, in ISO with timezone offset. Only available if the order is a future-order.

data[].​outpostDeliveryLocationstring

The name of the outpost. Only available if the dining option is an Outpost dining option.

data[].​deliveryAddressobject(DeliveryAddress)

The delivery address for this order. This value is required if this is a delivery address.

data[].​tableNumberstring(TableNumber)

Number of the table or table tent that the order is associated with.

data[].​isTaxExemptbooleanrequired

Whether or not the order is tax exempt

data[].​serviceChargeTotalinteger(int32)(ServiceChargeTotal)required

The sum of all the service charges added to the order in cents.

data[].​serviceChargesArray of objects(ServiceCharges)non-emptyrequired

A list of all the service charges added to the order. If this property is available, then serviceChargeTotal is definitely available on the order. However, this property may not be available even if there is a serviceChargeTotal because not every POS will provide a breakdown of the service charges.

data[].​serviceCharges[].​namestringrequired

A name of the service charge as it should appear on the receipt.

data[].​serviceCharges[].​amountinteger(int32)required

The amount of the service charge in cents.

data[].​redeemedLoyaltyRewardboolean

Whether or not the guest redeemed a loyalty reward for the order.

data[].​guestobjectrequired

Info about the guest who placed the order.

data[].​guest.​guestIdstringrequired

Bite ID of the guest.

data[].​guest.​namestring

Name of the guest. Only available if the Guest Name identifier was used.

data[].​guest.​emailstring(email)

Email of the guest. Only available if the guest requested the receipt to be emailed after placing their order or if it was provided during payment.

data[].​guest.​phoneNumberstring

Phone Number of the guest. Only available if the Guest Vehicle identifier was used.

data[].​guest.​vehicleobject

Info about the guest's vehicle. Only available if the Guest Vehicle identifier was used.

data[].​guest.​satisfactionScoreinteger(int32)>= 1

How satisfied the guest was with their experience. Only available if the guest completed the survey.

data[].​guest.​satisfactionMaximuminteger(int32)>= 1

The maximum possible satisfaction score for the survey. Only available if the guest completed the survey.

data[].​guest.​ageRangestring

An approximate age range of the guest. Only available if the guest used facial recognition. ex: 22 - 28

data[].​guest.​genderstring

A calculated guess as to the gender of the guest. Only available if the guest used facial recognition.

Enum"M""F"
data[].​guest.​consentedToMarketingboolean

Whether the guest consented to marketing. Only present if the location os configured to ask the guest for consent. The guest may be asked while submitting their email address or phone number.

data[].​selectedLanguagestring

The language the guest selected for their order. Only available if the guest selected a language.

data[].​loyaltyIdsArray of objectsrequired

The IDs of the guest's loyalty account. If the array is empty, then the guest did not connect a loyalty account. There may be multiple entries if the guest used multiple methods of connecting to their account.

data[].​loyaltyIds[].​valuestringrequired

The loyalty ID value.

data[].​loyaltyIds[].​entryMethodstring(LoyaltyAuthEntryMethod)required

How the information connecting a guest to their loyalty account was collected.

Enum"barcode-scanned""card-number-manually-entered""email-manually-entered""email-and-password-manually-entered""email-and-phone-number-manually-entered""email-and-phone-number-provided-externally""phone-number-manually-entered""phone-number-provided-externally""redemption-code-manually-entered""unknown-manually-entered"
Response
application/json
{ "success": true, "data": [ {} ] }

Webhooks can be used to notify non-Bite systems of events happening at Bite. They can be configured by Bite employees at the organization level. They use pre-defined location groups to determine which locations the webhooks are active at.

Operations

Embedding Bite in a 3rd Party Mobile App