Audit your POS or master menu management system to identify all modifier groups with nested sub-modifiers (e.g., a burger with a sauce modifier that has a spice-level sub-modifier).
Research and document the maximum nesting depth supported by each target channel: note that channel limits vary and can be as shallow as one level on some platforms.
Build a validation function in your menu sync pipeline that traverses the modifier tree and flags any group that exceeds the target channel's maximum depth.
For over-nested items, implement a flattening strategy: either collapse nested options into a flat list with combined names, or exclude sub-modifiers that cannot be represented.
Test the flattened menu on each channel's staging environment to confirm the menu publishes without validation errors and renders correctly for customers.
Document the channel-specific nesting rules in your integration so future menu additions are authored within the supported constraints.
Known gotchas
Different delivery platforms enforce nesting limits at different points — some reject the menu upload immediately, others silently truncate the modifier tree, and some display only the top-level modifiers without warning; test on each platform to know which behavior applies.
Middleware platforms like Deliverect and Chowly abstract some of these differences but do not guarantee that all channel-specific nesting rules are enforced before submission — validate at the source, not just at the middleware layer.
Flattening complex modifier hierarchies can produce very long flat modifier lists that degrade the customer ordering experience; balance technical compliance with UX quality when designing the flattening strategy.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp