# Ordio Mobile App – User Flows

**Last Updated:** 2026-02-02

Complete user journey documentation for the Ordio Mitarbeiter-App, including primary flows, error recovery, and flow variations.

## Overview

User flows document the complete journeys users take through the Ordio mobile app to accomplish specific goals. This documentation includes:

- **Primary Flows:** Main user journeys (happy paths)
- **Alternative Flows:** Different ways to accomplish the same goal
- **Error Recovery:** How errors are handled and recovered from
- **Flow Variations:** Variations based on user role, data state, or context

## Data Sources

- **Screenshot Analysis:** 90 screens analyzed for flow extraction
- **Navigation Data:** `docs/data/mobile-app-navigation-flows.json`
- **User Flows:** `docs/data/mobile-app-user-flows-complete.json` (when comprehensive analysis is run)
- **Screen Relationships:** `docs/data/mobile-app-screen-relationships.json`

## Primary User Flows

### Flow 1: First-Time User Onboarding

**Goal:** Complete initial app setup and reach dashboard

**User Type:** New employee

**Steps:**
1. **Login Screen** (IMG_2655-2659)
   - User opens app
   - Enters email/phone and password
   - Taps "Login" button

2. **Workspace Selection** (IMG_2660)
   - If multiple workspaces: Select workspace
   - If single workspace: Auto-selected

3. **Onboarding Introduction** (IMG_2661-2662)
   - View app introduction screens
   - Swipe through onboarding slides
   - Tap "Let's go!" or "Next"

4. **Profile Onboarding** (IMG_2663)
   - Complete profile information
   - Set preferences
   - Tap "Done" or "Continue"

5. **Dashboard** (IMG_2664+)
   - Land on personalized dashboard
   - View greeting with name
   - See available features

**Success Criteria:** User reaches dashboard and can access features

**Alternative Paths:**
- Skip onboarding if already completed
- Return to login if credentials incorrect

### Flow 2: Daily Shift Check

**Goal:** Check today's and upcoming shifts

**User Type:** Employee

**Steps:**
1. **Dashboard** (IMG_2664)
   - Open app (auto-login if credentials saved)
   - View dashboard greeting
   - See calendar widget with today's date

2. **Shift Calendar** (IMG_2670)
   - Tap "Schichten" tab or calendar card
   - View weekly/monthly calendar
   - See shift blocks with times

3. **Shift Details** (IMG_2671-2672)
   - Tap specific shift
   - View details: time, location, work area, notes
   - See availability status

4. **Return to Dashboard**
   - Tap back button
   - Return to dashboard

**Success Criteria:** User views shift details and understands schedule

**Alternative Paths:**
- Filter by location or department
- Switch to list view instead of calendar
- View availability calendar

### Flow 3: Clock In for Shift

**Goal:** Start time tracking for assigned shift

**User Type:** Employee

**Steps:**
1. **Dashboard** (IMG_2664)
   - Open app
   - View dashboard
   - See "Start" button or shift countdown

2. **Time Tracking Interface** (IMG_2680-2682)
   - Tap "Zeiterfassung" tab or "Start" button
   - View shift countdown (if before start time)
   - See shift details: name, location, time

3. **Clock In** (IMG_2683-2685)
   - Tap "Starten" button when shift starts
   - Confirm clock in (if required)
   - View active time tracking status

4. **Active Tracking** (IMG_2686-2689)
   - See elapsed time
   - View break options
   - See "Beenden" (End) button

**Success Criteria:** User successfully clocks in and time tracking is active

**Error Recovery:**
- If GPS required: Enable location services
- If shift not found: Contact manager
- If network error: Retry when online

### Flow 4: Take Break During Shift

**Goal:** Record break time during active shift

**User Type:** Employee

**Steps:**
1. **Active Time Tracking** (IMG_2686-2689)
   - User is clocked in
   - View elapsed time
   - See break options

2. **Start Break** (IMG_2690)
   - Tap "Hold to start break" or break button
   - Confirm break start
   - View break timer

3. **End Break** (IMG_2691)
   - Tap "End break" button
   - Confirm break end
   - Return to active time tracking

4. **Continue Shift**
   - Time tracking resumes
   - Break time deducted from total

**Success Criteria:** Break is recorded and time tracking continues correctly

**Alternative Paths:**
- Multiple breaks during shift
- Skip break if not required

### Flow 5: Clock Out After Shift

**Goal:** End time tracking and complete shift

**User Type:** Employee

**Steps:**
1. **Active Time Tracking** (IMG_2686-2689)
   - User is clocked in
   - View elapsed time
   - Shift end time approaching

2. **Clock Out** (IMG_2692-2695)
   - Tap "Beenden" (End) button
   - Confirm clock out
   - View time entry summary

3. **Time Summary** (IMG_2695)
   - View total time worked
   - See break time deducted
   - View working time account

4. **Return to Dashboard**
   - Tap back or home
   - Return to dashboard
   - See next shift information

**Success Criteria:** Time tracking ends correctly and summary is displayed

**Error Recovery:**
- If clock out before shift end: Warning message, allow early clock out
- If time correction needed: Navigate to corrections

### Flow 6: Request Vacation

**Goal:** Submit vacation request

**User Type:** Employee

**Steps:**
1. **Dashboard** (IMG_2664)
   - Open app
   - View dashboard
   - See "Abwesenheiten" card

2. **Absences List** (IMG_2737)
   - Tap "Abwesenheiten" card or menu
   - View absence balance
   - See recent requests

3. **Absence Request Form** (IMG_2673-2674)
   - Tap "New Request" or "Request Absence"
   - Select start date
   - Select end date
   - Choose absence type (vacation, sick, etc.)
   - Mark half-days if applicable
   - Add notes (optional)
   - Attach documents (optional)

4. **Submit Request** (IMG_2674)
   - Review request details
   - Tap "Submit" or "Send"
   - View confirmation

5. **Request Status** (IMG_2737)
   - Return to absences list
   - See pending request
   - Track approval status

**Success Criteria:** Vacation request is submitted and user can track status

**Alternative Paths:**
- Quick request from dashboard card
- Edit pending request
- Cancel pending request

**Error Recovery:**
- If dates invalid: Show validation error
- If balance insufficient: Show warning
- If network error: Save draft, retry

### Flow 7: Complete HACCP Checklist

**Goal:** Complete temperature checks and compliance checklist

**User Type:** Employee

**Steps:**
1. **Dashboard** (IMG_2664)
   - Open app
   - View dashboard
   - See "Checklists" card with count

2. **Checklists List** (IMG_2733)
   - Tap "Checklists" card
   - View today's checklists
   - See HACCP checklist

3. **HACCP Checklist** (IMG_2691)
   - Tap HACCP checklist
   - View checklist items
   - See temperature check fields

4. **Complete Items** (IMG_2691)
   - Enter temperature readings
   - Take photos of displays (if required)
   - Complete each item

5. **Signature** (IMG_2691)
   - Sign checklist
   - Add employee signature
   - Submit checklist

6. **Confirmation** (IMG_2734)
   - View submission confirmation
   - See archived checklist
   - Return to list

**Success Criteria:** Checklist is completed and submitted successfully

**Alternative Paths:**
- Save draft and complete later
- View checklist archive
- Complete multiple checklists

### Flow 8: Upload Required Document

**Goal:** Upload required document (e.g., certificate)

**User Type:** Employee

**Steps:**
1. **Dashboard** (IMG_2664)
   - Open app
   - View dashboard
   - See "Documents" card with count

2. **Documents List** (IMG_2730-2731)
   - Tap "Documents" card
   - View required documents
   - See document status

3. **Document Upload** (IMG_2732)
   - Tap document to upload
   - Download template (if available)
   - Choose upload method (camera or gallery)

4. **Upload Process** (IMG_2732)
   - Take photo or select from gallery
   - Review document
   - Confirm upload

5. **Upload Status** (IMG_2731)
   - View upload confirmation
   - See verification status
   - Track document status

**Success Criteria:** Document is uploaded and verification status is visible

**Alternative Paths:**
- Upload multiple documents
- Replace existing document
- View document history

## Error Recovery Flows

### Network Error Recovery

**Scenario:** User action fails due to network error

**Recovery Flow:**
1. Show error message: "Network unavailable"
2. Save action locally (if possible)
3. Show retry option
4. Auto-retry when network restored
5. Show success message when completed

**Applied To:** All flows that require network (clock in/out, form submissions, uploads)

### Validation Error Recovery

**Scenario:** Form submission fails due to validation errors

**Recovery Flow:**
1. Highlight invalid fields
2. Show specific error messages
3. Prevent submission
4. Allow correction
5. Re-validate on correction

**Applied To:** Form submissions (absence requests, document uploads)

### Permission Error Recovery

**Scenario:** Action requires permission (GPS, camera, etc.)

**Recovery Flow:**
1. Show permission request
2. Explain why permission is needed
3. Provide instructions to enable
4. Re-check permission status
5. Continue when granted

**Applied To:** Time tracking (GPS), document uploads (camera), checklists (camera)

## Flow Variations

### Variation 1: User Role Differences

**Employee:**
- Full access to personal features
- Can request absences, apply for shifts
- Can complete assigned checklists

**Manager:**
- Additional approval workflows
- Can view team schedules
- Can approve requests

**HR/Admin:**
- Primarily web app access
- Can view all employee data
- Can manage documents and checklists

### Variation 2: First-Time vs. Returning User

**First-Time User:**
- Must complete onboarding
- See introduction screens
- Profile setup required

**Returning User:**
- Direct to dashboard
- Credentials saved (if enabled)
- Personalized dashboard

### Variation 3: Data State Variations

**No Shifts Assigned:**
- Dashboard shows "No shifts" message
- Calendar empty
- Different dashboard layout

**Pending Requests:**
- Dashboard highlights pending items
- Notifications for approvals
- Quick access to requests

**Active Shift:**
- Dashboard shows active time tracking
- Quick access to break options
- Shift countdown visible

## Flow Metrics

Based on screenshot analysis:

- **Total Screens:** 90
- **Primary Flows:** 8+ documented flows
- **Feature Areas:** 9 (login, dashboard, schichtplanung, zeiterfassung, abwesenheiten, checklists, documents, profile, other)
- **Average Flow Length:** 3-6 screens per flow
- **Navigation Patterns:** 4 main patterns (hub-and-spoke, linear, list-to-detail, modal)

## Related Documentation

- [mobile-app-documentation.md](mobile-app-documentation.md) – Main mobile app documentation
- [mobile-app-navigation.md](mobile-app-navigation.md) – Navigation flows
- [mobile-app-feature-relationships.md](mobile-app-feature-relationships.md) – Feature relationships
- [mobile-app-diagrams.md](mobile-app-diagrams.md) – Flow diagrams
