Workspace

Handbuch

Staff Manual

Version 2.0 β€’ Last Updated: April 18, 2026

Laundry Manager - Staff Manual

Version: 2.0
Last Updated: April 18, 2026


Table of Contents

  1. Introduction
  2. Getting Started
  3. Login & Authentication
  4. Roles & Permissions
  5. Dashboard
  6. Locations
  7. Items
  8. Stock Management
  9. Central Storage
  10. Order Planning
  11. Reservations
  12. Hostaway Integration
  13. iCal Integration
  14. Deliveries
  15. Delivery Suggestions
  16. Transactions
  17. Consumption Settings
  18. Rejected Items (Quality Returns)
  19. Common Workflows
  20. Troubleshooting

Introduction

The Laundry Manager is a web application for planning laundry deliveries to rental properties. It helps you:

  • Track stock levels at each location
  • Plan deliveries with suggested quantities
  • Sync reservations automatically from Hostaway and iCal feeds
  • Use reservations to predict consumption
  • Record rejected items (damaged, stained, worn)
  • Generate delivery lists for drivers

The system automatically calculates what each location needs based on current stock, upcoming reservations, and guest counts. Reservations are synchronized from property management platforms (Hostaway) and iCal feeds (Airbnb, Booking.com, etc.).


Getting Started

Accessing the Application

Open the Laundry Manager in your web browser. The application works on desktop and mobile devices.

The main navigation bar at the top includes:

Menu Item Purpose
Dashboard Overview of all locations and alerts
Deliveries Plan new deliveries
Orders Plan Tuesday orders for Thursday delivery
Reservations View synced reservations from Hostaway & iCal
Locations Manage property information
Items Manage the item catalog
Stock View and adjust current inventory
Consumption Configure consumption calculation settings
Transactions View delivery and usage history
Suggestions Auto-calculated delivery suggestions
Rejected Items Track items to return to supplier
Hostaway Hostaway integration settings (Admin only)

Dark Mode

Click the sun/moon icon in the top-right corner to toggle between light and dark mode.


Login & Authentication

You need to log in before you can use the Laundry Manager. All pages are protected β€” if you're not logged in, you'll be redirected to the login page automatically.

Login with E-Mail & Password

  1. Open the Laundry Manager in your browser
  2. Enter your E-Mail address and password
  3. Click "Anmelden" (Sign in)

If your credentials are correct, you'll be redirected to the Dashboard.

If you don't have a password or prefer a passwordless login:

  1. Enter your E-Mail address in the login form
  2. Click "Magic Link per E-Mail"
  3. Check your inbox for an email with a login link
  4. Click the link in the email β€” you'll be automatically authenticated and redirected

Tip: The Magic Link is a one-time-use link. If it expires, simply request a new one from the login page.

Confirmation Page

After clicking a Magic Link, you'll briefly see a confirmation page:

  • Success: A green checkmark appears and you're redirected to the Dashboard within 2 seconds
  • Error: A red icon with an error message appears β€” click "ZurΓΌck zum Login" (Back to Login) to try again

Session

Once logged in, your session stays active. You don't need to log in again every time you open the app. If your session expires, you'll be redirected to the login page.


Roles & Permissions

Each user account has a role that determines what they can do in the system. Roles follow a hierarchy β€” higher roles include all permissions of lower roles.

Role Hierarchy

Role Level Description
Driver Basic View deliveries, locations, items; mark stops as complete; record inventory & rejected items
Cleaner Extended Everything a Driver can do, plus view standard stock, units, beds, and bathrooms
Operations Management Full access to all features: deliveries, orders, reservations, stock, locations, consumption settings
Admin Full Everything, including user management and system configuration

Detailed Permissions

