Skip to content

Pre-Transaction Validation Procedures

Document ID: PLCY-VAL-001
Version: 1.1
Effective Date: December 22, 2025
Last Review: December 22, 2025
Owner: Hop And Haul Team


CONFIDENTIAL

This document is CONFIDENTIAL and for internal use only. Do not distribute outside the organization.

1. Purpose

This document defines the mandatory validation checks executed before any ride match is finalized in Hop And Haul. These controls ensure compliance with DOT, FMCSA, and company safety requirements.


2. Validation Framework

2.1 Validation Timing

PhaseValidations PerformedBlocking
Request submissionRequesting driver eligibilityYes
Match identificationPickup driver eligibilityYes
Pre-acceptanceVehicle and insurance statusYes
Post-acceptanceFinal safety confirmationYes

2.2 Failure Handling

  • Any failed validation blocks the transaction
  • Failure reason logged (not exposed to other party)
  • Operations notified for manual review if needed

3. Driver Validation Checks

3.1 Requesting Driver (Passenger)

CheckData SourcePass CriteriaFailure Action
Active employment statusHR SystemStatus = ActiveBlock request
Valid driver credentialsHR SystemCDL not expiredBlock request
Not under suspensionHR SystemNo active suspensionBlock request
Company authorizationHR SystemAuthorized for transportBlock request

3.2 Pickup Driver

CheckData SourcePass CriteriaFailure Action
Active employment statusHR SystemStatus = ActiveExclude from matches
Valid CDL on fileHR SystemCDL not expired, correct classExclude from matches
HOS complianceSamsara ELDSufficient hours remainingExclude from matches
Not in violation statusSamsara ELDNo active violationsExclude from matches
Opted-in to transportHop And HaulTransport flag = enabledExclude from matches

3.3 Hours of Service (HOS) & ELD Validation

Critical Principle: Hop And Haul matches must NEVER cause a driver to exceed HOS limits. All ELD data must be queried in real-time before any match is offered.

3.3.1 FMCSA HOS Rules Enforced

RuleLimitValidation Logic
11-Hour DrivingMax 11 hours driving after 10 hours off-dutyremaining_drive_hours >= trip_time + 45 min buffer
14-Hour WindowCannot drive beyond 14th hour after on-duty14hr_window_remaining >= trip_time + 45 min buffer
30-Minute BreakRequired after 8 cumulative driving hourstime_to_break >= trip_time OR break available on route
60/70-Hour WeeklyMax 60/70 hours in 7/8 consecutive daysweekly_hours_remaining >= trip_time + buffer
10-Hour Off-Duty10 consecutive hours required before drivinglast_10hr_rest_completed = true
34-Hour RestartResets weekly clockValidated in weekly calculation

3.3.2 ELD Data Required for Match

Data PointSourceFreshness Requirement
Current duty statusSamsara ELD APIReal-time (<60 sec)
Hours driven since last 10-hr off-dutySamsara ELD APIReal-time
Time since on-duty startSamsara ELD APIReal-time
Cumulative driving since last 30-min breakSamsara ELD APIReal-time
Hours worked in last 7/8 daysSamsara ELD APIRefreshed hourly
Last 10-hour off-duty periodSamsara ELD APIRefreshed on status change

3.3.3 Buffer Calculation Formula

estimated_trip_time =
    drive_to_pickup +
    pickup_dwell (2 min) +
    drive_with_passenger +
    dropoff_dwell (2 min) +
    return_to_original_route

required_hours = estimated_trip_time + 30 min HOS buffer + 15 min delay buffer

3.3.4 HOS Gate Check (All Must Pass)

CheckCalculationThreshold
Driving hours11 - hours_driven_today>= required_hours
14-hour window14 - hours_since_on_duty>= required_hours
Break compliancetime_until_break_required>= required_hours
Weekly hours60 or 70 - hours_this_period>= required_hours
Minimum remainingN/A>= 60 minutes minimum

3.3.5 ELD Fallback Behavior

ScenarioAction
ELD data unavailableEXCLUDE DRIVER - never assume compliance
ELD data stale (>60 sec)Re-query before proceeding
ELD query timeout (>10 sec)Retry once, then exclude driver
Conflicting statusEXCLUDE DRIVER - require operations review

3.3.6 Minimum Eligibility Thresholds

Drivers are excluded from ALL match offers if:

ConditionThreshold
Driving hours remaining< 60 minutes
14-hour window remaining< 60 minutes
Weekly hours remaining< 60 minutes
Time to required break< trip_time + buffer
Duty statusNot "Driving" or "On-Duty"

4. Vehicle Validation Checks

4.1 Vehicle Eligibility

CheckData SourcePass CriteriaFailure Action
Passenger seat enabledVehicle Configpassenger_transport = trueExclude vehicle
Vehicle active statusSamsaraStatus = activeExclude vehicle
No critical alertsSamsaraNo safety alerts activeExclude vehicle
Inspection currentFleet SystemDVIR compliantExclude vehicle

4.2 Seatbelt Confirmation

RequirementImplementation
Pre-trip confirmationDriver confirms passenger seatbelt available
Policy flagVehicle configured for passenger transport
Audit recordConfirmation logged with timestamp

5. Insurance Validation Checks

5.1 Coverage Requirements

CheckData SourcePass CriteriaFailure Action
Active liability coverageInsurance SystemPolicy activeBlock all matches
Intra-company rider endorsementInsurance SystemEndorsement = activeBlock all matches
Coverage effective dateInsurance SystemCurrent date within policy periodBlock all matches

5.2 Endorsement Verification

Required Endorsement: Explicit intra-company rider coverage

Verification Process:

  1. Query insurance system for vehicle policy
  2. Confirm rider endorsement attached
  3. Verify endorsement effective dates
  4. Cache result (refresh daily)

6. Same-Day Trip Constraint Validation

6.1 Core Principle

All Hop And Haul matches are same-day, en-route only. No overnight trips permitted.

This constraint ensures:

  • Drivers never share sleeping quarters in the cab
  • Trips complete within a single duty cycle
  • Both drivers return to normal operations the same day

6.2 Trip Window Checks

CheckValidation LogicFailure Action
Same calendar daypickup_date == estimated_dropoff_dateReject match
Within 14-hour windowdropoff_time + 60 min < 14hr_window_endReject match
Duration captotal_trip_duration <= 4 hoursReject match
Daily cutoffcurrent_time < 20:00 localQueue for next day
Morning startcurrent_time >= 06:00 localQueue until morning

6.3 Operational Day Window

operational_window_start = driver's on-duty start time (from ELD)
operational_window_end = MINIMUM of:
    - operational_window_start + 14 hours (FMCSA 14-hour rule)
    - 23:59 local time (same calendar day)
    - operational_window_start + remaining_driving_hours

trip_must_complete_by = operational_window_end - 60 minutes

6.4 Trip Timing Validation

ScenarioOutcome
Drop-off would occur after midnightREJECT - violates same-day
Drop-off would occur after 14-hour windowREJECT - violates HOS
Trip duration exceeds 4 hoursREJECT - too long for en-route
Match requested after 8 PM localQUEUE for next operational day
Driver has <2 hours remaining in duty dayEXCLUDE from all matches

6.5 En-Route Requirement

Matches are only valid when naturally en-route:

CriteriaRequirementValidation
Route overlapPickup within 15 miles of driver's routeGPS route comparison
Drop-off alignmentDrop-off within 15 miles of driver's routeGPS route comparison
Directional matchDrop-off is in driver's travel directionRoute heading analysis
Minimal deviationRoute adds < 30% to remaining distanceDeviation calculation

6.6 Overnight Trip Prohibition

This setting cannot be overridden:

yaml
same_day_constraints:
  overnight_trips_allowed: false  # HARD-CODED - NOT CONFIGURABLE
  require_same_calendar_day: true  # HARD-CODED - NOT CONFIGURABLE

The platform will never match a driver for a trip that would:

  • Require sleeping arrangements in the cab
  • Span multiple calendar days
  • Continue past the driver's 14-hour window

7. Pre-Pickup Checklist

7.1 System-Validated Items

Before ride proceeds, system confirms:

[ ] REQUESTING DRIVER
    [ ] Employment status: Active
    [ ] Driver credentials: Valid CDL on file
    [ ] Authorization: Approved for transport
    [ ] No active suspension

[ ] PICKUP DRIVER
    [ ] Employment status: Active
    [ ] Driver credentials: Valid CDL on file
    [ ] Transport opt-in: Enabled

[ ] HOS/ELD COMPLIANCE (Pickup Driver)
    [ ] 11-hour driving: Sufficient hours remaining
    [ ] 14-hour window: Trip completes within window
    [ ] 30-minute break: Compliant or break available
    [ ] 60/70-hour weekly: Within limits
    [ ] Duty status: Driving or On-Duty
    [ ] ELD data: Fresh (< 60 seconds)
    [ ] No active ELD violations

[ ] SAME-DAY TRIP CONSTRAINTS
    [ ] Drop-off same calendar day as pickup
    [ ] Drop-off before 14-hour window expires
    [ ] Trip duration under 4 hours
    [ ] Current time within matching hours (6 AM - 8 PM)
    [ ] Driver has >= 2 hours remaining in duty day

[ ] VEHICLE
    [ ] Passenger transport: Enabled
    [ ] Vehicle status: Active
    [ ] Safety alerts: None critical
    [ ] Inspection: Current

[ ] INSURANCE
    [ ] Liability coverage: Active
    [ ] Rider endorsement: Confirmed
    [ ] Policy period: Current

7.2 Driver-Confirmed Items

Pickup driver confirms before departure:

[ ] Passenger seatbelt available and functional
[ ] Cab clear of hazards
[ ] Route understood

8. Validation Logging

8.1 Log Structure

Each validation produces an audit record:

FieldDescription
validation_idUnique identifier
transaction_idAssociated ride request
check_typeWhich validation performed
data_sourceSystem queried
resultPass/Fail
failure_reasonIf failed, why (coded)
timestampWhen validation ran
cache_statusFresh query or cached result

8.2 Log Retention

  • All validation logs retained 24 months
  • Failed validations flagged for review
  • Aggregate reports generated weekly

9. Override Procedures

9.1 No System Overrides

Policy: Pre-transaction validations cannot be bypassed.

ScenarioPermitted OverrideRequired Action
Driver HOS borderlineNoWait for hours to reset
Insurance query timeoutNoRetry or manual verification
Vehicle flag incorrectNoUpdate vehicle configuration first
Emergency transport needNoUse alternative transport method

9.2 Manual Verification Escalation

When automated validation cannot complete:

9.2.1 Escalation Triggers

TriggerExample
System timeoutInsurance API unresponsive >30 sec
Data conflictELD shows different status than HR system
Edge caseValid data but outside automated rules

9.2.2 Manual Verification Process

StepActionOwnerMax Duration
1System flags "pending verification"AutomatedImmediate
2Operations receives alertAutomated<5 min
3Ops reviews validation detailsOperations15 min
4Ops collects evidence (screenshots, API responses)Operations-
5Ops documents verification basisOperations-
6Supervisor approves or rejectsOps Supervisor30 min
7Decision logged with evidenceSystemImmediate

9.2.3 Required Evidence

Validation TypeRequired Evidence
Insurance gapPolicy document screenshot, carrier confirmation
HOS conflictELD log screenshot, carrier confirmation call
Driver statusHR system screenshot, supervisor confirmation
Vehicle statusFleet system screenshot, inspection record

9.2.4 Approval Authority

Validation TypeMinimum Approver
InsuranceSafety Manager
HOSOperations Supervisor
Driver eligibilityHR Manager
Vehicle statusFleet Manager

9.2.5 Expiration

  • Pending verifications expire after 4 hours
  • Expired verifications require new request
  • No "standing" manual overrides

9.2.6 Audit Trail

All manual verifications logged with:

  • Original validation failure reason
  • Evidence collected (attached or referenced)
  • Approver identity and timestamp
  • Approval/rejection decision
  • Complete timestamp chain

10. DOT/FMCSA Documentation

10.1 Required Records

For DOT audit compliance, system maintains:

RecordContentRetention
Transport authorizationCompany approval for ride24 months
HOS snapshotDriver hours at time of match24 months
Operational necessityReason code for transport24 months

10.2 Audit Response

On regulatory inquiry, system can produce:

  • Proof transport was operationally necessary
  • Proof transport was company-authorized
  • Proof HOS rules were not violated
  • Proof insurance coverage was in effect

11. Document Control

VersionDateAuthorChanges
1.0December 22, 2025Hop And Haul TeamInitial release
1.1December 22, 2025Hop And Haul TeamEnhanced HOS/ELD validation (3.3), added Same-Day Trip Constraints (Section 6)

CONFIDENTIAL - Internal Use Only - Hop And Haul Policy Documentation