Skip to content
v26.3

HACCP (Hygiene Management)

HACCP (Hazard Analysis and Critical Control Points) is a systematic approach to food safety — legally required for every food service business. DiKAS digitizes your HACCP documentation: temperature measurements, cleaning protocols, goods receiving inspections, and hygiene checks are recorded directly in the POS and archived without gaps.


Feature Overview

Feature Description
Templates Checklists for recurring inspections
Inspection Logs Measurements and checks recorded directly in the POS
Threshold Values Automatic warning for temperature/measurement deviations
Corrective Actions Mandatory documentation for threshold violations
Photos Photo evidence for check items (camera or upload)
Log Archive All inspections permanently stored and filterable
Critical Control Points CCP marking on individual check items

Activation

  1. Admin → Settings → Operations → Enable HACCP
  2. After activation, "HACCP" appears in the POS menu and in the admin area

Templates (Defining Checklists)

What Is a Template?

A HACCP template is a reusable checklist — e.g., "Daily refrigerator temperature check" or "Weekly cleaning inspection". The template defines which check items must be recorded.

Creating a Template

Admin → HACCP → Templates → "+ New Template"

Field Description Example
Name Checklist name Refrigerator temperature check
Description Explanation Daily measurement of all cooling units
Category Type of inspection Temperature
Frequency How often to perform Daily
Sort Order Order in the POS view 1
Active Show template in the POS view Yes

Categories

Category Value Description Examples
Temperature 0 Temperature measurements Refrigerator, freezer, hot holding
Cleaning 1 Cleaning protocols Kitchen, counter area, restrooms
Goods Receiving 2 Goods receiving inspection Check delivery, temperature, expiration
Pest Control 3 Pest control Insect traps, rodent bait stations
Staff Hygiene 4 Hygiene checks Hand washing, work clothing
Other 5 Other inspections Grease filter, waste disposal

Frequency

Frequency Value Description
Daily 0 Perform every day
Weekly 1 Once per week
Monthly 2 Once per month
As Needed 3 Only on specific occasions

Check Items

Each template contains one or more check items — the individual measurements or inspections:

Creating a Check Item

Field Description Example
Title What is being checked Refrigerator 1 (Meat)
Check Type Type of input Temperature
Unit Unit of measurement °C
Min Value Lower threshold −2
Max Value Upper threshold 7
Critical Control Point CCP marking Yes
Corrective Action Default action for deviations Relocate goods, call technician

5 Check Types

Type Value Input Thresholds Example
Temperature 0 Numeric value with °C Yes (Min/Max) Refrigerator: 2–7 °C
Yes/No 1 Two buttons (Yes/No) No "Kitchen cleaned?"
Text 2 Free text input No Remarks, observations
Number 3 Numeric value with unit Yes (Min/Max) Chlorine level: 0.3–0.6 ppm
Photo 4 Camera or upload No Photo of cleaning condition

Threshold Checking

For the check types Temperature and Number, entered values are automatically checked against the defined thresholds:

Check Item: Refrigerator 1 (Meat)
  Min: -2 °C
  Max:  7 °C

Input: 3.5 °C  → ✅ Within range (green)
Input: 9.2 °C  → ⚠️ Deviation! (red)
                 → Required field: "Describe deviation"
                 → Required field: "Corrective action"

When a value is outside the thresholds, the employee must document a deviation description and the corrective action taken. The log then receives the status "With Deviations".

Critical Control Points (CCP)

Check items can be marked as a Critical Control Point. CCPs are the points in the process where control is critical for food safety. In the template and in the log, CCPs are specially highlighted.


Performing an Inspection (POS)

Selecting a Checklist

  1. POS → Menu → HACCP
  2. The view shows all active templates as tiles:
┌───────────────┐  ┌───────────────┐  ┌───────────────┐
│ 🌡️ Temperature│  │ 🧹 Cleaning   │  │ 📦 Goods Rec. │
│               │  │               │  │               │
│ Refrigerator  │  │ Kitchen daily │  │ Delivery      │
│ Daily         │  │ Daily         │  │ As Needed     │
│               │  │               │  │               │
│ 5 check items │  │ 8 check items │  │ 4 check items │
│ [Start]       │  │ [Start]       │  │ [Start]       │
└───────────────┘  └───────────────┘  └───────────────┘