Feature Driver Cleaner Operations Admin
Dashboard βœ… View βœ… View βœ… View βœ… View
Deliveries βœ… View βœ… View βœ… Full βœ… Full
Mark stops complete βœ… βœ… βœ… βœ…
Locations & Attachments βœ… View βœ… View βœ… Full βœ… Full
Items βœ… View βœ… View βœ… Full βœ… Full
Current Stock βœ… View βœ… View βœ… Full βœ… Full
Standard Stock ❌ βœ… View βœ… Full βœ… Full
Stock Transactions βœ… Full βœ… Full βœ… Full βœ… Full
Rejected Items βœ… Full βœ… Full βœ… Full βœ… Full
Units / Beds / Bathrooms ❌ βœ… View βœ… Full βœ… Full
Orders ❌ ❌ βœ… Full βœ… Full
Consumption Settings ❌ ❌ βœ… Full βœ… Full
Reservations ❌ ❌ βœ… Full βœ… Full
Hostaway Integration ❌ ❌ ❌ βœ… Full
iCal Integration ❌ ❌ ❌ βœ… Full
Delivery Suggestions βœ… View βœ… View βœ… View βœ… View

How It Works

  • Your role is assigned by an administrator when your account is created
  • The system automatically checks your permissions on every page and action
  • If you try to access something you don't have permission for, you'll see a "Forbidden" error
  • Deactivated accounts are fully blocked β€” even with valid login credentials
  • Roles are hierarchical: each role includes all permissions of the roles below it

Account Status

Accounts can be active or deactivated:

  • Active: Normal access based on your role
  • Deactivated: No access at all β€” login is blocked with a "Forbidden" error

Note: If you can't log in but your credentials are correct, your account may have been deactivated. Contact your administrator.


Dashboard

The Dashboard is your daily starting point. It provides a compact overview of all locations and stock status.

Quick access buttons to the most common tasks:

  • Locations – Manage property information
  • Items – Manage the item catalog
  • Standard Stock – Set target quantities per location
  • Current Stock – View and adjust inventory
  • Transactions – View delivery and usage history
  • Suggestions – Auto-calculated delivery suggestions

Press ⌘K on Mac or Ctrl+K on Windows/Linux anywhere in the dashboard to open the global search palette.

  • Search spans Units, Locations, Contacts, Knowledge, and Keys
  • Results open the matching page directly and deep-link into structured tabs when possible
  • Contacts, keys, and knowledge entries are auto-highlighted briefly after navigation
  • Operational aliases such as WiFi/WLAN, Emergency/Notfall, Waste/MΓΌll, Parking/Parkplatz, and Key/SchlΓΌssel are understood even when the underlying records use normalized taxonomy values
  • Recent searches are stored locally on the current device for fast repeat lookups

Tip: Use quick search for urgent requests like WiFi, emergency phone numbers, parking instructions, or a key location when you do not want to click through several tabs first.

Quick Stats

  • Total Stock: Total items across all locations
  • Locations Tracked: Number of active locations
  • Items Tracked: Number of different item types
  • Transactions (7d): Activity in the last 7 days

Critical Locations

Locations with items below critical threshold are highlighted at the top. These need urgent attention.

Low Stock Warnings

The dashboard lists specific items that are running low, including:

  • Item name
  • Location name
  • Current quantity vs. threshold (e.g., "0 / 12")
  • Standard stock level

Location Status Badges

Each location shows a colored status badge:

Color Status Meaning
πŸ”΄ Red Critical Items below critical threshold - urgent delivery needed
🟑 Yellow Warning Items below warning threshold - schedule delivery soon
🟒 Green Healthy All items at or above standard levels

Recent Activity

Shows the latest stock movements (deliveries, usage, adjustments) with timestamps.


Locations

Locations represent the properties you deliver to (apartments, houses, etc.).

Location List

The Locations page shows all properties as cards with:

  • Location name
  • Address
  • Current stock status (colored badge)
  • Quick action buttons

Location Details

Click on a location to view/edit:

Basic Information

  • Name: Display name for the location
  • Address: Full street address
  • Access Code: Door/gate code for entry
  • Key Location: Where to find keys (e.g., "lockbox by door, code 1234")
  • Access Instructions: Special notes for drivers (e.g., "use side entrance", "ring bell twice")

Tip: Use the Access Instructions field for detailed directions that help drivers find entrances, parking spots, or key boxes.

Location Tabs

