Integrations
Olo Rails Integration
Menu Sync
51min
ezcater and olo have two integrations available to our catering partners orders api and menus api the orders api transmits order data, while the menus api syncs the ezcater menu with your olo rails menu, allowing for menu per location this documentation provides comprehensive guidance for preparing menus for integration with ezcater it outlines menu features, requirements, best practices, and integration specific configuration guidance to ensure a smooth integration process to get the menus api configured, ezcater requires additional metadata tagging to automate the menu build the purpose of this document is to explain the steps needed to build and tag your menu with the necessary metadata tagging to automate the menu build to ensure a smooth transition, we highly recommend you add all metadata tags as soon as you can this will allow the ezcater team to streamline the process and work on getting your brand live as soon as possible for assistance or questions about the integration functionality or what metadata key/value to use , please reach out to api support\@ezcater com mailto\ api support\@ezcater com for assistance or questions regarding your olo menu (metadata placement, rails visibility settings, basket errors) please contact your olo customer experience manager or your olo project manager additional resources ezcater menu requirements https //api ezcater io/general menu guidanceezcater and olo rails faq https //api ezcater io/olo rails integrationrails filters/menu visibility https //olosupport zendesk com/hc/en us/articles/360028092432 rails filters marketplace menu visibility for a downloadable version please use the link below https //archbee doc uploads s3 amazonaws com/cnbnwfhdna9lzk7nmy mg 36jt7j4bhegaxdfnm1ths 20250324 183641 pdf metadata setup the purpose of this document is to identify and walk through the requried steps needed to set up metadata within olo menu management to ensure a smooth sync with ezcater via the menu api metadata is data that is entered in key/value pairs (also known as metadata tags) in menu admin in the case of ezcater specific metadata, the key/values are passed onto the ezcater platform to create a specific user experience for best practices and information on the metadata keys/values available for use, please follow below or reference ezcater’s features list how to set up metadata in the olo menu management click the metadata tag on the category, product, modifier group or modifier choice enter the key | value pair for a more in depth walkthrough of the steps above, please utilize the video below metadata callouts if you need to duplicate a product for ezcater and would like to use the same tags for the product make sure to keep the “keep existing metadata for product” checked do not delete any metadata from live ezcater products unless advised otherwise by ezcater/olo there are no negative implications to adding metadata in advance to a live ezcater menu prior to onboarding with the ezcater menus api remove the spacing that is present in the key or value field for example if a value is written vegetarian, gluten free it will fail instead remove the space vegetarian,gluten free keys and values are not case sensitive utensils specific metadata utensils is a general term used to describe the varying utensil items a customer will need utensils can include utensils; forks, knives, spoons, plates, bowls, and/or napkins we can accommodate free or paid utensils utensils selections from customers can be found in ezmanage ezcater requires all menus to have a utensil configuration ezcater provides consumers the ability to select or deselect their utensil requirements as the order forms in the cart the experience includes as items are added to the cart, tableware options appear in the cart in a dedicated section upon edit the consumer can select or deselect “tableware” as needed the options available for selection change based on the item’s option/choices selected free utensils specific metadata free utensils are modeled as an option/choice, are tagged as “utensils”, while hidden on the ezcater menu, they are presented as part of the checkout experience if utensils are free, all items will need to have a utensil configuration with the exception of individual drinks to create free utensils specifically for ezcater you will not use the single use category functionality instead you will create a modifier group under each ezcater specific item the table below highlights the possible configurations for utensils depending on the menu items offered utensils must be applied to all food items item modifier group choices standard items utensils utensils plates napkins soups soup utensils bowls napkins spoons non individual drinks cups & ice cups ice coffee coffee utensils cups stirrers sugar diet sweeteners creamer exceptions that would not require utensils individual drinks create a utensils modifier within the group and map it to the pos add metadata by clicking the “tag” button, enter the key + value as shown below key choicetypetags value utensils for a more in depth walkthrough of the steps above, please utilize the video below paid utensils specific metadata paid for items are tagged as “utensils” and presented in the menu as an item customers can select these items and add them to the cart as they build their order paid utensils are set up by creating a utensils item with a cost under a “miscellaneous” category add metadata by clicking the “tag” button, enter in key + value as shown key itemtypetags, taxcategory value utensils, miscellaneous add option level for utensils and the necessary choices using the configuration below depending on the menu items offered item choices utensils utensils plates napkins soup utensils bowls napkins spoons cups cups ice ice exceptions that would not require utensils individual drinks for a more in depth walkthrough of the steps above, please utilize the video below metadata tag configurations below are the necessary keys and values that need to be entered for all items keys are indicated by bold text, values are indicated by sub bullets item level tagging cateringservesize required for all items a numeric value indicating the serving size sorry, we cannot support ranges (ex serves 4 8) ranges can be added to the item's descriptions supported values any positive non zero integer taxcategory required for all items tax designations of each item supported values bakery items cakes and pies candy chips and snacks coffee tea milk dressings and condiments exempt ice cream miscellaneous non soda drinks prepared food sandwiches soda water foodlabelingtags required when applicable these values will tag an item with the flag in ezcater these flags will be searchable by the customers supported values healthy vegetarian vegan kosher halal gluten free spicy itemtypetags required when applicable these values are specifically used for upsell opportunities please ensure all beverage and dessert items are tagged accordingly supported values dessert drinks utensils ice individualwrapstatus required for all items a value indicating whether the product can be individually wrapped or not supported values t f quantityunit required for all items unit of measure for items supported values bar bottle bowl box buffet cake can carafe dozen foot full pan gallon half gallon half pan item kit liter package pan person pie piece pint pizza platter pound quart roll six pack skewer slider taco tray twelve pack two liter option level tagging foodlabelingtags required where applicable these fields will tag an item’s choice with the flag in ezcater these flags are not searchable by customers but will be tagged on the choice option supported values healthy vegetarian vegan kosher halal gluten free spicy choicetypetags required where applicable these values are specifically used for upsell opportunities please ensure all beverage and dessert items are tagged accordingly supported values dessert drinks utensils ice sized based items tagging isselectionsizegroup required where applicable for sized based items, the above tags will still be required on the parent/item level with the exception of cateringservesize that will live on the option level parent/item level taxcategory (required) foodlabelingtags itemtypetags individualwrapstatus quantityunit (required) option group isselectionsizegroup = t option cateringservesize these tags are specifically referring to size based items and are used to delineate small, medium, large for items the product size selection names should not include the product name the option group with this metatag should also be given the smallest sortorder products with selection sizes must have matching option and modifier structure across all sizes different selection sizes must have the same structure/names so the logic knows how to match options under the same option but with selection sizes option groups under each size must have exactly the same description, sortorder, mandatory, minselects, maxselects, choicequantityincrement, supportchoicequantities for each selection size metadata tag will need to be added to the “ option group ”, not the parent/item or the option supported values t cateringservesize required a numeric value indicating the serving size for sized based items, these need to exist on the option level, not item level sorry, we cannot support ranges (ex serves 4 8) ranges can be added to the item's descriptions supported values any positive non zero integer for a more in depth walkthrough of the steps above, please utilize the video below zero dollar parent items items where the price lives on the option level, but is not a size priced options within the first option group with a “sortorder” of 0 option group must have minselects = 1 and maxselects = 1 and be mandatory if these rules are not applied, the item will not be built "isselectionsizegroup" metadata should not be added to the “option group” rails visibility when using ezcater specific menu categories you will need to adjust the rails visibility setting to filter off all other ordering channels category level settings navigate to the “edit category” button with a category under “category visibility” deselect all ordering channels with the exception of ezcater item level settings navigate to the product and click into the product name scroll down to get to the menu product visibility feature and change the visibility to be ezcater specific