Open logs: If a log has not been completed yet (e.g., employee was interrupted), it is highlighted in yellow and can be continued.

Filling in Check Items

After starting a checklist, check items are displayed one by one:

Temperature input:

┌──────────────────────────────────────┐
│  Check Item 1/5                     │
│                                      │
│  Refrigerator 1 (Meat)         CCP │
│  Thresholds: -2 °C to 7 °C        │
│                                      │
│  ┌──────────────────────┐           │
│  │       3.5             │  °C      │
│  └──────────────────────┘           │
│                                      │
│  ✅ Within range                     │
│                                      │
│  [← Back]              [Next →]     │
└──────────────────────────────────────┘

Yes/No input:

┌──────────────────────────────────────┐
│  Check Item 3/5                     │
│                                      │
│  Kitchen cleaned and disinfected?   │
│                                      │
│  ┌────────────┐  ┌────────────┐     │
│  │    Yes     │  │     No     │     │
│  │   (green)  │  │    (red)   │     │
│  └────────────┘  └────────────┘     │
│                                      │
│  [← Back]              [Next →]     │
└──────────────────────────────────────┘

Upon threshold violation:

┌──────────────────────────────────────┐
│  Check Item 2/5                     │
│                                      │
│  Refrigerator 2 (Dairy)        CCP  │
│  Thresholds: 2 °C to 7 °C         │
│                                      │
│  ┌──────────────────────┐           │
│  │       9.2             │  °C      │
│  └──────────────────────┘           │
│                                      │
│  ⚠️ DEVIATION! Value above maximum  │
│                                      │
│  Describe deviation: *              │
│  ┌──────────────────────────────┐   │
│  │ Door was left open           │   │
│  └──────────────────────────────┘   │
│                                      │
│  Corrective action: *               │
│  ┌──────────────────────────────┐   │
│  │ Door closed, technician     │   │
│  │ notified, goods checked     │   │
│  └──────────────────────────────┘   │
│                                      │
│  [← Back]              [Next →]     │
└──────────────────────────────────────┘

Photo Evidence

For check items of type Photo, you can take a photo directly or upload an image:

  1. Tap camera icon → take photo
  2. Or tap upload icon → choose image from device
  3. Supported formats: JPEG, PNG, WebP (max. 10 MB)
  4. The photo is assigned to the check item and saved in the log

Completing a Log

After the last check item:

  1. Tap "Complete"
  2. DiKAS automatically checks all thresholds
  3. The log receives the status:
Status Color Meaning
Completed Green All values within range
With Deviations Red At least one value outside thresholds
  1. Log is permanently saved (cannot be deleted)

Log Archive (Admin)

Viewing Logs

Admin → HACCP → Logs

Column Description
Date When the inspection was performed
Template Which checklist was used
Category Temperature, cleaning, etc.
Completed By Employee name
Status Completed / With Deviations

Filters

Filter Description
Time Period From-To date
Template Only specific checklist
Status Only completed / only with deviations

Log Detail

Click on a log to see all details:

  • All check items with entered values
  • Threshold result (within range / deviation)
  • Deviation descriptions and corrective actions
  • Attached photos (preview + download)
  • Employee, date, and time

Template Examples

Example 1: Daily Temperature Check

Field Value
Name Daily Temperature Check
Category Temperature
Frequency Daily

Check Items:

No. Title Type Unit Min Max CCP
1 Refrigerator 1 (Meat) Temperature °C −2 7 Yes
2 Refrigerator 2 (Dairy) Temperature °C 2 7 Yes
3 Freezer Temperature °C −22 −18 Yes
4 Hot holding (Soup) Temperature °C 65 80 Yes
5 Remarks Text No

Example 2: Weekly Cleaning Inspection

Field Value
Name Weekly Cleaning Inspection
Category Cleaning
Frequency Weekly

Check Items:

No. Title Type CCP
1 Work surfaces cleaned and disinfected Yes/No No
2 Grease filter on exhaust hood cleaned Yes/No No
3 Kitchen floor cleaned Yes/No No
4 Hand wash basin soap/disinfectant Yes/No No
5 Trash cans cleaned Yes/No No
6 Restrooms cleaned Yes/No No
7 Refrigerator interior surfaces Yes/No No
8 Photo of kitchen condition Photo No

Example 3: Goods Receiving Inspection

Field Value
Name Goods Receiving Inspection
Category Goods Receiving
Frequency As Needed