Each location detail page is split into dedicated tabs so operational data is easier to maintain:

  • Overview: Core profile data, attachments, access details, delivery-relevant notes
  • Contacts: People connected to the location such as owners, caretakers, emergency contacts, and neighbors
  • Keys: Physical keys, cards, fobs, and where they are stored
  • Knowledge: Reusable operational notes such as waste rules, parking guidance, WiFi information, and emergency instructions
  • Storage Areas: Named storage zones used by unit consumable standards
  • Units / Groups / iCal: Unit-specific inventory, grouping, and calendar sync settings

Contacts

Use the Contacts tab for structured people data instead of storing phone numbers in free-text notes.

  • Role: Choose the best matching role (Owner, Caretaker, Emergency, Maintenance, etc.)
  • Phone: Stored in international format after validation
  • Email: Must be a valid email address
  • Notes: Required when role is Other, and useful for availability or escalation details

If a phone number or email already exists for the same location, the app blocks the duplicate and offers a shortcut to the existing contact.

Keys

Use the Keys tab to document every access item and its storage location.

  • Track label, type, quantity, unit scope, and storage location separately
  • Sensitive storage details such as a lockbox code can be hidden with the reveal/copy secret field
  • Duplicate labels within one location are blocked to keep the inventory clean

Knowledge

Use the Knowledge tab for operational instructions that should stay structured and searchable.

  • Pick a category such as Waste, Parking, WiFi, Rules, Emergency, or Appliances
  • Guest-visible entries show a warning before saving
  • Pinned entries stay at the top of the table for faster access
  • Content must be detailed enough to be useful; very short notes are rejected

Storage Areas

Use the Storage Areas tab to define named storage zones like cellar shelves, laundry closets, or key cabinets.

  • These areas are then selectable inside unit consumable standards
  • Only one active default consumables storage area is allowed per scope: one location-wide default or one default per unit
  • Maintenance of storage areas no longer happens inside the unit detail form

Unit Consumables

Consumable standards are maintained inside the relevant unit detail page.

  • Each item can exist only once per unit
  • Minimum quantity must be less than or equal to standard quantity
  • Storage areas are selected from the location-wide list managed in the Storage Areas tab

Attachments

Locations can have file attachments β€” photos, PDFs, or documents that help staff and drivers (e.g., key box photos, access maps, cellar entry instructions).

Adding Attachments:

  1. Open a location's edit view
  2. Go to the Attachments section
  3. Click "Upload" to add a file (images or PDFs)
  4. Add a title or description for the attachment
  5. Save

Managing Attachments:

  • Reorder: Drag and drop attachments to change their display order
  • Edit: Update the title or description of an existing attachment
  • Delete: Remove attachments that are no longer needed

Viewing During Deliveries: When a driver opens a delivery stop, any attachments for that location are shown directly in the stop modal. This is useful for:

  • Photos of key boxes or lockboxes
  • PDF maps showing parking or entry points
  • Instructions that are easier to show than describe

Archiving vs. Deleting Records

Locations, units, contacts, keys, knowledge entries, storage areas, beds, bathrooms, and consumable standards now support two different destructive actions:

  • Archive: Use this when the record should disappear from day-to-day lists but may still be needed for history, reservations, or later recovery. Archived records can be restored.
  • Delete permanently: Use this only when the record is wrong and should be removed forever. Permanent deletion is restricted to Admins and is blocked automatically when there are still linked records such as reservations or stock history.

If the delete dialog tells you that deletion is blocked, choose Archive instead. This is the normal path for properties or units that should no longer be used operationally but still have historical data attached.

Tip: Upload a photo of the key box or entrance for each location β€” this saves drivers a lot of time on their first visit.

Office vs Storage vs Direct Supplier

The system separates three operational roles that can otherwise look similar:

  • Office is the staging hub for emergency laundry, consumables, and special dispatches. Use Office Ops to create a special dispatch, add photos, choose the target location and date, then attach it to a matching stop from the plan board. Dispatches move through staged, planned, in transit, and delivered states; the delivered button in Office Ops is the temporary Slice 2 close-out path until driver stop completion handles it in the Field App.
  • Storage is the central stock source for normal delivery planning. Use Central Storage and the Storage page for stock-on-hand and order-to-storage work. Special dispatches should not be used as a replacement for normal storage replenishment.
  • Direct Supplier locations receive laundry outside the central-storage delivery flow. Their location and Supply Profile pages show a direct-supplier banner so staff know that laundry quantities are order-tracking only, while consumable storage still follows the normal supply-profile process.

