Meal Compliance
1. What it is
Meal Compliance connects meal break behavior — from timesheets and attendance — with the legal documentation that supports it. The app monitors whether employees are actually taking or skipping meal breaks, manages signed waivers for those who skip, detects when behavior changes, and flags employees who are waiving meals without a valid waiver on file.
- Enablement: Meal Compliance requires a license and is off by default. An administrator enables it from the Apps Marketplace.
- What it is not: Meal Compliance does not schedule breaks or enforce rest periods at shift-assignment time. Break scheduling rules live in the Time & Attendance break-rule configuration. This app manages the waiver documentation and compliance monitoring that sit on top of those rules.
2. Standing it up
- Enable the app. Go to Admin → Apps Marketplace, find Meal Compliance, and enable it for your organization.
- Set up jurisdictions. Meal break waiver requirements are per-jurisdiction (state, county, or city). Go to Admin → Jurisdictions and confirm your locations have active jurisdictions assigned. Without jurisdictions, the break compliance engine has no rules to evaluate and remains silently inert.
- Configure break rules. The break compliance engine reads labor law rules of type “break” that resolve through your locations’ jurisdictions. Confirm at least one active break rule exists — the Break Compliance tab in Meal Compliance shows which rules are in force and which locations they cover.
- Review default settings. Go to Meal Compliance → Settings and adjust the behavior detection window, waiver expiry period, and whether e-signature is required.
- Grant access. Any employee can see the My Breaks tab (their own waiver status and break history). Managers can create and manage waivers for their direct reports. HR admins, app admins, and organization admins have full access to all employees’ waivers, compliance gap reports, break compliance findings, and CSV exports. Designate app admins under Admin → Apps Marketplace → Meal Compliance → App Admins if you want non-admin users to have full access.
- Confirm it works. The Dashboard shows four tiles: Active Waivers, Pending Signatures, Behavior Alerts, and Invalidated. A coverage percentage appears once the system detects employees waiving meals. The Break Compliance tab shows any break-law findings the engine has recorded.
Silent-failure pairing: jurisdictions and break rules must both exist. A location with no jurisdiction resolves no break rule, so the engine writes no findings and the Break Compliance tab shows an empty report — which reads as “no violations” when it actually means “no rules”.
3. How it fits together
Waivers are the core records. A waiver is a signed document allowing one employee to voluntarily skip meal breaks. Each waiver belongs to one employee, optionally to a location and a jurisdiction, and moves through a lifecycle: Draft → Pending Signature → Active → Expired or Invalidated. A waiver that reaches its expiry date is swept to Expired automatically every four hours by a background job. Only managers, HR admins, and app admins can create waivers; employees cannot create their own. Waivers cannot be edited after creation — to correct a mistake, invalidate the waiver and create a new one.
Per-period elections apply in jurisdictions that define more than one meal period (for example, a 1st and 2nd meal period). Each period is waived independently — an employee might waive the 2nd meal period while taking the 1st. When only one meal period is defined, the waiver form shows a single Behavior State selector (Waiving or Taking) instead of per-period radios. Elections record only what the employee chose; whether a waiver applies on a given day depends on the jurisdiction’s rules for that period.
Example: an employee at a California location works varying shifts. Their waiver elects to waive the 1st meal period. On a 5.5-hour day, that election applies and the system expects them to skip the meal break. On a 7-hour day, the law does not allow the 1st period to be waived, so the system expects them to take it — the waiver is still active but does not apply that day.
Behavior detection runs in the background every four hours. The system reads each employee’s completed and skipped meal break records from timesheets over a configurable detection window (default 14 days). Each day is scored independently:
- All meal breaks completed, none skipped → that day counts as taken.
- All meal breaks skipped, none completed → that day counts as waived.
- Some completed, some skipped → that day counts as mixed (neither side).
If an employee’s waived days are 70% or more of their scored days, their pattern is Waiving. If their taken days are 70% or more, the pattern is Taking. Below 70% on both sides — including days scored mixed — the pattern is Inconsistent. A minimum number of days with break data must exist in the window before a pattern is determined (default 3 days); below that threshold the result is also Inconsistent.
When the detected pattern differs from the behavior recorded on an employee’s active waiver, the system logs a behavior change alert. If Auto-Invalidate on Behavior Change is on, the existing waiver is automatically invalidated and the employee is notified by email and in-app notification.
Compliance gaps are employees whose break records show them waiving meals in the last 30 days but who have no active waiver on file. The Compliance Gaps report (under Waivers → Gaps) lists these employees and can be filtered by location. The dashboard’s coverage percentage measures the same thing: of employees detected as waiving, what share has an active waiver.
Break compliance findings are recorded by a separate engine that evaluates each employee’s actual breaks against the jurisdiction’s legal requirements. Six finding types are tracked:
- Missing — no meal break was recorded.
- Started too early or Started too late — the break fell outside the allowed window.
- Too short — the break was shorter than the legal minimum.
- 2nd meal missing — a required second meal break was not taken.
- Unbroken stretch — the employee worked longer than the allowed unbroken interval.
Each finding is classified by period kind (Meal, Rest, or Unbroken work) and carries a severity of Violation or Warning. The engine operates in one of two modes — Observe (records findings silently, does not notify employees) or Enforce — configurable per organization. The default is Observe. Review the findings that accumulate in Observe mode before switching to Enforce.
E-signature integration is optional. When Require E-Signature is on in settings and the E-Signature app is separately enabled for your organization, a draft waiver can be sent to the employee for formal e-signature. When e-signature is not required or not available, a manager can mark a draft waiver as active using the Activate action — this records that a signature was collected outside the app. Without one of these two paths, a draft waiver has no way to become active.
Notifications. The app sends four kinds of notifications (in-app bell and email):
- Waiver expiring — sent to the employee a configurable number of days before their waiver’s expiry date (default 14 days).
- Waiver invalidated — sent to the employee when their waiver is invalidated, whether manually or by the auto-invalidation engine.
- Compliance gap alert — sent to the employee’s manager (or to the employee directly if no manager is assigned) when they are waiving meals without a valid waiver.
- Behavior change detected — sent to the employee when the system detects their meal break pattern has changed.
Proactive reminders (expiry and compliance-gap alerts) are sent every four hours for all tenants that have Meal Compliance enabled, even if autonomous actions are not turned on.
4. Running it
Creating a waiver
- Go to Meal Compliance → Waivers → New Waiver.
- Select the employee, optionally a location and jurisdiction, and choose the behavior state or per-period elections.
- Set the validity period (Valid From / Valid Until). If Valid Until is left blank, the waiver does not expire by date.
- Submit. The waiver is saved as a Draft.
- Either click Send for Signature (if e-signature is enabled and the E-Signature app is active) or click Activate to put the waiver on file immediately.
Invalidating a waiver
- Go to Meal Compliance → Waivers and open the waiver.
- Click Invalidate. Optionally provide a reason.
- The employee is notified that their waiver is no longer valid.
Active and Pending Signature waivers can be invalidated. Draft and already-expired waivers cannot.
Reviewing compliance gaps
- Go to Meal Compliance → Waivers → Gaps.
- The page lists employees whose break behavior shows them waiving meals without an active waiver. Filter by location if needed.
- Create a waiver for any listed employee directly from the gap report.
This report is available to HR admins, app admins, and organization admins only.
Reading break compliance findings
- Go to Meal Compliance → Break Compliance.
- The report shows findings grouped by counts: total, open, by period kind, and affected employees. Filter by finding type, period kind, status, employee, or date range.
- Resolve individual findings by marking them and adding an optional note.
Before switching the engine from Observe to Enforce, review the findings backlog here — this is the only place accumulated observations are visible.
Exporting waivers
From the Dashboard, click Export to download a CSV of all waivers (or filtered by status). The export caps at 10,000 records; if your data exceeds that, filter by status and export in batches. The file labels the truncation when it applies.
Using the AI Console
Once autonomous actions are on with a Trusted trust level, admins are redirected to the AI Console as the default landing page. The console provides an autonomy dial with three positions: Off, Approval required, and Acting automatically. In the approval-required mode, the system proposes actions and waits for admin approval before executing them. The classic dashboard remains accessible via the Dashboard tab.
5. Settings
All settings are at Meal Compliance → Settings.
| Setting | Card | Default | What it changes |
|---|---|---|---|
| Detection window (days) | Behavior detection | 14 | How many days of break records are analyzed to determine an employee’s meal break pattern. |
| Minimum days for reliable detection | Behavior detection | 3 | The number of days with break data required in the window before the system assigns a behavior pattern. Below this, the pattern is Inconsistent. |
| Default waiver expiry (days) | Enforcement | 365 | How long a signed waiver stays valid before it expires automatically. |
| Expiry reminder (days before) | Enforcement | 14 | How many days before a waiver’s expiry date the system sends a reminder to the employee. |
| Require E-Signature | Enforcement | On | Whether waivers must be formally e-signed through the E-Signature app. Requires the E-Signature app to be separately enabled. |
| Enable autonomous actions | Autonomous actions | Off | Allows the system to take automated compliance actions (behavior analysis, waiver invalidation, gap notifications) without manual triggers. |
| Auto-invalidate on behavior change | Autonomous actions | On | When an employee’s detected break pattern changes, their active waiver is automatically invalidated and they are notified. Only takes effect while autonomous actions are enabled. |
| Minimum confidence (%) | Autonomous actions | 95 | The confidence threshold for autonomous actions to execute. |
| Max actions per day | Autonomous actions | 50 | Caps the number of autonomous actions the system can take per day. |
| Trust level | Autonomous actions | Probation | Controls which types of autonomous actions are permitted. The three levels are Probation, Standard, and Trusted. At Trusted with autonomous actions on, the AI Console becomes the default landing page for admins. |
The AI Console’s autonomy dial writes the same autonomous-actions fields. Its three positions — Off, Approval required, and Acting automatically — map to the Enable autonomous actions toggle and the Trust level. Moving the dial to Acting automatically sets Trust level to Trusted and makes the AI Console the admin landing page.
6. More help
- Meal Compliance FAQ — specific setup and operating questions.
- Ask AI — the assistant answers questions about Meal Compliance from these articles and can check waiver status, list compliance gaps, analyze behavior patterns, and list break-law findings.