Check Items:

No. Title Type Unit Min Max CCP
1 Supplier Text No
2 Temperature of chilled goods Temperature °C −2 7 Yes
3 Packaging undamaged Yes/No No
4 Best-before date sufficient Yes/No No
5 Cleanliness of delivery vehicle Yes/No No
6 Photo of delivery note Photo No
7 Remarks Text No

Example 4: Staff Hygiene

Field Value
Name Staff Hygiene Check
Category Staff Hygiene
Frequency Daily

Check Items:

No. Title Type CCP
1 Clean work clothing Yes/No No
2 Hands washed and disinfected Yes/No Yes
3 No jewelry on hands/arms Yes/No No
4 Hair net/head covering worn Yes/No No
5 No open wounds Yes/No Yes

Practical Example: Restaurant "Zur Linde"

Situation: Restaurant with kitchen, 3 refrigerators, 1 freezer, daily HACCP requirement.

Setup

  1. Enable HACCP (Settings → Operations)
  2. Create 3 templates:
  3. Daily temperature check (5 check items, 2× daily)
  4. Weekly cleaning inspection (8 check items)
  5. Goods receiving inspection (7 check items, as needed)

Daily Routine

Morning (08:00): 1. Cook Maria opens POS → HACCP → "Temperature Check" 2. Measures all 4 temperatures → enters values 3. Refrigerator 2 shows 9.2 °C → Deviation! 4. Maria documents: "Door was left open" → Action: "Door closed, goods checked, technician notified" 5. Log completed → Status: With Deviations (red)

Evening (18:00): 1. Cook Thomas performs the second temperature check 2. All values within range → Status: Completed (green)

Monday (Weekly): 1. Maria performs the cleaning inspection 2. All 7 Yes/No items answered with "Yes" 3. Photo of kitchen condition taken 4. Log completed → Status: Completed (green)

During a Health Authority Inspection

  1. Admin → HACCP → Logs
  2. Select time period (e.g., last 3 months)
  3. View all logs with values, deviations, and corrective actions
  4. Photos available as evidence
  5. Filter by "With Deviations" → all incidents with documented actions

Why Digital HACCP?

Property Paper DiKAS HACCP
Filling in Handwritten, illegible Large input fields in the POS
Thresholds Check manually Automatic warning
Completeness Missing entries possible All check items must be filled in
Archiving Folders, paper stacks Digital, permanent, searchable
Photo evidence Separate camera + printing Directly in the log
Corrective actions Can be forgotten Required field for deviations
Inspection Browse through folders Filter + search in seconds

API Endpoints

Method Endpoint Description
GET /api/v1/haccp/templates All templates
POST /api/v1/haccp/templates Create new template
PUT /api/v1/haccp/templates/{id} Update template
DELETE /api/v1/haccp/templates/{id} Delete template
GET /api/v1/haccp/logs Query logs (with filters)
GET /api/v1/haccp/logs/{id} Single log
POST /api/v1/haccp/logs Start new log
PUT /api/v1/haccp/logs/{id}/complete Complete log
POST /api/v1/haccp/logs/{id}/photos/{index} Upload photo
GET /api/v1/haccp/logs/{id}/photos/{name} Retrieve photo

Frequently Asked Questions

Is HACCP documentation mandatory? Yes. According to EU Regulation (EC) No. 852/2004, every food business is required to implement an HACCP concept and document the checks. Digital documentation with DiKAS fulfills this requirement.

Can logs be modified after completion? No. Completed logs are immutable — this is important for traceability during authority inspections. If a correction is needed, create a new log.

How long are HACCP logs retained? DiKAS does not delete HACCP logs. The legal retention period is at least 1 year (LMHV — Lebensmittelhygieneverordnung, German Food Hygiene Regulation), with 2–5 years recommended.

Can multiple employees fill in the same checklist on the same day? Yes. Each run creates its own log with timestamp and employee name. For example, separate temperature checks can be documented in the morning and evening.

Do I need a thermometer with a digital interface? No. Temperatures are entered manually. DiKAS automatically checks the values against the thresholds.

Can I define custom check types? The 5 check types (Temperature, Yes/No, Text, Number, Photo) cover all common HACCP requirements. Using the "Number" type with a custom unit, you can also record pH values, chlorine levels, or other measurements.


Next Step

Disco — Club management with card accounts