On a location's Supply Profile tab, use Log count on a consumable row when Ops has checked, restocked, adjusted, or found missing supplies. These logs are append-only. They update the "Last counted" and "Gap" columns without changing stock quantities directly.

Units

For multi-unit properties (e.g., apartment buildings), each unit can be configured separately:

  • Unit Name: Apartment number or identifier
  • Bedrooms: Number and configuration of beds
  • Bathrooms: Number and configuration of bathrooms
  • Active Status: Toggle to temporarily disable units
Urgent Info Panel

Every unit detail page now starts with an Urgent info panel above the tabs.

  • Key: Primary key label and storage location, with one-click copy
  • WiFi: SSID plus masked password, with reveal-on-hover / hold and copy support
  • Emergency: Fast access to the emergency contact or owner fallback
  • Waste / Parking: Pinned knowledge entries for the two most common on-site questions
  • Missing information shows a direct Add action so you can fill the gap immediately
Bed Configuration

For each bedroom:

  • Bed type (Single, Double, Queen, King)
  • Sheet size
  • Pillows per side
  • Room name (optional)
Bathroom Configuration

For each bathroom:

  • Has bathtub (yes/no)
  • Has shower (yes/no)
  • Small towel count
  • Bathroom name (optional)

Adding a New Location

  1. Click "New Location"
  2. Enter the location name and address
  3. Add access information (codes, keys, instructions)
  4. Save the location
  5. Add units if it's a multi-unit property
  6. Configure beds and bathrooms for each unit

Items

Items are the products you deliver (sheets, towels, etc.).

Item List

Shows all items with:

  • Item name
  • Category
  • Current total stock across all locations

Item Categories

Items are organized by category for easier management:

  • Bed Linen: Sheets, pillowcases, duvet covers
  • Towels: Bath towels, hand towels, face cloths
  • Kitchen: Tea towels, oven mitts
  • Bathroom: Bath mats, shower curtains
  • Other: Miscellaneous items

Adding a New Item

  1. Click "New Item"
  2. Enter the item name
  3. Select a category
  4. Add any notes (e.g., size, color, material)
  5. Save

Stock Management

Standard Stock Settings

Before tracking stock, configure target levels for each location:

  1. Go to Stock page
  2. Select a location from the dropdown
  3. For each item, set:
    • Standard Quantity: Target amount to keep in stock
    • Warning Threshold (Yellow): Alert when stock drops below this level
    • Critical Threshold (Red): Urgent alert when stock drops below this level
  4. Click Save for each item

Example: For Bath Towels at an apartment, you might set:

  • Standard Quantity: 12
  • Warning Threshold: 6 (yellow alert if below 6)
  • Critical Threshold: 3 (red alert if below 3)

Current Stock

The Stock page shows inventory levels at each location:

  • Location: Property name
  • Item: Product type
  • Quantity: Current count
  • Status: Critical (πŸ”΄), Warning (🟑), or Healthy (🟒)

Adjusting Stock

To correct inventory after a manual count:

  1. Find the location and item
  2. Click "Adjust"
  3. Enter the new quantity
  4. Select a reason:
    • Inventory Count: Regular stocktake
    • Found Extra: Discovered additional items
    • Missing: Items unaccounted for
    • Damaged: Items removed due to damage
    • Other: Custom reason
  5. Add notes if needed
  6. Save

Bulk Stock Update

For larger inventory updates:

  1. Go to the Stock page
  2. Click "Bulk Update"
  3. Select the location
  4. Enter quantities for multiple items at once
  5. Save all changes

Central Storage

All laundry arrives at Central Storage first, and then gets delivered to apartment locations.

What is Central Storage?

Central Storage is the β€œmain inventory location” (e.g. office/storage). It is used to:

  • Track how much laundry you have available overall
  • Plan Tuesday orders for Thursday delivery
  • Serve as the source for daily delivery routes

Key Rules

  • There can be only one Central Storage location.
  • Central Storage is shown first on the Stock page.
  • When a delivery stop is marked complete, items are automatically deducted from Central Storage.
  • Storage stock can go negative if you deliver more than you have recorded (this helps track shortages accurately).

