Admin Portal Mockup · SaniFilPro management dashboard

Full operational control. Problems surface instantly.

The SaniFilPro back office tool. Desktop first. Two factor sign in required. Color coded badges so missed check-ins, unreviewed reports, and open tickets jump off the screen the second you log in.

10 nav modules 14 stores in scope Real time check-ins, 30s auto refresh Bilingual EN/ES employee profiles
Screen 1

Admin sign in

Internal staff only. After password, the user enters a 6 digit code from an authenticator app. No magic link, no SMS fallback.

Screen 2

All Stores · landing dashboard

app.sanifilpro.com/admin/stores

All Stores

14 active · 1 needs review · 2 currently live
Updated 12s ago
Active stores
14
+2 this quarter
Needs review
1
Port Orange Pavilion
Live now
2
3 finished today
Avg completion (30d)
98.4%
+1.2 vs prior 30d
StoreOperatorStatusLast check-inAction
Daytona Speedway
2120 W International Speedway Blvd
Charles SotoOKToday, 2:14 AMView
Ormond Beach
1490 W Granada Blvd
Charles SotoOKToday, 1:48 AMView
Port Orange Pavilion
5503 S Williamson Blvd
Charles SotoPhoto review pendingToday, 3:22 AMView
DeLand Crossing
2400 S Woodland Blvd
Lauren HicksOKToday, 3:02 AMView
New Smyrna Beach
1810 SR-44
Lauren HicksLiveIn progress · 11:38 PMView
Holly Hill
1200 N Nova Rd
Mike RenaultOKToday, 12:51 AMView
Edgewater Ridgewood
2410 S Ridgewood Ave
Mike RenaultIn progressIn progress · 12:14 AMView
South Daytona
2255 S Ridgewood Ave
Charles SotoOKToday, 1:09 AMView

Landing screen for admins. Color coding makes the one store with a photo review pending impossible to miss. Live tag pulses for currently active cleanings. "Add New Store" provisions a new location with stores, employees, project cadence, and an invoice account.

Screen 3

Live Check-Ins · real time monitor

app.sanifilpro.com/admin/checkins

Live Check-Ins

Today · Mar 5, 2026
Auto refresh every 30s
Active now (3)
JM
José Martinez
New Smyrna Beach
In at 11:38 PM
2h 14m elapsed
MR
Maria Rodriguez
Edgewater Ridgewood
In at 12:14 AM
1h 38m elapsed
DL
Diego Lopez
Port Orange Pavilion
In at 1:22 AM
31m elapsed
Completed today (5)
JM
José Martinez
Daytona Speedway · 11:12 PM → 2:14 AM
3h 02m
OK
AS
Ana Soto
Ormond Beach · 10:48 PM → 1:48 AM
3h 00m
OK
RG
Roberto Garcia
DeLand Crossing · 11:50 PM → 3:02 AM
3h 12m
OK
CP
Carlos Perez
Holly Hill · 10:00 PM → 12:51 AM
2h 51m
OK
LV
Luis Vega
South Daytona · 10:24 PM → 1:09 AM
2h 45m
Review

Auto refreshes every 30 seconds so admins watching overnight can see who is on site without manually reloading. Elapsed counter in green warns subtly when a cleaning is taking longer than the historical average.

Screen 4

Photo Review · approval queue

app.sanifilpro.com/admin/photos

Photo Review

12 pending approval · oldest 11h ago
All zones
FOH
Daytona Speedway
Dining area · José Martinez
Today, 1:14 AM
Drive-Thru
Ormond Beach
Drive-thru window · Ana Soto
Today, 12:48 AM
Restroom
Port Orange Pavilion
Men's restroom · Diego Lopez
Today, 1:32 AM
Kitchen
DeLand Crossing
Hot line · Roberto Garcia
Today, 2:02 AM
Playground
Holly Hill
Play area · Carlos Perez
Today, 12:18 AM
FOH
South Daytona
Lobby · Luis Vega
Today, 12:42 AM
Restroom
Daytona Speedway
Women's restroom · José Martinez
Today, 1:20 AM
Drive-Thru
DeLand Crossing
Order kiosk · Roberto Garcia
Today, 2:08 AM
Kitchen
Ormond Beach
Behind cold line · Ana Soto
Today, 12:55 AM
Dining
South Daytona
Booth row 3 · Luis Vega
Today, 12:38 AM
Restroom
Port Orange Pavilion
Family restroom · Diego Lopez
Today, 1:40 AM
FOH
Holly Hill
Counter front · Carlos Perez
Today, 12:30 AM

12 photos per page in a 4 by 3 grid. Each tile is one-click Approve or Reject with the zone tag baked into the thumbnail. Selection state on the first tile shows the bulk-approve flow. Photos are live captured (no upload from gallery) so admins trust they were taken on shift.

Screen 5

Cleaning Reports · list

app.sanifilpro.com/admin/cleaning-reports

Cleaning Reports

98 reports in range · 14 unreviewed
Store: All
Date: Feb 26 to Mar 5
Status: All
Unreviewed only
DateStoreEmployeeStatusPhotosReviewedAction
Mar 5 · 2:14 AM
Daytona Speedway
José MartinezClean16PendingView
Mar 5 · 1:48 AM
Ormond Beach
Ana SotoClean14PendingView
Mar 4 · 3:22 AM
Port Orange Pavilion
Diego LopezNeeds review15PendingView
Mar 4 · 3:02 AM
DeLand Crossing
Roberto GarciaClean13View
Mar 4 · 1:09 AM
South Daytona
Luis VegaNeeds review12PendingView
Mar 4 · 12:51 AM
Holly Hill
Carlos PerezClean14View
Mar 3 · 2:32 AM
Edgewater Ridgewood
Maria RodriguezBelow standard11PendingView
Mar 3 · 1:50 AM
Daytona Speedway
José MartinezClean16View

Filter row up top, table down below. The "Unreviewed only" toggle is the everyday workflow: admin opens it first thing in the morning to see what needs eyes. Red "Below standard" badge stands out from yellow "Needs review" so the worst issues bubble up first.

Screen 6

Cleaning Report · detail

app.sanifilpro.com/admin/cleaning-reports/r-2742
Reports/Mar 4/ Daytona Speedway

Daytona Speedway · Mar 4, 2026

José Martinez11:12 PM in2:14 AM out3h 02m on site
Clean · Overall

Checklist completion

Front of house9 of 9
  • Wipe down all tables and chairs
  • Sweep and mop floors
  • Clean entrance glass, inside and out
Drive-thru10 of 10
  • Wipe down order kiosks
  • Squeegee pickup window
Restrooms5 of 5
  • Toilets and urinals scrubbed and disinfected
  • Sinks and counters wiped down
Playground4 of 4
  • Wipe all touchpoints and slide entry
  • Vacuum padded area
Kitchen11 of 12 · 1 flagged
  • Degrease hood and surrounding wall
  • Wash behind hot line · grease build up noted, partial pass
  • Sanitize prep counters

Photos by zone (16)

Front of house · 4

Complete
FOH
FOH
FOH
FOH

Restrooms · 5

Complete
M
M
W
W

Kitchen · 4

1 flagged
K
K
K
K

Dining · 3

Complete
D
D
D

Cleaner notes

Bilingual

"Hood vent en la línea caliente tiene una acumulación que necesita un degreaser más fuerte la próxima visita. Reabastecí los dispensadores de toalla en ambos baños."

English: Hood vent on the hot line has buildup that will need a stronger degreaser next visit. Restocked the towel dispensers in both restrooms.

Drill down view. Checklist by category with completion counts. Photos grouped by zone so admins can scan visually. One flagged kitchen item shows up at a glance in amber. Cleaner notes preserved in the language the employee wrote them in, with an English mirror below.

Screen 7

Tickets · management

app.sanifilpro.com/admin/tickets

Tickets

Filter: All Open · sorted by priority then age
Open (3)
In Review (1)
Resolved
All
Store: All
Priority: All
IDStoreCategoryPrioritySubmitterAgeStatusAction
#144
Edgewater Ridgewood
RestroomUrgentCharles Soto · Operator4hOpenView
#142
Port Orange Pavilion
RestroomHighCharles Soto · Operator1d 2hOpenView

#141 · Daytona Speedway · Kitchen · High priority · 2d 4h old · Open

Hood vent on the hot line has visible grease buildup that did not fully clear with the standard degreaser. Need a project clean scheduled. Photos attached from last 2 cleanings.

#140
Holly Hill
SuppliesNormalCarlos Perez · Employee3dIn ReviewView
#138
DeLand Crossing
EquipmentLowRoberto Garcia · Employee5dResolvedView

Filter pills along the top let admins flip between Open, In Review, and Resolved with one click. Color-coded priority badges (Urgent red, High amber, Normal blue, Low gray) mean the eye lands on the urgent issue first every time. One row expanded to preview the description and one-click actions without leaving the list.

Screen 8

Ticket · resolution flow

app.sanifilpro.com/admin/tickets/142
Tickets/ #142

Ticket #142 · Restroom partition residue

Port Orange PavilionSubmitted Mar 3, 11:14 PM1d 2h old
High priority OPEN

Submitter

Operator
CS
Charles Soto
charles.soto@cfaoperator.com · Operator (Port Orange Pavilion)

Description

Soap residue is still visible on the lower half of every men's restroom partition after the last 3 cleanings. Customers have flagged it twice this week. Looks like the rinse pass is being skipped on this surface. Please raise this with the assigned cleaner and add to the playbook.

3 photos attached by operator

Activity

Charles Soto opened the ticket
Mar 3 · 11:14 PM
Admin acknowledged · auto reply sent to submitter
Mar 3 · 11:18 PM
Diego Lopez (cleaner) was notified in EN/ES
Mar 4 · 8:02 AM

Resolve this ticket

Linked

Recent report
Assigned to
Diego Lopez · Cleaner
Watchers
Charles Soto
Lauren Hicks · Supervisor

Two column resolution view. Activity timeline on the left shows every step (auto reply, employee notification in their language). Resolution panel on the right is the action area: outline button to move to "In Review", solid teal to resolve with notes. Linked items connect the ticket back to the report and the assigned cleaner.

Screen 9

Project Cadence · monthly schedule

app.sanifilpro.com/admin/projects

Project Cadence · March 2026

42 project visits scheduled across 14 stores
Store: All
Legend: Biweekly Monthly Quarterly Annual
Sun
Mon
Tue
Wed
Thu
Fri
Sat
22
23
24
25
26
27
28
1
Dining detail · Daytona
2
3
Vent hood · Ormond
Patio · Holly Hill
4
5
Floor wax · DeLand
6
Pressure wash · S. Daytona
7
8
9
Dining detail · Edgewater
10
Restroom deep · Port Orange
11
12
Playground sanitize · Daytona
13
Patio · New Smyrna
14
15
Vent hood · DeLand
16
17
Dining detail · Holly Hill
18
Floor wax · Ormond
19
20
Pressure wash · Daytona
21
22
23
Dining detail · Port Orange
24
Restroom deep · S. Daytona
25
26
Patio · Edgewater
27
Floor wax · Daytona
28
29
30
Vent hood · Holly Hill
31
Dining detail · DeLand
1
2
3
4

Upcoming projects

Daytona Speedway
Dining detailMar 1
Playground sanitizeMar 12
Pressure washMar 20
Floor waxMar 27
Ormond Beach
Vent hood degreaseMar 3
Floor waxMar 18
DeLand Crossing
Floor waxMar 5
Vent hood degreaseMar 15
Dining detailMar 31
Holly Hill
Patio scrubMar 3
Dining detailMar 17

Calendar grid of the current month with one event tile per scheduled project, color coded by cadence: green biweekly, blue monthly, purple quarterly, amber annual. Today is highlighted in teal. Sidebar lists upcoming work grouped by store so an admin can scan one customer at a time. "Regenerate schedule" rebuilds the month from each store's cadence rules.

Screen 10

Invoices · upload and tracking

app.sanifilpro.com/admin/invoices

Invoices

14 active stores · YTD billed: $284,200 · Outstanding: $18,400
Store: All
Status: All
Invoice #StoreAmountService periodStatusUploadedPDF
SFP-2026-0142Daytona Speedway$2,200Mar 1 to Mar 31UnpaidMar 1View PDF
SFP-2026-0141Ormond Beach$1,950Mar 1 to Mar 31UnpaidMar 1View PDF
SFP-2026-0140Port Orange Pavilion$2,100Mar 1 to Mar 31PaidMar 1View PDF
SFP-2026-0139DeLand Crossing$1,800Mar 1 to Mar 31PaidMar 1View PDF
SFP-2026-0128Daytona Speedway$2,200Feb 1 to Feb 28PaidFeb 1View PDF
SFP-2026-0127Holly Hill$1,750Feb 1 to Feb 28PaidFeb 1View PDF

Upload new invoice

Drag a PDF here or click to browse

Each invoice tied to a store and a service period. Status pill shows Paid (green) vs Unpaid (amber) at a glance. Upload form sits in the right panel so admins can post a PDF without leaving the page. "Notify operator" sends a one-line email with the PDF attached and updates the operator portal's billing widget.

Screen 11

Employees · roster and assignments

app.sanifilpro.com/admin/employees

Employees

11 active · 2 supervisors · 9 cleaners
Role: All
EmployeeRoleAssigned storesLangStatus
JM
José Martinez
PIN: 4821
CleanerDaytonaSpeedwayESActive
AS
Ana Soto
PIN: 7193
CleanerOrmond BeachESActive
DL
Diego Lopez
PIN: 5524
CleanerPort OrangeSouth DaytonaESActive
RG
Roberto Garcia
4 of 4 stores · at capacity
CleanerDeLandHolly HillEdgewater+1ESAt capacity
MR
Maria Rodriguez
PIN: 2244
CleanerEdgewaterESActive
CP
Carlos Perez
PIN: 9087
CleanerHolly HillESActive
LH
Lauren Hicks
PIN: 1133
SupervisorDeLandNew Smyrna+4ENActive
MR
Mike Renault
PIN: 6620
SupervisorHolly HillEdgewater+2ENActive

Add new employee

Cleaners cap at 4 stores. Supervisors are uncapped.

Capacity warning

Roberto Garcia is at the 4 store cap. Hire another cleaner before assigning a 5th location.

Roster table with PIN, role, store assignments as chips, and the language each employee uses for the app. The amber row flags an employee at the 4 store capacity ceiling. Add Employee form on the right captures the same fields. Capacity warning panel surfaces the staffing issue without making the admin go hunting for it.

Screen 12

Supervisor Visits · QA log

app.sanifilpro.com/admin/supervisor-visits

Supervisor Visits

Last 30 days · 18 visits logged · avg score 9.1
Store: All
DateStoreSupervisorScoreNotesAction
Mar 4
Port Orange Pavilion
Lauren Hicks7.5 / 10Restroom partitions still showing residue. Briefed cleaner.View
Mar 3 · Daytona Speedway · Lauren Hicks · Score 9.5 / 10
Visited 6:30 AM. Met José at end of shift.
Strong pass

Walked all zones with cleaner present. Front of house and drive thru spotless. One missed touchpoint on the women's restroom door handle (now caught). Suggested adding the playground rail to the bi-weekly playbook so it stops getting missed between project visits.

Mar 2
Ormond Beach
Mike Renault9.8 / 10All zones passed. Vendor knows the playbook well.View
Mar 1
Edgewater Ridgewood
Mike Renault6.5 / 10Below standard kitchen. Filed ticket #138. Reassigning cleaner.View
Feb 28
DeLand Crossing
Lauren Hicks9.2 / 10Clean overall. Minor vent buildup noted for project queue.View

Log new visit

QA log of every supervisor walk through. Score is color coded (green 9+, amber 7 to 8.9, red below 7) so a glance at the column tells you which stores need follow up. Expanded row shows the visit detail and a one-click link to compare the supervisor's findings against the cleaner's same-day report.

Screen 13

Store Performance Reports

app.sanifilpro.com/admin/reports

Store Performance Reports

Last 30 days · Feb 4 to Mar 5, 2026
Range: 30 days
Avg completion
98.4%
+1.2 vs prior 30d
Open concerns
8
across 5 stores
Supervisor visits
18
avg score 9.1 / 10
Tickets resolved
22
avg time to close 1.4d
Daytona Speedway
Top performer · 30 days clean
+2.1
100%
Complete
0
Concerns
9.5
Sup score
Ormond Beach
Strong, no flags
+0.8
99.6%
Complete
0
Concerns
9.8
Sup score
DeLand Crossing
Strong, minor backlog
+0.4
99.1%
Complete
1
Concerns
9.2
Sup score
Holly Hill
Steady
· 0.0
98.7%
Complete
1
Concerns
9.0
Sup score
South Daytona
Holding
+0.2
98.2%
Complete
1
Concerns
8.8
Sup score
New Smyrna Beach
Holding
· 0.0
97.9%
Complete
1
Concerns
8.6
Sup score
Port Orange Pavilion
Needs attention · restroom recurring
-1.4
94.2%
Complete
3
Concerns
7.5
Sup score
Edgewater Ridgewood
Below standard · escalated
-2.8
89.1%
Complete
3
Concerns
6.5
Sup score
Daytona Beach Shores
Holding
+0.3
98.0%
Complete
0
Concerns
8.9
Sup score
Daytona International
Holding
+1.1
99.2%
Complete
0
Concerns
9.4
Sup score
Daytona Mall
Holding
· 0.0
98.5%
Complete
0
Concerns
9.1
Sup score
Port Orange Town Center
Holding
+0.6
99.4%
Complete
0
Concerns
9.3
Sup score
DeLand Town
Holding
+0.4
98.8%
Complete
0
Concerns
9.0
Sup score
Holly Hill Crossing
Holding
· 0.0
98.6%
Complete
0
Concerns
9.0
Sup score

One card per store, sorted by status. Top performers get a green border, problem stores amber or red. Three rolled up metrics per card so an admin can scan 14 stores in seconds. "Email to operators" pushes each operator their own scorecard so the conversation is data driven not anecdotal.