⌘K
Product graph
Product Information Management
Restaurant
Catalog
Channels
The Innovorder Catalog (PIM) is the backbone of the ordering experience. It uses a flexible, hierarchical, and bi-recursive data structure to model everything from simple coffees to complex, multi-step composite meals.
1Core Entities
- MenuThe root container. A restaurant can have multiple menus (e.g., "Lunch", "Dinner", "Delivery").
- CategoryOrganizes products within a menu. Can be nested (Category > Sub-Category).
- ProductThe sellable item (Burger, Coke) or an option choice (Rare, No Ice).
- StepDefines a choice or modification (e.g., "Choose Cooking Level", "Select Sides").
2Recursive Logic
The power of the model lies in the Product ↔ Step relationship:
Product (e.g. "Menu Best Seller")
↳ Step (e.g. "Choose Burger")
↳ Product (e.g. "Cheese Burger")
↳ Step (e.g. "Cooking Level")
↳ Product (e.g. "Rare")
Key Concept: The "Menu Hash Map"
Due to the complexity of the graph, retrieving a menu item by item is inefficient. We provide a /hash_map endpoint that returns the entire menu structure in a compressed, normalized JSON format. Front-end applications should load this once and reconstruct the tree locally.