Setting Central Storage

  1. Go to Locations
  2. Create or edit the storage location (e.g. "Office/Storage")
  3. Mark it as Storage location

Order Planning

Use Orders to plan the weekly laundry order.

Weekly Workflow

  • Tuesday: Create an order for Thursday delivery (same week)
  • Thursday: Mark the order as delivered (stock is updated in storage)

Creating a New Order

  1. Go to Orders
  2. Click New Order
  3. Confirm:
    • Order date (Tuesday)
    • Expected delivery (Thursday)
  4. Review the suggested quantities
  5. Adjust quantities if needed
  6. Set status to Submitted

Adding Items to an Order

When editing a draft order:

  1. Click on an item button in the "Add more items" section
  2. The item appears immediately in the list with a "New" badge
  3. Enter the quantity you want to order
  4. Click "Save Items" to confirm your changes
  5. Use the X button to remove an item before saving

Tip: Click "Apply Suggestions" to automatically add all suggested items with their recommended quantities.

Order Suggestions

Order suggestions are calculated based on:

  • Current stock in Central Storage
  • Aggregated needs across all locations
  • Standard stock targets and thresholds

Marking Delivered

When the supplier delivery arrives:

  1. Open the order
  2. Set status to Delivered
  3. Update storage stock counts if needed (via Stock page)

Reservations

Reservations are guest stays at locations, synchronized automatically from Hostaway and iCal feeds. They drive consumption calculations and delivery suggestions.

Reservations List

The Reservations page shows all synced reservations with:

  • Guest name
  • Location
  • Check-in and check-out dates
  • Number of guests
  • Source badge (Hostaway, iCal, or Manual)
  • Status (confirmed, cancelled, inquiry, etc.)

Source Badges

Each reservation shows where it came from:

Badge Source Description
Hostaway Hostaway API Synced from Hostaway property management
iCal iCal feed Synced from Airbnb, Booking.com, VRBO, or other iCal feeds
Manual Manual entry Manually created in the system

Filtering Reservations

Filter by:

  • Date range (from / to)
  • Location
  • Status (confirmed, cancelled, inquiry, etc.)
  • Source (Hostaway, iCal, Manual)

Guest Count for iCal Reservations

iCal feeds do not include guest counts. For iCal reservations:

  • A "Guests missing" warning is shown
  • Click the guest count field to enter the number manually
  • This is important for accurate consumption calculations

Tip: Check iCal reservations regularly and add guest counts as soon as new reservations come in. Without guest counts, the system cannot calculate correct laundry quantities.


Hostaway Integration

Admin only: The Hostaway integration page is only visible and accessible to Admin users.

Hostaway is the property management system that manages listings across platforms (Airbnb, Booking.com, etc.). The integration syncs reservations automatically.

Connection Status

Go to Integrations β†’ Hostaway to see:

  • Connection status: Whether the Hostaway API is connected
  • Listings count: Number of properties in Hostaway
  • Last sync: When reservations were last synchronized
  • Sync status: Running, completed, or failed

Location Mapping

Before reservations can sync correctly, Hostaway listings must be mapped to locations in the system. The mapping page shows three categories:

Category Badge Meaning
Mapped 🟒 Confirmed Listing is linked to a location β€” reservations sync automatically
Suggested 🟑 Pending System found a likely match based on name/address β€” review and accept or reject
Unmapped βšͺ Unmapped No match found β€” import as new location or manually map

Importing a Listing

For single-unit properties (one apartment = one Hostaway listing):

  1. Find the unmapped listing
  2. Click "Import"
  3. The system creates a new location with a default unit
  4. The listing is automatically mapped

For multi-unit properties (multiple apartments at one address):

  1. First, create the location manually in Locations
  2. Add the individual units (e.g., "Apartment 1", "Apartment 2")
  3. Return to the Hostaway mapping page
  4. Click "Select Location" on each listing
  5. Choose the location and the specific unit to map to

Import All

Click "Import All" to import all unmapped listings at once. Each listing becomes a new location with a default "Main Unit". Use this for bulk setup when most properties are single-unit.

Unlinking

To remove a mapping:

  1. Find the mapped listing
  2. Click "Unlink"
  3. The listing becomes unmapped again

Note: Unlinking does not delete the location or its reservations β€” it only breaks the sync connection.

Reservation Sync

Once listings are mapped, reservations sync automatically:

  • Hourly sync: All reservations are refreshed every hour
  • Webhook sync: New/updated reservations are pushed in real-time by Hostaway

The sync stores essential reservation data:

  • Check-in/out dates and times
  • Guest name and count
  • Door codes and access links
  • Channel information (Airbnb, Booking.com, Direct, etc.)
  • Booking status and confirmation codes

iCal Integration

Admin only: iCal configuration is only accessible to Admin users.

For properties not managed through Hostaway (e.g., listed only on Airbnb or Booking.com), reservations can be synced via iCal feeds. Each platform provides an iCal export URL.

Setting Up iCal for a Location

  1. Go to Locations and open the location
  2. Click the iCal tab
  3. Enter the iCal feed URL from your booking platform:
    • Airbnb: Go to Calendar β†’ Export Calendar β†’ copy the link
    • Booking.com: Go to Property β†’ Calendar β†’ Export β†’ copy the iCal link
    • VRBO: Go to Calendar β†’ Import/Export β†’ copy the iCal URL
  4. Toggle "Sync enabled" on
  5. Click "Save"
  6. Optionally click "Sync Now" to immediately fetch reservations

How iCal Sync Works

  • Automatic polling: All active iCal feeds are fetched every 30 minutes
  • Deduplication: Each reservation has a unique ID (UID) β€” no duplicates are created
  • Status mapping: CONFIRMED β†’ confirmed, CANCELLED β†’ cancelled

iCal Limitations

iCal is a simple calendar format. Compared to Hostaway, it has limitations:

Feature Hostaway iCal
Guest name βœ… Full name ⚠️ Often just first name or "Reserved"
Guest count βœ… Included ❌ Not available β€” must be entered manually
Phone/email βœ… When available ❌ Not included
Door codes βœ… Included ❌ Not included
Channel info βœ… Airbnb/Booking/Direct ❌ Not included
Real-time sync βœ… Via webhooks ❌ Polling only (every 30 min)

Important: Always add guest counts manually for iCal reservations. Without them, consumption calculations will be inaccurate.


Deliveries

Plan and track laundry deliveries to locations.

Deliveries Overview

Go to Deliveries to see all past and current deliveries:

  • Filter by status: Use the buttons to filter by All, Draft, In Progress, or Completed
  • Each delivery shows: Date, driver name, status badge, number of stops, total items
  • Click any delivery to view its route details
  • Edit/Delete: Modify or remove deliveries (only available for non-completed deliveries)
  • New Delivery button to create a new delivery

This is your archive for all deliveriesβ€”use it to review past routes, check what was delivered, or find a specific delivery.

Tip: Use the status filter to quickly find deliveries that need attention (Draft or In Progress) or to review completed routes.

Creating a New Delivery

  1. Go to Deliveries β†’ New

  2. Select the delivery date

  3. Choose the driver (optional)

  4. Add stops to the delivery (a stop can be more than just delivering laundry):

    Stop types:

    • Delivery (πŸ“¦): deliver laundry items to a location
    • Pickup (πŸ“₯): pick something up at a location (no item quantities)
    • Maintenance (πŸ”§): fix/check something at a location
    • Other (πŸ“): any other task (location optional)

    For Delivery stops:

    • System shows Suggested Delivery Locations based on stock levels and reservations
    • Adjust quantities as needed
    • Adding non-suggested locations: Use the "Add other location" dropdown below the suggestions to include any locationβ€”even if stock levels don't indicate urgency (e.g., you're in the area anyway, need to drop something off)

    For non-delivery stops:

    • Add a short description (what to do there)

    Driver instructions:

    • If a location has attachments (images/PDFs), drivers can open them from the stop modal (e.g. key box photos, cellar access PDFs).
  5. Review the delivery summary

  6. Save the delivery

Reordering Stops

You can reorder stops in two ways:

  1. Drag and Drop: Click and drag a stop to a new position in the list
  2. Keyboard Controls: Use the arrow buttons (↑/↓) next to each stop to move it up or down

Note: Reordering is only available for deliveries that are not yet completed. Once a delivery is marked as completed, the stop order is locked.

Editing or Deleting a Delivery

From the Deliveries list:

  • Click on a delivery to view details
  • Use the Edit button to modify stops, quantities, or driver
  • Use the Delete button to remove a delivery (only if not completed)

Important: Completed deliveries cannot be edited or deleted. This ensures accurate historical records and stock tracking.

Delivery Workflow

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚    DRAFT     β”‚ ──► β”‚  IN PROGRESS β”‚ ──► β”‚  COMPLETED   β”‚
β”‚              β”‚     β”‚              β”‚     β”‚              β”‚
β”‚ Delivery     β”‚     β”‚ Driver on    β”‚     β”‚ All stops    β”‚
β”‚ created      β”‚     β”‚ route        β”‚     β”‚ done (locked)β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Delivery Details

Each delivery shows:

  • Date and driver
  • List of stops (with stop type)
  • Items per stop with quantities (for Delivery stops)
  • Description (for Pickup/Maintenance/Other stops)
  • Location attachments (images/PDFs) if available
  • Completion status per stop

Marking Stops Complete

As the driver completes each stop:

  1. Open the delivery
  2. Find the location
  3. Click "Mark Complete"
  4. Stock levels are automatically updated:
    • Destination location: Stock increases by the delivered quantity
    • Central Storage: Stock decreases by the same quantity (automatic deduction)

Note: If Central Storage is not configured, only the destination stock is updated. The system will log a warning but continue normally.


Delivery Suggestions

The system automatically calculates what each location needs.

Two Views

On the Suggestions page you can switch between:

  1. Order to Storage

    • Aggregates needs across all locations
    • Shows what should be ordered/delivered into Central Storage
    • Includes a shortcut to Create Order
  2. Deliver to Locations

    • Shows per-location delivery needs
    • Helps plan daily driver routes

How Suggestions Work

The algorithm considers:

  1. Current stock levels (per location and in storage)
  2. Standard stock targets (what should be there)
  3. Upcoming reservations and guest counts
  4. Consumption patterns based on settings

Using Suggestions

  • For weekly purchasing (Tuesday): use Order to Storage β†’ Create Order
  • For daily tours: use Deliver to Locations β†’ plan deliveries for the driver

If Central Storage is not configured, the Order-to-Storage view will show a warning.


Transactions

Transactions record all stock movements.

Transaction Types

Type Description
Delivery Items delivered to a location (increases stock)
Usage Items consumed/removed (decreases stock)
Adjustment Manual inventory correction (increase or decrease)

Viewing Transactions

The Transactions page shows:

  • Date and time
  • Location
  • Item
  • Quantity (+/-)
  • Type
  • Notes

Filtering Transactions

Filter by:

  • Location
  • Item
  • Transaction type
  • Date range

Consumption Settings

Configure how the system calculates item needs.

Consumption Modes

Each location can use one of three modes:

Mode How It Works
Reservation-Based Calculates based on actual guest count from reservations
Fixed Guests Uses a fixed guest count (e.g., always prepare for 4 guests)
Max Guests Uses maximum capacity of the unit

Setting Consumption Mode

  1. Go to Consumption
  2. Find the location
  3. Select the preferred mode
  4. If using "Fixed Guests", enter the number
  5. Save

Item Consumption Rules

Configure how many items are needed:

  • Per Guest: Items multiplied by guest count (e.g., 1 towel per guest)
  • Per Bed: Sheets are linked on each bed (see Bed Sheet Linking) and counted 1Γ— per bed
  • Per Bathroom: Items based on bathroom count (e.g., 1 bath mat per bathroom)
  • Fixed: Same quantity regardless of guests (e.g., 1 doormat)

Unit Settings (v2)

Each unit has additional settings that affect consumption:

Setting Description Default
Pillows per Guest Number of pillows prepared per guest (affects pillowcase count) 2

Bed Sheet Linking (v2)

When creating or editing a bed, you can link it to a specific sheet item:

  1. Go to the Unit configuration
  2. Add or edit a bed
  3. Select the Sheet Item from the dropdown (shows only sheet/linen items)
  4. Save

