How to Set up an Olo Integration in the GRUBBRR Portal

Last updated: August 5, 2026

Procedure Steps:

Olo is used to give businesses online ordering functionality. When a client has a POS system that does not integrate with our kiosk, if they use Olo, we can use that as our point of communication between their existing software and ours. If a client uses a GRUBBRR KDS with their Olo integration, orders from their existing POS will not show on the KDS.

Olo sets the standard Olo integration process and requires several stages of completion for us to receive certification. 

Kickoff Call

Olo requires a kickoff call to start every project, which can take up to two months to schedule. Therefore, prioritize completing this call as soon as you receive an Olo project. 

Reach out to the client and ask them to arrange a call between us and their Olo CSM. On the call, make sure you receive the following information:

  • Required: If this is the first time we've set up the Olo integration for this client, ask them to subscribe to webhooks; if the client is unsure of how to set up webhooks, send them the link to our guide for Subscribing to Olo webhooks 
  • Ask if the client is currently using a loyalty program, or wants us to help them build one
  • Ask the client if they will be using tips
  • Ask the client what order types (handoff modes) they will be offering
  • Ask the client if they are using custom fields
    • Are they required?
    • What are the fields used for?
    • If the client uses custom fields, we need them enabled as well
  • Make sure to ask the Olo representative for all API permissions, including item 86 updates and menu changes

Contact Information

When the CSM asks who will be assigned to the Olo Portal, you will provide this contact:

GRUBBRR Portal

We integrate with the client's Olo database at the location level by following the steps outlined below. Please note: GRUBBRR does not recommend using the Daily Sync function in our portal due to current limitations with Olo's APIs. Please leave this flag off, unless otherwise directed by the Product Owner.  

  1. Log in to the lab branch
  2. Select Integration from the left sidebar menu
  3. Select OLO 
  4. On the Olo Integration page, configure the following: 
    • In the Url dropdown, select Staging
    • In the Key field, enter the Olo key from the client. 
    • In the Olo Client ID field, enter the client ID you took from the Olo Developer Site
    • In the Olo Client Secret ID field, enter the secret ID you took from the Olo Developer Site
    • Enter the VendorID
      • Select Look Up Vendors and select the appropriate vendor from the list OR 
      • Enter the ID in Enter Vendor ID Manually
      • Select Apply
    • The Use Daily Sync function is not recommended, and should be left off unless otherwise directed by the Product Owner
      • We will only use this function if the client is having issues subscribing to webhooks, or if there are other extenuating reasons for the request
    • If the client needs additional information sent to their KDS, we can enable the function labeled Append order type to customer name, as shown here: 
      The field labeled Customer Name Prefix can be used to add an extra identification layer. For example, adding a "K" to this field would send the order to the KDS as KDineInGuestNameThis could tell the client's KDS that orders are coming from the kiosk.
      • The field labeled Customer Name for Guest Users creates a default identifier that can be sent to the KDS if a customer chooses not to enter a name at the kiosk. 
    • If the client has configured Discounts in Olo, we can use the Discounts dropdown to enable them on the Kiosk as well
      • Selecting Coupon Codes adds an "Enter Code" button to the checkout screen on the Kiosk
    • Check all the following fields:
      • Pull Updated Item Images
      • Pull Updated Modifier & Variation Images
      • Pull Updated Category Images
      • Pull Updated Category Item Mappings
    • If the client is using a GRUBBRR KDS, check these additional fields:
      • Enable Notification & Process
      • Process Webhook for External Order
    • Enabling Third Party Prefix for All Item Special Requests will attach a Kiosk identifier to orders containing custom modifiers
    • Enabling Ignore Olo Min/Max Count allows GRUBBRR to assign custom minimum/maximum selections to modifiers on the Kiosk
    • If desired, we can enable Send Loyalty Phone Number to Olo for the client
    • Enabling Ignore Olo Store Hours prevents any store hours saved in the GRUBBRR portal from being overwritten when we perform a menu sync
  5. Select Save
  6. After saving your settings, you will be prompted to sync your data. Do so now.

Custom Fields

After completing the initial sync with Olo, you will see a new table at the bottom of the integration page, labeled Custom Field Mapping

If (and only if) the client is using custom fields, we need to ensure that we have properly linked GRUBBRR's internal order types to any fields marked as Required in the table. Below is an example: 

All fields in this table are marked as required; however, the GRUBBRR kiosk does not support curbside ordering, so we only need to add information for the final row. Olo populates the first three rows, so we need to provide the following: 

  1. In the field labeled Order Type, we need to connect GRUBBRR's internal order type to the order type specified by Olo- in the example above, we would select Dine In. 
  2. Some Olo clients might require us to send a Custom Value with the order type; if so, enter that value in the column here. 
  3. In the final column, you can enable or disable the For Table Tent? option if the client will require guests to take table tents as part of the order process. For the example above, we turned this flag on.

Note: 

Because Olo order types are hardcoded, we can't change order types through GRUBBRR's General Settings tab. However, we can change the Display Label. If the client wants to offer "Pick up at Counter" instead of "Takeout," you can edit this field to display the appropriate option on the kiosk. 

Production Setup

After we receive certification, ask the client to subscribe to webhooks in the production environment (webhook URL: https://portal.grubbrr.com/api/OloCallback):

  • Vendor export webhook
  • Menu availability change webhook
  • Orders webhook (if the client wants our KDS)

Send the client this guide to help them subscribe to webhooks.

  1. Log in to the GRUBBRR Portal at the location level
  2. From the left sidebar menu, select Integration
  3. Select Olo from the dropdown menu
  4. Select Production from the URL dropdown
  5. Enter the Production Olo key into the Key field
  6. Enter the OLO Client ID and OLO Client Secret ID
  7. Enter the VendorID
  8. Ensure that Use Daily Sync is turned Off
  9. To add the table tent prefix to table tent printouts, select Add Table Tent Prefix
  10. To print the order type along with the customer name, select the following field:
  11. Customer Name Prefix is an optional field that enables clients to distinguish kiosk orders by adding a prefix to all customer names that place orders on kiosks (if used, enter K)
  12. Enter average order preparation time into Preparation Time (Minutes)
  13. Select Process Incoming webhooks for Menu Changes and Process Webhook for External Order
    • Pull Updated Item Images and Pull Updated Category Images will overwrite item or category images in the GRUBBRR Portal with images from Olo
    • If the Show new records on devices flag is set, newly imported items will have the Show on Kiosk option set
    • If the client is using a GRUBBRR KDS, select Process Webhook for External Order
  14. Select Save & Sync Data Now

Procedure Warnings: