Role-Based SOP v2.0 — Step-by-Step Workflow Instructions

Unlikely Professionals | Version 2.0 | March 2026 6 Roles · 9 Workflow Phases · 100+ Steps Legend: A = Automated · H = Human · Portal = Entirely (entirely.it.com)


Role Overview

TypeRoleWhoPrimary Tools
INTERNALOwner / CertifierDustin + Diehl + ValerioEntirely Portal (Command Center, Owner Review), Supabase, Stripe, Gmail
INTERNALAdminOffice staffEntirely Portal (Workbench), Supabase, Stripe, Gmail
INTERNALField TechnicianDarius (lead)WhatsApp + Kulu AI agent, Camera, /data/projects/
EXTERNALScheduler / AssistantContractor PMs, coordinatorsEntirely Portal (Day View, Calendar, Schedule Changes)
EXTERNALGeneral Operations (GOA)Branch managersEntirely Portal (Branch Dashboard, Calendar)
EXTERNALTriageStale project investigatorsEntirely Portal (Triage Pipeline, Tracker, Archive)
EXTERNALAccounts PayableAP clerksAP Portal (invoice lookup, remittance upload)
EXTERNALField CrewForemen, installersOn-site, WhatsApp

1. Owner / Certifier (INTERNAL)

Phase 1: Project Intake

StepActionToolA/HDetails
1.1Receive inspection requestGmail / Chat / Portal IntakeHSite address, permit #, owner, scope, preferred date
1.2Submit via Intake Wizard or create manuallyEntirely PortalHAuto-enrichment: geocoding, jurisdiction, certifier, forms, timeline
1.3Duplicate detection runsAutoAFuzzy address match against existing projects
1.4Verify data completenessPortalHValid address, permit not expired, scope matches products
1.5Look up or create AccountSupabaseHConfirm Stripe Customer ID, deliverables email
1.6Create project recordSupabaseHUses supabase_write_service.create_project(). Status → Intake
1.7Create project folder, upload permits/plans/data/projects/HAuto-parsed: extract dates, numbers, forms detection
1.8Build SOW linesSupabaseHOne line per product. Auto-include dependencies (WTR/ENC → parent)
1.9Request missing info from contractorGmail / ChatHIf incomplete: flag for follow-up, create RFI
1.10Mark intake completeSupabaseHStatus → ready for scheduling

Phase 2: Scheduling

StepActionToolA/HDetails
2.1Receive preferred date/timeGmail / Chat / PortalHClient specifies date, time, access instructions
2.2Check availability via Day View or CalendarEntirely PortalH24-hour timeline with hourly gridlines
2.3Evaluate rush job statusPortalH<24hr notice → flag, internal approval, emergency fee
2.4Create site visit record, link to projectSupabaseHDate, time, tech assignment, access instructions
2.5Update project status → ScheduledSupabaseHVisible on Calendar with status/branch color stripes
2.6Send confirmation to contractorGmailHConfirm date, time, address, scope
2.7Daily schedule auto-delivered to field techWhatsAppA6:00 AM ET, next-day appointments

Phase 3: Field Inspection Oversight

StepActionToolA/HDetails
3.1Monitor tech check-inWhatsAppHVerify tech arrived and began inspection
3.2Review field submissionsPortal / FilesHPhotos uploaded, notes entered, driving logs done
3.3Identify missing deliverablesPortalHCompare SOW lines against submitted docs
3.4Handle “unable to inspect” flagsPortalHReview reason, flag for trip charge, reschedule
3.5Confirm all data receivedSupabaseHStatus → Field Complete (triggers auto-validation)

Phase 4: Auto-Validation & RFI

StepActionToolA/HDetails
4.1Auto-validation runs 10-point checklistAutoAPhotos, SOW lines, driving logs, permit data, notes
4.2If pass: auto-advance to Ready for CertAutoANo human intervention needed
4.3If gaps: RFI created automaticallyAutoASpecifies exactly what’s missing
4.4Send deliverable request to contractorGmail / Chat / AutoH/ARFI notification via portal + email
4.5Track response timelinePortalH/AEscalation: scheduler → office mgr → GM (6hr → 24hr → 48hr → 72hr)
4.6Receive and review deliverablesFiles / PortalHUpload to project folder, update SOW status
4.7Resolve RFI, re-run validationPortalHProject advances when all RFIs resolved

Phase 5: Certification Generation

StepActionToolA/HDetails
5.1Pre-certification validationAutoAAll SOW lines have data, photos, no open RFIs
5.2Resolve scope: permitted vs. as-builtAutoACert covers what was inspected
5.3Determine certifier and brandAutoAJurisdiction → certifier; inspection date → brand
5.4Generate certification packageClaude AIACert, photo sheets, driving logs, county forms (WeasyPrint + Jinja2)
5.5Confidence routing evaluates guardrailsAutoA≤$5K + no forms county → send direct; else → owner review
5.6If queued: review in Owner Review or WorkbenchEntirely PortalH4-column Kanban: Not Started → Draft → Approved → Sent
5.7Approve, request revision, or send directEntirely PortalHRevision creates v1.1+
5.8Upload approved cert PDFAutoA/data/projects/{id}/CERTS/
5.9Create cert package recordSupabaseH/AVersion, cert date, certifier, scope summary
5.10Update cert status → ApprovedSupabaseHTriggers delivery

Phase 6: Invoicing

StepActionToolA/HDetails
6.1Look up Stripe Customer IDSupabase → StripeH/AFrom Account record
6.2Check for existing invoiceSupabaseH/ADon’t duplicate if Stripe Invoice ID exists
6.3Build line items from SOW linesStripe APIH/AOne item per product, metadata with record IDs
6.4Add production day chargesStripe APIH/A~1 production day per 6-7 push piers
6.5Add admin fees if applicableStripe APIH/ATrip charge, emergency, no-show
6.6Add custom fieldsStripe APIH/APermit, address, owner
6.7Confidence routing: send direct or queueAutoASame guardrails as cert routing
6.8If queued: review and approveEntirely PortalHApprove and send
6.9Invoice sent via StripeStripeAStripe emails client directly
6.10Invoice PDF auto-uploadsAutoA/data/projects/{id}/INVOICES/
6.11Update invoice status → SentSupabaseAWebhook-driven

Phase 7: Delivery & Closeout

StepActionToolA/HDetails
7.1Verify cert PDF and record existPortalHPre-flight check
7.2Cert delivery triggered on ApprovedAutoAEmail with cert PDF attached
7.3Delivery logged in Delivery LedgerSupabaseATimestamp, recipient, cert version
7.4Verify delivery email sentGmailHConfirm reached deliverables addresses
7.5Update project status → CertifiedSupabaseH/AStatus depends on invoice state
7.6Handle revision requestsClaude AIA/HGenerate v1.1+, re-upload, re-deliver
7.7Payment receipt updates invoice → PaidAutoAStripe webhook
7.8Close projectSupabaseHAll statuses terminal → Closed

Phase 8: Reconciliation

StepActionToolA/HDetails
8.1Stripe webhook auto-matches paymentsAutoAHigh-confidence matches close automatically
8.2Review pending matches in Smart ReconEntirely PortalH3-tier: exact → fuzzy → manual
8.3Upload remittance files for batch matchingEntirely PortalHCSV/PDF parser extracts invoice s and amounts
8.4Reconciliation scanner catches stragglersAutoACron-based catchup
8.5Update invoice status → PaidSupabaseAProject advances toward Closed

Phase 9: Pipeline Intelligence

StepActionToolA/HDetails
9.1Review Command Center metricsEntirely PortalHPipeline, unpaid invoices, pending review, RFI aging
9.2Pipeline Shepherd runs daily at 7:45 AM ETAutoAScans all active projects, flags stuck items
9.3Review Shepherd reportEntirely PortalHProjects needing attention, auto-actions taken
9.4Use Friday AI for analysisEntirely PortalHFull-page or floating bubble, Opus model
9.5Review Audit Log for event trailEntirely PortalHCategory-filtered, timestamped
9.6Review Delivery LedgerEntirely PortalHAll cert/invoice sends with status

2. Admin (INTERNAL)

Admins share most Owner capabilities but work primarily from the Workbench — a 4-column Kanban for cert/invoice queue management.

Daily Workflow

StepActionToolA/HDetails
1.1Open WorkbenchEntirely PortalH4-column Kanban: Not Started → Draft → Approved → Sent
1.2Process cert queue itemsWorkbenchHReview confidence-routed items, approve or revise
1.3Process invoice queue itemsWorkbenchHReview line items, amounts, custom fields
1.4Resolve open RFIsPortalHReview RFI details, request deliverables, close when resolved
1.5Monitor project pipelinePortalHCheck for bottlenecks, stalled projects
1.6Handle schedule change requestsPortalHApprove, deny, or modify

Cert/Invoice Processing (Workbench)

StepActionToolA/HDetails
2.1Item appears in “Not Started” columnAutoAFrom confidence routing or manual queue
2.2Review cert/invoice detailsWorkbenchHClick to expand: project data, SOW, photos, guardrails
2.3Move to “Draft” while workingWorkbenchHDrag-and-drop Kanban
2.4Approve → moves to “Approved”WorkbenchHTriggers delivery
2.5Request revision → returns to DraftWorkbenchHReason captured, new version generated
2.6Sent items appear in “Sent” columnAutoADelivery confirmed

3. Field Technician (INTERNAL)

Pre-Visit

StepActionToolDetails
1.1Receive daily schedule at 6:00 AMWhatsApp (auto)Addresses, scopes, contacts for each site
1.2Ask Kulu for additional contextWhatsApp (Kulu AI)Project history, prior visit notes, special instructions
1.3Confirm equipment readyPhysical prepCamera, measurement tools, driving log forms, PPE

On-Site Inspection

StepActionToolDetails
2.1Arrive and check inWhatsAppNotify admin, meet crew, verify access
2.2Confirm scope with crewIn-personWalk through installation, note differences
2.3Inspect each product against SOWVisual inspectionVerify quality, quantity, location, code compliance
2.4Capture field photosCamera / PhoneOverview + close-up per product, site conditions
2.5Complete driving logs for piersPaper / PhonePier location, depth, PSI, extensions, final load
2.6Note issues or observationsWritten notesIncomplete work, safety, scope changes, crew info
2.7Determine completion statusAssessmentComplete / Partial / Unable to inspect

Check-Out & Post-Visit

StepActionToolDetails
3.1Inform crew of outcomeIn-personPass / partial / issues
3.2Notify admin of outcomeWhatsAppComplete / partial / unable + summary
4.1Upload photos/data/projects/Same day or next business day. Auto-optimized on upload
4.2Submit driving log dataWhatsApp / UploadPhoto of form or typed data
4.3Submit field notesWhatsAppObservations, discrepancies, crew info
4.4Respond to follow-up requestsWhatsApp / KuluAdditional photos, clarifications

4. Scheduler / Assistant (EXTERNAL)

Schedulers use the Day View (24-hour timeline) as their default page. Assistants use the Calendar (month view).

PhaseStepActionToolDetails
Intake1.1Submit inspection request via Intake WizardEntirely PortalAddress, owner, permit #, scope, preferred date
Intake1.2Auto-enrichment populates jurisdiction, certifier, formsAutoGeocoding, timeline estimation
Intake1.3Provide site detailsPortalAccess instructions, gate codes, contacts
Schedule2.1View availability in Day ViewEntirely Portal24-hour timeline with time slots
Schedule2.2Create site visit with date/timeEntirely Portal<24hr = rush fees flagged
Schedule2.3Receive confirmationPortal / EmailDate, time, address, scope, tech
Schedule2.4Notify field crewInternalEnsure access, records, someone on site
Changes3.1Submit schedule change requestEntirely PortalReschedule, cancel, modify
Changes3.2Track approval/denialPortalNotification on status change
RFI4.1Receive deliverable request notificationPortal / EmailUP specifies what’s missing
RFI4.2Relay to field crewInternalForward specifics
RFI4.3Collect and submit deliverablesPortalUpload to project files

5. General Operations Account — GOA (EXTERNAL)

Branch managers use the Branch Dashboard for branch-scoped oversight.

PhaseStepActionToolDetails
Monitor1.1Review Branch DashboardEntirely PortalBranch-scoped metrics with sparklines
Monitor1.2Check “Needs Attention” alertsPortalProjects stalled, missing data, overdue
Monitor1.3Review Calendar for upcoming inspectionsPortalBranch-filtered, status/color coded
Coordinate2.1Review project listPortalFilter by status, branch, search
Coordinate2.2Submit schedule change requestsPortalReschedule or cancel
Coordinate2.3Coordinate with scheduler on intakePortal / EmailNew project submissions

6. Triage (EXTERNAL)

Triage investigators handle stale or unassigned projects through a dedicated pipeline.

PhaseStepActionToolDetails
Investigate1.1Review Triage PipelineEntirely Portal5-column Kanban: Intake → Scheduled → Field Complete → Certification → Closed
Investigate1.2Submit new triage intakePortalAuto-enrichment applies
Investigate1.3Research project historyPortal / TrackerPrior visits, notes, correspondence
Resolve2.1Determine resolution actionPortalReschedule, close, escalate
Resolve2.2Track resolutionTrackerStatus updates, resolution notes
Archive3.1Closed projects >90 days move to ArchivePortalRead-only historical view

7. Contractor Field Crew (EXTERNAL)

PhaseStepActionDetails
Pre-Inspection1.1Ensure work area accessibleClear debris, open crawlspaces, products visible
Pre-Inspection1.2Have install records availablePier logs, counts, specs
During2.1Provide site access to UP techMeet tech, show work areas, unlock spaces
During2.2Answer installation questionsMethods, quantities, difficulties
During2.3Point out scope changes vs. plansProactively inform of deviations
Post3.1Provide missing photos if requestedVia WhatsApp/text to office staff
Post3.2Provide driving log dataPSI, depths, extensions
Post3.3Confirm as-built quantitiesIf discrepancy found

8. Contractor Accounts Payable (EXTERNAL)

AP has self-service access via the AP Portal for invoice lookup, remittance upload, and payment history.

PhaseStepActionToolDetails
Receipt1.1Receive invoice from StripeEmailLine items, custom fields, total
Receipt1.2Look up invoice in AP PortalAP PortalSearch by invoice number or date
Receipt1.3Review for accuracyAP Portal / EmailProducts, address, amounts
Receipt1.4Route for internal approvalInternalPO matching or management approval
Payment2.1Process payment via StripeStripe portalCredit card or ACH
Payment2.2Upload remittance fileAP PortalCSV or PDF — auto-parsed for reconciliation
Payment2.3View payment history and reconciliation statusAP PortalAll invoices with payment state
Overdue3.1Receive payment reminderStripe (auto)Automated reminders