This enables accurate per-bed sheet consumption: exactly 1 of the linked sheet per bed.

Estimated Bags

The system now estimates laundry bags needed based on duvet covers:

  • Formula: ceil(duvet_covers Γ· 4)
  • This is shown as an estimate in consumption previews

Rejected Items (Quality Returns)

Track items received from the laundry supplier that don't meet quality standards. These items should be returned to the supplier.

Important: Rejected items are NOT items we need to buy/replace. They are items the laundry company delivered to us that are unfit for use. Recording them helps:

  • Track what to return to the supplier
  • Explain why stock levels are lower than expected
  • Document quality issues with the laundry service

Recording Rejected Items

When you receive laundry that doesn't meet standards:

  1. Go to Rejected Items
  2. Click "Record Rejected Items"
  3. Select the location (usually the storage/office where delivery arrived)
  4. For each item:
    • Select the item type
    • Enter quantity
    • Select reason:
      • Damaged: Torn, broken, holes
      • Stained: Permanent stains that weren't removed
      • Worn: Excessive wear and tear
    • Optionally add a photo as evidence
    • Add notes if needed
  5. Save

Process Later Flag

For items needing review before final decision:

  1. Check "Process Later" when recording
  2. Items appear in a separate list for review
  3. Come back later to make final decision (accept or return)

Returning Items to Supplier

After recording rejected items:

  1. Set aside the physical items for return
  2. Use the Export CSV feature to generate a return list
  3. Include the list with items when supplier picks up or you drop off
  4. Mark items as "Processed" once returned

CSV Export

Export rejected items data for reporting:

  1. Go to Rejected Items
  2. Click "Export CSV"
  3. Select filters (date range, location, item type)
  4. Download the file

Common Workflows

Morning Routine

  1. Check Dashboard for critical locations (red badges)
  2. Review Suggestions for delivery priorities
  3. Create Delivery for the day
  4. Print/share delivery list with driver

After Delivery Returns

  1. Driver marks stops as complete
  2. Record any rejected items (red bag)
  3. Verify stock levels if discrepancies

Weekly Inventory Check

  1. Visit each location (or coordinate with cleaners)
  2. Count actual stock
  3. Go to Stock β†’ Adjust for any corrections
  4. Note reasons for discrepancies

End of Month

  1. Export Transactions for the month
  2. Review Rejected Items report
  3. Export rejected items list for supplier reconciliation
  4. Verify returns have been credited by supplier

Troubleshooting

Stock Numbers Don't Match Reality

  1. Go to the location's Stock page
  2. Click "Adjust" on the incorrect item
  3. Enter the correct count
  4. Select reason "Inventory Count"
  5. Add notes about the discrepancy

Reservation Not Showing

  1. Verify the reservation dates are correct
  2. Check if the correct unit is selected
  3. Make sure the location is active

Delivery Suggestions Seem Wrong

  1. Verify current stock levels are accurate
  2. Check consumption mode settings for the location
  3. Review upcoming reservations and guest counts
  4. Adjust standard stock levels if needed

System Running Slow

  1. Try refreshing the page
  2. Clear browser cache
  3. Check internet connection
  4. Contact IT support if issues persist

Quick Reference

Keyboard Shortcuts

Shortcut Action
Ctrl/Cmd + K Quick search
Escape Close modal/dialog
↑ / ↓ buttons Reorder stops in delivery builder

Status Colors

Color Meaning
πŸ”΄ Red Critical - Immediate action needed
🟑 Yellow Warning - Plan action soon
🟒 Green OK - No action needed
πŸ”΅ Blue Information
βšͺ Gray Inactive/Disabled

Contact

For technical issues or feature requests, contact your system administrator.

DSGVO Audit Anonymization

If a confirmed deletion/anonymization request affects audit content, use the dashboard workspace script in dry-run mode first:

  1. pnpm --filter @ops/dashboard anonymize-audit -- --table=<table> --record-id=<id>
  2. Or match by internal user record: pnpm --filter @ops/dashboard anonymize-audit -- --user-id=<id>
  3. Re-run with --apply only after verifying the reported matches.

The script preserves timestamps, diff keys and actor metadata, but replaces before_json and after_json with an anonymized marker.


End of Staff Manual