User Guide
Operational guide for the Watch Inventory Management System — follow along while you work.
| Timezone | Asia/Kuala_Lumpur (MYT, GMT+8) |
| Currency | MYR (Malaysian Ringgit) |
| Date Format | DD/MM/YYYY |
| Time Format | 24-hour (e.g., 14:30) |
Table of Contents
- Getting Started
- System Setup (Admin)
- Generating QR Codes
- Receiving Watches
- Receiving Accessories
- Quality Control
- Dispatching to a Customer
- Dispatching for Internal Use
- Creating & Managing Orders
- Processing Returns
- Managing Repairs
- Working with Accessories (Linking, Unlinking)
- Browsing Watch Inventory
- Browsing Accessory Inventory
- Viewing Item Profiles
- Managing Customers
- Reports
- Dashboard
- Global Search & Alerts
- Glossary
1. Getting Started
First-Time Login
- Open the system URL in your browser.
- Enter your Email and Password.
- Click Sign In.
- System redirects to the Dashboard.
What can go wrong
Forgot Password
- Click "Forgot Password?" on the login page.
- Enter your registered email address.
- Click "Send Reset Link".
- Check your email inbox for a reset link and follow the instructions.
Session Timeout
Navigation
The sidebar on the left contains all navigation links. What you see depends on your role:
| Role | Sidebar Sections Visible |
|---|---|
| Admin | Everything, including Configuration. |
| Operator | Everything except Configuration. |
| Technician | Dashboard (view only), Watch List (view only), Repairs, and Logout. |
- Sidebar toggle — Click the collapse/expand button. Your preference persists across sessions.
- Mobile — Tap the hamburger menu icon to open. Swipe left to close.
- Global search bar — At the top of the sidebar. Searches across watches, accessories, invoices, and QR codes.
- Alert bell (Admin/Operator only) — Shows overdue repairs and low-stock warnings with an unread badge count.
2. System Setup (Admin Only) Admin
Step 1: Add Models
Configuration > Models & Colours tab.
- Click "+ Add Model".
- Enter Name (e.g., "Forrest Walnut Brown") and Code (short code used in QR codes, e.g., "FWB").
- Click Save.
Step 2: Add Colours per Model
- Select a model from the dropdown at the top of the Models & Colours tab.
- Click "+ Add Colour".
- Enter Name (e.g., "Midnight Blue"), Code (e.g., "02"), and Default Price (MYR).
- Click Save.
Step 3: Add Categories (for Accessories)
Configuration > Categories tab.
- Click "+ Add Category".
- Enter Name, Code.
- Optionally select a Parent category to create a hierarchy (e.g., "Leather Strap" under "Straps").
- Toggle "Has Colour Variants" if this category needs colour options (e.g., straps come in different colours).
- Set Reorder Point if you want low-stock alerts for quantity-tracked items in this category.
- Click Save.
Step 4: Add Couriers
Configuration > Couriers tab.
- Click "+ Add".
- Enter Name and Default Shipping Price (MYR).
- Click Save.
Step 5: Add Payment Providers
Configuration > Providers tab.
- Click "+ Add".
- Enter Name (e.g., "Stripe", "PayPal").
- Click Save.
Step 6: Add Payment Methods
Configuration > Payment Methods tab.
- Click "+ Add".
- Enter Name (e.g., "Credit Card", "Bank Transfer").
- Select Fee Type:
• MDR — Percentage fee (e.g., 1.5%). System auto-calculates gateway fees on each payment. MDR value must be between 0 and 100.
• Flat Rate — Fixed fee per transaction (e.g., RM 1.00). Must be ≥ 0.
• None — No fee applied.
- Select Provider (from Step 5).
- Click Save.
Step 7: Add Technicians
Configuration > Technicians tab.
- Click "+ Add".
- Enter Name.
- Choose type:
• Registered — Creates a login account for the technician. They can log in and see their repairs. Enter email (required).
• Unregistered — Record-only. Used for external technicians who do not need system access.
- Click Save.
Step 8: Add Users
Configuration > Users tab.
- Click "+ Add User".
- Enter Name, Email, and select Role (Admin / Operator / Technician).
- Click Save — system creates an authentication account and sends login credentials.
Reset password: Click Reset next to a user → confirmation dialog → system sends a password reset email to the user.
Audit Log Tab
View all system changes. Filter by Entity Type, Action, User, Date Range. Export to CSV. Click any row to see field-level changes (old → new values).
3. Generating QR Codes
For Watches
Sidebar > QR Generator > Watch QR tab.
- Select Model (required).
- Select Colour (required) — options filter based on the selected model.
- Model Code and Colour Code auto-fill (read-only). If these are blank, codes have not been set.
- Enter Start Number and End Number for the range.
- Format Preview shows the pattern (e.g., FWB_02_001).
- Click Generate QR Codes.
Download PDF Labels
Click the download button on a batch to create a PDF with QR code labels (35 per page in a 5x7 grid). File: qr-labels-[batchid].pdf.
Editing a Batch
You can change the range of an existing batch, but you cannot remove codes that are already assigned to watches.
Deleting a Batch
For Accessories
QR Generator > Accessory QR tab. Same flow: select Type > Category > optional Colour. Format uses 4-digit padding (e.g., TYPE_CATG_0001).
4. Receiving Watches
Sidebar > Receive > Watch tab.
Normal Flow (Single Watch)
- Select Model (required).
- Select Colour (required) — filters by the selected model.
- Date Received (required) — defaults to today. Cannot be a future date.
- Select QR Code (required) — dropdown shows available (unused) codes for this model/colour.
- If the dropdown is empty, no QR codes exist. Go to QR Generator first (Section 3).
- Click the refresh button to reload the list. System shows: "QR code list refreshed".
- Select QC Status: PENDING (default), PASS, or REJECT.
- Enter Remarks (optional unless QC = REJECT).
- Click Save Watch.
Bulk Receive (Multiple Watches)
- Fill in Model, Colour, Date Received as above.
- Check the Bulk Entry checkbox.
- Range selectors appear: select From and To QR codes.
- Preview shows count: "X items will be created (START to END)".
- If Start > End, a red warning appears.
- Select QC Status (applies to all items in the range).
- Click Save Watch.
Quick Scan Mode (Rapid Intake)
- Click the Quick Scan Mode button.
- A modal opens with a camera feed and statistics (Success / Skipped / Failed counts).
- Select QC Status (default PASS) — you can change this anytime during scanning.
- Scan QR codes continuously:
- Code found & available → auto-receives the watch. Green checkmark; success count increases.
- Code already assigned → "Already received" (grey; skipped count increases).
- Code not found → "Not found in system" (red; failed count increases).
- Close the modal when done.
Editing an Existing Watch
Scan or search a QR code that is already assigned → opens in edit mode.
- Title changes to "Edit Watch".
- Locked fields (read-only): Model, Colour, QR Code, Date Received.
- Editable fields: QC Status, Remarks.
- A Repair & Return History card appears below with:
- "+ Send to Repair" — opens a repair form (Technician required, Start Date defaults to today, Target End Date auto-calculates 14 working days, Problem optional).
- "Process Customer Return" — switches to Return tab with QR pre-filled.
Tab Switch Warning
• Confirm → Changes are discarded, tab switches.
• Cancel → You stay on the current tab.
5. Receiving Accessories
Sidebar > Receive > Accessory tab.
Single Item (QR-Tracked)
- Select Type (required) — top-level category.
- Select Category (required) — filters by Type.
- Select Colour — only appears if the category supports colour variants.
- Date Received (required).
- Select QR Code (required) — from available codes for this category.
- Optional fields: Name, SKU, Location, Selling Price, Description.
- "Item arrived broken/damaged" checkbox — auto-sets QC to REJECT and status to Broken.
- Click Receive Item.
What can go wrong
Range Entry (Multiple QR-Tracked Items)
- Select the "Add multiple items using range (QR tracked)" radio button.
- Fill Type, Category, Colour, Date Received as above.
- Select From and To QR codes from the dropdowns.
- Fill optional fields (Name, SKU, Location, Selling Price) — these apply to all items in the range.
- Click Receive Item.
Bulk Quantity Entry
- Select the "Add bulk item (quantity tracked)" radio button.
- Fill Type, Category.
- Enter Quantity Received and Unit (default "pcs").
- Optionally set a Reorder Point — the system triggers low-stock alerts when stock falls to this level.
- Fill Name, SKU, Location.
- Click Receive Item.
Quick Search
Scan or enter a QR code in the search bar at the top of the tab:
• Found & valid → Auto-fills Type/Category/Colour. Message: "QR [code] - Type/Category/Colour pre-selected."
• Found but already assigned → Opens in edit mode to modify the existing item.
• Not found → "QR code not found. Make sure it was generated in the Inventory QR Generator."
6. Quality Control
QC Status Rules
| Status | Meaning | Rules |
|---|---|---|
| PENDING | Awaiting inspection | Default for newly received items. |
| PASS | Approved for sale/dispatch | Required before dispatching. |
| REJECT | Failed inspection | Remarks are required. Cannot dispatch. |
Where to Perform QC
During Stock-In (Receive page)
Set QC Status when receiving a watch or accessory. Choose PENDING (default), PASS, or REJECT.
From Watch List (Bulk QC)
- Sidebar > Watch List > All Items tab.
- Select items via checkboxes.
- Click the bulk action dropdown > Bulk Edit QC Status.
- Select new QC Status (PASS or REJECT).
- If REJECT: enter Remarks (required).
- Confirm.
From Item Profile
- Open any item's profile (click on a QR code in any list).
- Click the Update QC button.
- Select PASS or REJECT, add Remarks if REJECT.
- Save.
7. Dispatching to a Customer
Sidebar > Dispatch.
Step 1: Find Item
Select an item from the dropdown or scan its QR code. The system validates the item immediately:
Step 2: Add More Items (Optional)
Click "+ Add Another Item" to add additional watches/accessories to the same dispatch. A running Order Total (MYR) is shown.
Step 3: Select Dispatch Reason
The Dispatch Details form appears. Select Dispatch Reason: "Customer Delivery / Sale".
Step 4: Date and Time
Auto-filled with today's date and current time. Adjust if dispatching for a different date/time.
Step 5: Order Information
Enter the Invoice Number manually, or type a WooCommerce invoice (FW + digits) and click Fetch Order.
• Success → "Order data loaded from WooCommerce" — auto-fills customer, address, prices, courier, payment method, tracking.
• Format wrong → "Enter an invoice number first (e.g. FW383908)".
• Not found → API error message displayed.
• Payment method not matched → "Payment method '[code]' not matched — pick one on the new payment row." Select manually.
• Courier not matched → "Courier '[name]' not matched — please select manually."
• Duplicate → "Invoice number '[no]' already exists."
Step 6: Customer Details
Fill in: Name (required), Phone, Email, Billing Address, Shipping Address.
Step 7: Payments
Click "+ Add Payment" for each payment tranche.
- Fill: Remark, Amount (MYR), Shipping, Provider, Method. Mark one row as Primary.
- "Auto-balance last row" — fills the remaining amount automatically.
Step 8: Shipping
Select Delivery Method (required).
• Self-pickup courier → Tracking number field is hidden.
• Regular courier → Tracking Number (required) and Delivery Cost (MYR, internal cost to courier) are shown.
Step 9: Additional Charges (Optional)
Click "+ Add Charge" for extras (e.g., engraving, gift wrapping). Enter description and amount.
Step 10: Process Dispatch
- Click Process Dispatch.
- Confirmation modal shows a summary: items, customer, payments, courier. Review carefully.
- Click Confirm.
What happens behind the scenes
- Watch status changes to "Shipped".
- Linked accessories are automatically dispatched with the watch (cascade).
- Order record created with all payment/charge/shipping details.
- Ownership history record created for the customer.
- All changes are audit-logged.
Split Shipment (Partial Dispatch)
When an order contains both available items and pre-order items, you can ship the available items immediately without waiting for pre-orders to arrive.
- Load the draft order on the Dispatch page.
- The system detects pre-order items and allows partial dispatch — only available items are processed.
- Click Process Dispatch. The order status becomes "Partially Shipped".
- Pre-order items remain in the order with status "Awaiting Stock".
Ship Remaining Items
When pre-order stock arrives and the items are replaced with real inventory:
- Go to the Orders page and find the Partially Shipped order.
- Click "Ship Remaining".
- The Dispatch page loads with only the remaining (previously pre-order) items.
- Fill in shipping details and click Process Dispatch.
- The order status changes to "Shipped" (displayed as "Completed").
Return Shipment Detection
Concurrency Protection
8. Dispatching for Internal Use
Follow the same dispatch flow as Section 7, but in Step 3, select a different Dispatch Reason:
| Reason | Item Status Becomes |
|---|---|
| Photoshoot | Out - Photoshoot |
| Marketing / Promotion | Out - Marketing |
| Exhibition / Display | Out - Exhibition |
| Loan / Borrowing | Out - Loan |
| Other | Out - Other |
repair_external.Instead of customer and payment fields, the form shows:
- Assigned To (Staff Name, required).
- Department/Team.
- Contact Number.
- Location/Venue.
- Purpose/Event Name.
- Expected Return Date — important for tracking when items should come back.
Click Process Dispatch → confirmation → success.
9. Creating & Managing Orders
Sidebar > Orders.
Viewing Orders
- Filter by Status (All / Pending / Completed / Returned), Date Range.
- Click Apply. Click Clear to reset.
- Click any order row → Order Details modal with full information.
Creating a Draft Order
- Click "+ Create Order".
- Add items (watches, accessories, or pre-order placeholders).
- Each added item is immediately Reserved in the system.
- Fill customer details, payments, charges.
- Click Save → draft created in "Pending" status.
Editing an Order
- Click Edit on any Pending, Partially Shipped, or Completed order.
- You can modify customer, payments, charges, add or remove items.
- Removing an item releases it back to available stock (confirmation required).
Completing a Draft (Dispatching)
From the Orders page or via the Dispatch page with a draft order ID.
• If the order has only available items → All items are dispatched. Order becomes "Shipped".
• If the order has both available and pre-order items → Available items are dispatched. Order becomes "Partially Shipped". Use "Ship Remaining" later (see Section 7 — Split Shipment).
• If the order has only pre-order items → System blocks dispatch: "Cannot dispatch: all items in this order are pre-order."
Fill shipping details, finalize payments, and confirm to dispatch.
Deleting a Draft
• Confirm → Draft deleted, all reserved items return to their previous status.
• Cancel → No change.
Order Statuses
| DB Status | Displayed As | Meaning |
|---|---|---|
| Pending | Draft (Pending) | Draft order created but not yet dispatched. Items are reserved. |
| Partially Shipped | Partially Shipped | Some items dispatched, others awaiting stock (pre-order). A "Ship Remaining" button is available. |
| Shipped | Completed | All items dispatched to customer. The UI displays both "Shipped" and "Completed" as "Completed". |
| Returned | Returned | All items returned. Order is locked and cannot be edited. |
10. Processing Returns
Sidebar > Receive > Return tab.
Step 1: Select Return Type
• Customer Return — Watch returning from a customer order. Must currently be in "Shipped" status.
• Internal Return — Watch returning from internal use (photoshoot, loan, exhibition, etc.). Cannot be "In Warehouse" already.
Step 2: Scan QR Code
Scan or enter the watch QR code. System shows an item summary: Model, Colour, QR Code, Status, QC Status, Customer, Order/Invoice.
Step 3: Choose Return Action
Option A — Send to Repair
The item needs servicing before it can go back into stock or be re-shipped.
Option B — Return to Warehouse
The item is fine and goes straight back into available stock.
Option C — Replace Watch
The customer receives a replacement; the returned item is either scrapped (Broken) or returned to warehouse (Good condition).
Option A: Send to Repair
- Select Technician (required).
- Start Date defaults to today.
- Target End Date auto-calculates (start + 14 working days).
- Enter Problem Description (required).
- Click Process Return.
Option B: Return to Warehouse
Simple return, no repair needed. Click Process Return.
Option C: Replace Watch
- Select Replacement Watch from the dropdown (required). Only watches of the same model, with QC PASS and In Warehouse status, are shown.
- Choose condition of the returned watch:
• Broken → Returned watch status → "Broken", QC → "REJECT". Replacement → "Shipped" to customer. Minimal dispatch record created.
• Good condition → Returned watch status → "In Warehouse", QC → "PASS". Replacement → "Shipped". Full dispatch details required: Delivery Method (required), Shipping Address, Tracking Number, Delivery Cost, Dispatch Date.
- Click Process Return.
Optional: Return Reason
Describe why the customer returned the item. This is recorded for reporting purposes.
11. Managing Repairs
Sidebar > Repairs.
Active Repairs Tab
Shows all current repairs as cards. Each card displays: item info, technician, dates, problem, status badge. Overdue repairs show a red "X day(s) overdue" badge. Filter by Technician.
Starting a Repair
Repairs can be started from the Receive page (during a return) or from an Item Profile. The form requires:
- Technician (required).
- Start Date (defaults to today).
- Target End Date (auto-calculates: start + 14 working days).
- Problem Description.
Updating a Repair
Click Update on a repair card. Change technician, target date, problem, or remarks.
Completing a Repair
- Click "Complete Repair" on a card.
- Modal shows repair information.
- Enter Fix Description (required).
- Enter End Date (required, defaults to today).
- Select QC Status: PASS or REJECT.
• PASS → Item returns to "In Warehouse". Any fulfilled accessory requests auto-link to the watch.
• REJECT → Item stays "In Repair". Must enter Rejection Reason (required). Technician needs to continue work.
Requesting Accessories for Repair
- On a repair card, click "Request Accessory".
- Select Type → Category → Colour → Item from cascading dropdowns.
- Enter Quantity (min 1; for individual items, locked to 1).
- Optional Remarks.
- Click Submit.
Fulfilling Requests Admin Operator
Pending Requests tab shows all accessory requests from technicians.
• Fulfill — If stock is sufficient → "Request fulfilled - item linked to watch." If insufficient → "Insufficient stock. Available: X" (button disabled).
• Reject — Enter optional rejection reason → "Request rejected."
Unlinking a Fulfilled Item
If the wrong item was linked, click Unlink on the request.
- Select reason: "Wrong Item - Return to Stock", "Not Needed - Return to Stock", or "Broken/Damaged - Remove from Stock".
- Enter optional notes.
- Confirm.
Completed Tab
View completed repairs. Filter by time range (Last 30 Days, Last 90 Days, Last 6 Months, This Year, All Time). Export to CSV/Excel/PDF.
Report Tab
Analytics charts: Repair Summary (bar), By Model (donut), By Technician (bar), Monthly Trend. Summary and detail tables. Export to CSV.
Status Board
Visual overview: technician cards showing current workload. Overdue items are highlighted for quick identification.
12. Working with Accessories (Linking, Unlinking)
Linking an Accessory to a Watch
From the Accessories page (Linked or Not Linked tab), or from a watch's Item Profile.
- Click "Link to Watch" on an accessory.
- Search/select a watch — only watches with QC PASS, In Warehouse or Ready for Delivery, and compatible model are shown.
- Confirm.
Unlinking an Accessory
- Click Unlink on a linked accessory.
- Select reason:
• Wrong Item → Accessory returns to available stock.
• Not Needed → Accessory returns to available stock.
• Broken → Accessory is marked as Broken and removed from available stock.
- Confirm.
Automatic Cascade Behaviour
• When a watch is dispatched, all linked accessories are automatically dispatched with it.
• When a watch returns, linked accessories cascade back to "Reserved" status.
• When a replacement watch is assigned during a return, accessories transfer to the replacement watch.
13. Browsing Watch Inventory
Sidebar > Watch List.
All Items Tab
Filters: Model, Colour, Status, QC Status, Date Range, Search (QR/Phone/Invoice). Click Apply to filter, Clear to reset.
Bulk Actions
Select items via checkboxes, then use the bulk action dropdown:
| Action | What It Does | Confirmation |
|---|---|---|
| Bulk Reset to Warehouse | Resets selected items to "In Warehouse" status. | "Reset X watch(es) to 'In Warehouse'?" Auto-returns active stockout records. |
| Bulk Edit QC | Changes QC status for all selected items. | Select PASS/REJECT. Remarks required if REJECT. |
| Bulk Delete | Permanently deletes selected watches. | Warning shown. Blocked if item has active relationships, stockouts, pending orders, or repairs. Frees QR codes for reuse. Irreversible. |
| Bulk Set Location | Sets storage location for all selected items. | "Set location to '[location]' for X watch(es)?" |
Individual Actions
- Mark Broken — Click on any item → "Mark this watch as Broken?" → status changes, removed from available stock.
- View Profile — Opens the Item Profile page (Section 15).
Export
CSV and Excel buttons export data with current filters applied.
Other Tabs
| Tab | Shows |
|---|---|
| Received | Recently stocked-in watches by date range. |
| Dispatches | Items sent out with dispatch reason, status (Out/Returned), expected return date. Badge shows active count. |
| Returned | Items received back with return details. |
14. Browsing Accessory Inventory
Sidebar > Accessories.
All Items Tab
Filters: Type, Category, Colour, Status, Tracking Type (Individual/Quantity), Search, Date Range.
Tabs
| Tab | Shows |
|---|---|
| Received | Recently received accessories. |
| Dispatches | Dispatched accessories. |
| Linked | Accessories currently linked to watches. Shows which watch each is attached to. |
| Not Linked | Available accessories not attached to any watch. Can be linked from here. |
Bulk actions and export work the same as Watch List (Section 13).
Send to Repair from List
Select an accessory and use the "Send to Repair" action. Technician (required) and Problem (required) must be provided.
15. Viewing Item Profiles
Click any QR code or item name in any list → opens the Item Profile page.
Watch Profile Tabs
| Tab | Content |
|---|---|
| Overview | Model, Colour, Status, QC Status, Date Received, Location, Customer, QR Code. |
| Timeline | Chronological history of all events (stock-in, QC, dispatch, repair, return). Empty → "No timeline entries." |
| Repairs | All repair records for this watch. Empty → "No repairs." |
| Linked Items | Accessories attached to this watch. Can link/unlink from here. |
| Orders & Dispatches | Every order this watch has been part of. |
Accessory Profile Tabs
| Tab | Content |
|---|---|
| Overview | Name, SKU, Category, Type, Status, Tracking Type, Quantity, Location. |
| Timeline | All events for this item. |
| Linked Watches | Watches this accessory is linked to. |
| Transaction History | Stock in/out, adjustments, returns, transfers. |
Quick Actions from Profile
Depending on the item's current state, the following actions are available:
- Edit Item — Modify editable fields.
- Send to Repair — Opens repair form.
- Mark as Broken — Changes status to Broken.
- Change Status — Update item status.
- Update QC — Change QC status.
16. Managing Customers
Sidebar > Customers.
Adding a Customer
- Click "+ Add Customer".
- Enter Name (required), Phone, Email (validated format), Address.
- Click Save.
Editing a Customer
Click the edit action on a customer row → modify fields → Save.
Deleting a Customer
Click the delete action → "Are you sure? This cannot be undone."
Invoice Badges
Each customer row shows invoice badges for their orders. Click a badge → navigates to the order details for that invoice.
17. Reports
Sales Analytics
Sidebar > Sales Analytics.
Filters: Date range presets (All Time, This Month, Last 7/30 Days, This Year, Custom), Item Type, Model, Colour, Group By (Day/Week/Month/Year).
Charts:
- Model Breakdown (donut)
- Colour Breakdown (donut)
- Period Sales (bar/line)
- Payment Method (donut)
- Net Received vs Fees (bar)
Delivery Report
Sidebar > Delivery Report.
Filters: Date presets, Item Type, Model, Courier, Status.
Charts: Delivery Method split, Courier Performance, Delivery Cost ranges, Cost vs Fees.
Monthly table: Click "Details" for item-level breakdown. Download CSV per month.
Movements table: All dispatched items with status, tracking, replacements. Broken items highlighted in red. Returned items show return badge and reason.
Ownership History
Sidebar > Ownership History.
Filters: Date range, Customer, Acquisition Method, Model, "Show current owners only" checkbox.
Table columns: QR Code (linked to profile), Model, Colour, Customer, Date From/To, Acquisition Method, Status (Current/Previous Owner).
Export to CSV.
18. Dashboard
Sidebar > Dashboard (landing page after login).
Always-Live KPI Cards
Four cards at the top, updated in real time:
| Card | Shows | Note |
|---|---|---|
| Total Stock | Watches + Accessories count | Admin/Operator only |
| On-Hand | In Warehouse + Reserved | All roles |
| Pending QC | Items awaiting QC | Yellow highlight if > 10 |
| In Repair | Items being serviced | All roles |
Inventory Health (Live — Not Date-Filtered)
- Watch Status Breakdown — Stacked bar chart.
- Inline KPIs — In Warehouse, Reserved, Watches Broken, Accessories Broken.
- QC Readiness — Donut chart (Pending/Pass/Reject).
- Accessories by Category — Bar chart.
Period Activity (Date-Filtered)
Date filter presets: All Time, Today, This Week, This Month, Last 30 Days, This Year, Custom. All sections below update when you change the filter.
Pipeline Funnel
Received → QC Passed → Dispatched → Returned with counts and conversion percentages.
Stock-In
- Items Received by Model (bar)
- Received Over Time (line)
- QC Outcome (donut)
Dispatch
- Delivery Method split (Courier vs Self-Collect)
- By Courier (bar)
- Pending Orders count (highlighted if > 0)
Repair (Live)
- Status bar (Completed / In Progress / Overdue)
- By Technician (bar)
- Top 5 Overdue Repairs with days overdue
Returns
- Return Rate %
- QC Status bar (Pending / Passed / Rejected)
- By Model (bar)
- Return Rate Trend (weekly)
Recent Activity
Last 10 audit log entries showing user, action, entity, and timestamp.
19. Global Search & Alerts
Global Search
- Type a search term and press Enter.
- The system searches across: watches (QR, model, colour, remarks), accessories (name, SKU, QR), invoices (invoice#, tracking#, WooCommerce ID), QR codes.
- Flexible matching: "FWB01001" matches "FWB_01_001".
- Results appear in a modal grouped by type.
- Click a result → navigates to item profile or order.
Keyboard Navigation
| Key | Action |
|---|---|
| Arrow Up / Down | Navigate through results |
| Enter | Open selected result |
| Esc | Close the search modal |
Alert Centre Admin Operator
Bell icon in the sidebar header. Badge shows unread count.
Alert Types
| Alert | Severity | Condition |
|---|---|---|
| Overdue Repairs | Critical | More than 7 days overdue |
| Overdue Repairs | Warning | 3–7 days overdue |
| Overdue Repairs | Info | Less than 3 days overdue |
| Out of Stock | Critical | Quantity-tracked item has 0 stock |
| Low Stock | Warning | Quantity at or below reorder point |
Managing Alerts
- Click an alert to mark it as read.
- Dismiss individual alerts or use "Mark all as read".
- Alerts auto-resolve when the underlying issue is fixed (repair completed, stock replenished).
Toast Notifications
Brief messages in the bottom-right corner of the screen:
| Type | Colour | Duration | Usage |
|---|---|---|---|
| Success | Green | 5s | Operation completed successfully |
| Error | Red | 8s | Operation failed — longer display for reading |
| Warning | Orange | 5s | Potential issue or caution |
| Info | Blue | 5s | General information |
20. Glossary
| Term | Definition |
|---|---|
| QR Code | Unique identifier assigned to each watch or individual accessory, in the format MODEL_COLOR_NUMBER (e.g., FWB_02_001). |
| QC Status | Quality Control status: PENDING (awaiting inspection), PASS (approved for dispatch), REJECT (failed — requires remarks, cannot dispatch). |
| In Warehouse | Watch status. Watch is in stock and available for dispatch or linking. (Note: accessories use "In Stock" instead of "In Warehouse".) |
| In Stock | Accessory status. Accessory is in stock and available for dispatch or linking. Equivalent of "In Warehouse" for watches. |
| Reserved | Item is set aside — linked to an order or attached to a watch — but not yet dispatched. |
| Ready for Delivery | Item has been prepared for shipment but not yet dispatched. |
| Shipped | Item has been dispatched to a customer or external location. |
| Dispatched | Same as Shipped — item sent out of the warehouse. |
| In Repair | Item is currently being serviced by a technician. |
| Broken | Item is damaged or defective. Removed from available stock. |
| Out - [Reason] | Item dispatched for internal use: Out - Photoshoot, Out - Marketing, Out - Exhibition, Out - Loan, Out - Other. |
| Overdue | A repair that has passed its target end date without being completed. |
| Invoice Number | Order reference number. WooCommerce invoices use the format FW + digits (e.g., FW383908). |
| MDR | Merchant Discount Rate — percentage fee charged by the payment provider for processing a transaction. |
| Delivery Cost | The actual cost paid to the courier (internal cost, not customer-facing). |
| Shipping Price | The shipping amount charged to the customer. |
| Gateway Fee | Fee charged by the payment gateway/provider for processing the payment. Calculated automatically based on MDR or flat rate. |
| Reorder Point | Quantity threshold below which a low-stock alert is triggered for quantity-tracked accessories. |
| Tracking Type | How an inventory item is tracked: "Individual" (each has a QR code) or "Quantity" (tracked by count, no QR codes). |
| Provider | Payment service provider (e.g., Stripe, PayPal, bank). |
| Linked Items | Accessories attached to or included with a watch. They dispatch and return together automatically. |
| Ownership History | Chain-of-custody record showing every customer who owned a watch, with dates and acquisition method. |
| Return Shipment | When dispatching a watch that was previously returned — the system detects this and shows a blue banner with the previous customer's details. |
| Cascade | Automatic propagation of status changes. For example, dispatching a watch automatically dispatches its linked accessories. |
| Pre-order | A placeholder item in a draft order, representing a watch or accessory that has not yet been assigned a specific QR code. Pre-order items can be left in an order during partial dispatch (split shipment). |
| Split Shipment | Dispatching an order in multiple stages. Available items ship first (order becomes "Partially Shipped"), then remaining items ship later via "Ship Remaining" when stock arrives. |
| Partially Shipped | Order status indicating some items have been dispatched but pre-order items are still awaiting stock. Each item shows its own shipment badge (Shipped, Awaiting Stock, or Pending). |
| Working Days | Business days (excluding weekends). Used for calculating repair target end dates (default: 14 working days from start). |