Support Center

Everything you need to master DailyDSP

Quick Start

Getting Started with DailyDSP

Welcome to DailyDSP! Learn how to log in, navigate the app, and set up your profile.

Logging In

First-Time Login (Phone-Only Invitations)

DailyDSP invitations arrive by SMS — no email is required. When your owner or ops manager invites you, you'll receive a text on the phone number they registered:

  1. Tap the registration link in the SMS you received from DailyDSP
  2. The link opens your DailyDSP registration page in any mobile or desktop browser
  3. Enter your name, choose a username, and create a password following these requirements:
    • Minimum 8 characters
    • At least one uppercase letter
    • At least one number
  4. Click Register to complete your account setup
  5. You'll be redirected to the login page
Tip: Registration links are valid for 7 days (30 days for an owner's first invite). If yours expires, ask your admin to resend it — they can re-issue with one click from the Users page.
Drivers: When a driver is added to your roster, they receive their own SMS link to the Driver Portal — no app to install. Same secure 48-character token, same one-tap onboarding.

Regular Login

  1. Navigate to your DailyDSP URL (e.g., https://plad.dailydsp.com)
  2. Enter your username or email
  3. Enter your password
  4. Click Sign In
Tip: Bookmark your login page for quick access

Understanding the Navigation

After logging in, the main navigation is across the top of the page:

Icon Menu Item Description
DashboardYour daily operations hub — routes, vehicles, messaging, check-ins
DriversDriver roster, certifications, and status management
VehiclesFleet management, service types, affinity / maintenance / vendor shortcuts
ScheduleWeekly schedule builder, generate, copy previous week, templates, presets, and Amazon variance
PerformanceUpload Amazon DSP scorecard PDFs — sectional ovals, standings, BoC/CAS
MessagingSMS conversations, templates, and message history
What's NewAfter an update: View (full history), Snooze (icon stays), or Skip (gone until the next deploy)
HelpOpens this Support page to the section for whatever screen you are on (Dashboard, Drivers, Vehicles, Schedule, Performance, Messaging, Settings, …)
SettingsYour profile, tenant configuration, users, and billing

Affinity, Maint. Board, and Vendors are reached from the Vehicles page (buttons in the header). The first time you open Dashboard, Drivers, Vehicles, Schedule, or Performance, a short guided tour highlights the main controls. Turn tours on or off in Settings → General → Page tutorials.

After DailyDSP is deployed, a What's New prompt lists what changed. View opens a newest-first history. Snooze keeps a star icon in the header. Skip hides it until the next update.

Setting Up Your Profile

Proper profile setup ensures you receive notifications and the app displays times correctly.

Accessing Your Profile

  1. Click your name in the top-right header
  2. Or open Settings → General for timezone, time format, and page tutorials

Profile Settings

Setting Description Recommendation
First NameYour first nameRequired
Last NameYour last nameRequired
EmailYour email addressUse a monitored email
PhoneYour mobile numberInclude country code (+1)
TimezoneYour local timezoneSet to America/New_York for EST
Time Format12-hour or 24-hour clocksSet in Settings → General
Page tutorialsFirst-visit guided tours on Dashboard, Drivers, Vehicles, Schedule, and PerformanceOn by default; turning on again resets seen tours

Changing Your Password

For security, change your password periodically:

  1. Click your name in the top-right header
  2. Scroll to the Change Password section
  3. Enter your Current Password
  4. Enter your New Password (must meet requirements)
  5. Confirm your New Password
  6. Click Change Password
Security Tip: Use a unique password and don't share it with others
Daily Operations

Daily Dispatch Workflow

The complete daily workflow for managing route dispatch in DailyDSP.

Workflow Overview

1
Upload Routes Cortex or Daily Dispatch
2
Upload Staging Location data
3
Assign Vehicles Auto or manual
4
Send Messages SMS to drivers
5
Monitor Check-Ins Track arrivals

Step 1: Upload Routes

The Routes stepper accepts Amazon Cortex files and Amazon Daily Dispatch workbooks. DailyDSP detects which one you dropped — there is no format picker.

Getting the Routes File from Cortex

  1. Log into Amazon Logistics (logistics.amazon.com)
  2. Navigate to Operations → Delivery
  3. Select your station (e.g., DDC4 - Sterling)
  4. Ensure the correct date is selected
  5. Click the Download button (⬇️ icon)
  6. Save the .xlsx file

Amazon Daily Dispatch

Daily Dispatch workbooks have a Summary sheet plus a station sheet (for example DDC4) with Cycle, Start time, Route, Service Type, DA, DA ID, Staging, Vehicle, Stops, and Packages.

  • Station and date come from the workbook, not the filename. Upload routes shows that DailyDSP detected Amazon Daily Dispatch — verify or edit below the banner
  • Vehicle matches your fleet by Amazon Fleet ID. If that van is not in Vehicles, the route stays unassigned and the import lists a warning. DailyDSP does not create vans from this file
  • Rows with a blank Route are skipped so they do not create empty routes. Re-upload the same file later in the morning when Amazon fills Route, Staging, and Vehicle
  • Drivers match on DA ID (transporter ID) first, then DA name

Uploading to DailyDSP

  1. Go to the Dashboard
  2. Select the correct date using the date picker (Daily Dispatch can overwrite this from the workbook)
  3. Click the Routes stepper (upload icon) and choose your Cortex or Daily Dispatch file
  4. Cortex and Day-of-Ops still use the filename. If that name cannot be parsed, enter station and date yourself
  5. Click Upload
Import Complete says whether station and date came from the filename, the Daily Dispatch workbook, or what you typed. Drivers match by Transporter ID (TID) first — names are only a fallback.

Step 2: Upload Staging Information

Staging data tells drivers where their packages are located in the warehouse. Staging is already in Daily Dispatch — after a successful Daily Dispatch import, the guided workflow skips this step. You can still upload a separate Day-of-Ops staging file if you used Cortex instead.

What Gets Updated

FieldDescription
WaveScheduled departure time
Staging LocationWhere packages are staged (e.g., A1, B3)
Important: A separate Day-of-Ops staging upload only updates wave and staging location on routes that already exist. Stop counts stay with the routes file — upload routes first. After Daily Dispatch, skip this step.

Step 3: Assign Vehicles

Vehicles can be assigned automatically (based on affinity) or manually.

Auto-Assign Vehicles

  1. Click the In-Service Vans stepper (auto-assign)
  2. The system assigns vehicles in this order:
    • Primary / secondary / tertiary affinity
    • Prior-day van (if that affinity option is on)
    • Matching service type, then any remaining in-service van
  3. Certification class (CDV / DOT / Electric) must match the driver. If Strict Service Type Match is on (Affinity page), a van is never auto-assigned unless its Amazon service type equals the route’s.

Manual Vehicle Assignment

  1. Find the route in the table
  2. Click the Vehicle cell
  3. Select a vehicle from the dropdown
  4. The assignment saves automatically

Step 4: Send Driver Messages

Notify drivers of their assignments via SMS.

Message Content

The default message includes:

  • Driver's name
  • Route number
  • Vehicle assignment
  • Wave time
  • Staging location

Message Status

StatusMeaning
✅ Green checkmarkMessage delivered
🟡 YellowMessage pending/sent
❌ Red pillFailed or undelivered — short reason (for example Opted out) instead of a generic Failed. Hover or tap for what to do next and the Twilio code
⚪ GrayNo phone number

Step 5: Monitor Check-Ins

Check-In Status Indicators

ColorStatusMeaning
🟢 GreenOn TimeChecked in early enough per Settings → Check-in Thresholds
🟡 YellowWarningChecked in close to wave (warning window)
🔴 RedLate / Call Out / NCNSChecked in at or after the late threshold, called out, or no-call-no-show

Daily Checklist

Daily Operations

Dashboard Deep Dive

An in-depth look at all Dashboard features for daily operations.

Dashboard Overview

The Dashboard is your central hub for daily operations. It displays:

  • Routes for the selected date
  • Driver and vehicle assignments
  • Check-in status
  • Message delivery status
  • Quick action buttons

Quick Statistics

IndicatorDescription
RoutesRoutes for the selected date. Orange triangle = duplicate route numbers (same station). Red unassigned = Cortex-planned numbers not currently on any row
StagingRoutes that have a staging location. Orange triangle = the same slot used on more than one route
In-Service VansClick to auto-assign vans. Count is in-service vehicles available for dispatch
Tip: The Routes / Staging / In-Service Vans pills at the top are the morning workflow: upload Cortex or Daily Dispatch, upload staging (skipped after Daily Dispatch), then auto-assign vans.

A red unassigned badge on the Routes header means Cortex-planned route numbers for this date are not currently on any row (for example after a rename or deleting a row). Put those numbers back on a row, or re-import Cortex. Deleting every row for the day still leaves that reminder until the planned numbers are assigned again.

Orange mismatch warnings on a Type cell mean the route’s service type does not match the assigned van. Suppress those (and duplicate route/staging warnings) in Settings → Routes ignore lists. Custom service types are added to the ignore list automatically. Ignored types also skip the Strict Service Type Match gate during auto-assign.

Routes Table Columns

ColumnDescriptionEditable
RouteAmazon route code (dropdown includes Cortex-planned numbers)✅
StationDelivery station✅
TypeService type — Amazon-imported names plus any custom types for your location✅
WaveScheduled departure time✅
DriverAssigned driver✅
VehicleAssigned vehicle (in-service vans only)✅
StopsStop / zone count from the Cortex or Daily Dispatch routes file❌ (import)
StagingStaging location✅
StatusPending, Assigned, Ready, Message Sent, Checked In, Called Out, or NCNS❌ (computed)
ActionsInclude/exclude from auto-assign, copy row, Check In / Call Out / NCNS—

Keyboard Shortcuts

ShortcutAction
EnterSave current edit
EscapeCancel current edit
TabMove to next cell
Shift+TabMove to previous cell
Management

Schedule Builder & Variance Management

Build weekly schedules with drag-and-drop shift presets, generate from repeating work shifts, copy last week, and compare against Amazon's expected roster to catch mismatches instantly.

Overview

DailyDSP's Schedule module gives you complete control over weekly planning:

  • Visual weekly grid — click a cell to add a shift, or drag templates and presets
  • Generate Schedule — always available; fills empty days from repeating work shifts after a preview. Empty repeating days show a faint calendar-plus (not a sync icon)
  • Copy previous week — toolbar, or right-click a day, a driver, or the Driver heading
  • Recurring — a modifier: sync on a shift, heart, or ban to repeat weekly. Preferred and unavailable already show on future weeks without Generate
  • Templates — a full week of shifts (multiple days). Drag onto a driver's name to apply the whole week. Each enabled day can have its own Label
  • Presets — a single shift (start, end, service type). Drag onto a specific day for a driver; the preset name becomes the shift label
  • Drag to move — drag an existing shift onto another empty cell in the same week
  • Mass-clear — right-click a day, a driver, or the Driver header to clear many shifts at once (after a warning)
  • Driver heading — left-click sends the portal link to every driver on the grid
  • Publish Week — drafts stay private until you publish; drivers then see shifts in their portal
  • Amazon variance — compare your schedule to Amazon’s rostered work blocks

Templates vs Presets

Both live in the bars just under the Schedule title.

TemplatePreset
What it isSeveral shifts across the weekOne shift (start–end, optional service type)
CreateNew Template — pick which days are on, the times, and an optional Label per day (max 36 characters). The template name is not copied onto shiftsNew Preset — name, start, end, service type
ApplyDrag onto the driver’s name (left column). Each day’s label is copied onto that day’s shiftDrag onto a day cell for that driver. The preset name becomes the shift label
EditClick the template chipClick the preset chip

Building a Weekly Schedule

  1. Select the week using the arrows or week picker
  2. Click Generate Schedule any time to fill empty days from repeating work shifts (it asks first with a count; already-filled days stay). After you mass-clear a week, Generate still works
  3. Or click Copy previous week to copy last week’s assigned shifts onto this week as drafts
  4. Your active drivers appear as rows
  5. Click an empty cell to add a shift, drag a preset onto a day, or drag a template onto a driver name
  6. Optionally add a short label (up to 36 characters) when creating or editing a shift — occupied cells show it as a pill next to the time
  7. Click an existing shift to edit or remove it, or drag it onto another empty cell in this week to move it
  8. When drafts look right, click Publish Week so drivers can confirm in the portal

Generate Schedule

Generate Schedule is always available. It fills empty days from repeating work shifts (the sync icon on a scheduled shift). It asks first with a count, never replaces a day that already has a shift, and can be clicked again — including after you mass-clear a week.

  • Empty days that will fill show a faint calendar-plus icon, not a sync icon
  • Preferred (heart) and unavailable (ban) already show on future weeks without Generate — Generate does not create those
  • Generate and Copy previous week will not assign a shift onto a day the driver is unavailable (set by the driver or a scheduler). If any were skipped, DailyDSP asks: create those as open shifts (no driver) or drop them

Copy Previous Week

The toolbar Copy previous week copies last week’s assigned shifts onto the week you are viewing as drafts. Days that already have a shift are skipped. Open and unassigned marketplace posts are not copied. You still Publish Week so drivers can see the drafts.

  • Toolbar or right-click the Driver heading — whole week, all drivers (same action)
  • Right-click a day header — Copy previous [day] (that weekday from last week, all drivers)
  • Right-click a driver name — only that driver’s assigned shifts from last week

Recurring, Preferred, and Unavailable

Recurring is a modifier on whatever the cell already is — not a separate shift type.

  • Heart + sync — preferred every week on that weekday
  • Ban + sync — unavailable every week on that weekday
  • Sync on a shift — that work shift repeats weekly
  • Preferred and unavailable paint forward without Generate. Generate only fills work shifts. A generated shift on a preferred day still shows the heart
  • On an empty day, the ban icon marks one-time unavailable (PTO) and the heart marks preferred
  • The empty-cell top-right sync is gone. Sync is only on a preferred, unavailable, or scheduled cell — never a one-click “create unavailable” from a blank day. To repeat weekly, hover that cell and click its top-right sync icon

Drag a Shift to Another Driver or Day

On the weekly grid, drag an existing shift onto another empty cell in the same week to move it.

  • Past days cannot be dragged from or dropped onto. Today is allowed both ways
  • Dropping on a day that already has a shift does nothing — DailyDSP does not swap two shifts
  • A moved shift goes back to draft, so publish again if drivers should see it
  • Recurring: only that day’s instance moves. The weekly pattern stays on the original driver and day for future weeks
  • Same-cell drop is a no-op. Clicking a shift (without dragging) still opens the editor
  • Preset drag onto a cell and template drag onto a driver name still work as before

Shift Labels

Each shift can have an optional short label (up to 36 characters). Occupied cells show it as a compact pill next to the time; hover to see the full name if it is cut off. Leave it blank and no pill appears.

  • Set or clear the label in the Create/Edit Shift modal
  • Applying a preset (click or drag) uses the preset name as the shift label
  • Weekly templates can set a different Label on each enabled day (New/Edit Template). Applying the template puts that day’s label on the shift. The template name is not used as the shift label
  • When you Generate a week from repeating shifts, each new day keeps the same label. A blank label stays blank
  • Moving or editing a shift without changing the label leaves the label in place. Editing the label on a still-recurring instance updates later generated weeks

Click, Right-Click, and Mass-Clear

Clear many shifts at once after a warning confirmation that names the scope. Cancel leaves the schedule unchanged. Weekly templates, presets, and repeating-shift blueprints (the sync icon on a scheduled shift) are not removed — Clear only deletes this week’s shifts.

WhereLeft-clickRight-click
Day column headerQuick actions (Apply Template, Create Routes, Send Reminders)Copy previous [day] or Clear day (every shift that day, all drivers)
Driver nameReliability cardsCopy previous week (that driver) or Clear driver week
Driver header (top-left of the grid)Send portal link to every driver on the grid (asks first with a count)Copy previous week, Send portal link, or Clear all shifts (week)
Note: Mass-clear permanently deletes this week’s shifts. Repeating-shift blueprints, weekly templates, and presets stay. Confirm the warning before you proceed.

Reliability Cues on Driver Names

Each driver name in the left column is pastel-shaded from that driver’s last 90 days of attendance: late arrival warnings, late load-outs, call-outs, and NCNS combined. A note under the name shows N events · 90d.

  • 0 events — green; 1–2 — yellow; 3–4 — orange; 5+ — stronger red
  • Left-click the name to open the same four reliability cards the driver sees in the portal (14 / 30 / 90-day chips)
  • Right-click the driver name to Copy previous week (that driver only) or Clear driver week

Schedule Column Actions (Per-Day Quick Actions)

Click any day's column header in the weekly grid to open a quick-action menu. The menu adapts to the day's state (template available, routes already created, etc.):

ActionWhat it does
Apply TemplateDrop a saved weekly template into the current week — preserves any manual edits already made
Create Routes from ScheduleGenerates placeholder Route rows for every driver scheduled that day. The morning Cortex import then merges those placeholders into real routes by (date, driver) instead of duplicating — saving you a re-assignment pass.
Send Shift RemindersSMS every driver scheduled for that day. Uses your active "Shift Reminder" message template if you've defined one; otherwise sends a default reminder with shift times.
Copy previous [day] (right-click)Copies that weekday’s assigned shifts from last week onto this week, all drivers. Days that already have a shift are skipped.
Clear day (right-click)Deletes every shift on that day after a confirmation warning. See Mass-Clear Shifts above.
Tip: "Create Routes from Schedule" is safe to run the night before — placeholders get upgraded automatically when you import routes in the morning.

Reusing Templates

Keep named templates (for example “Full Time AM”) and drop them onto drivers whenever you build a new week. You can also use the column-header Apply Template action for a single day.

Best Practice: Create templates for your common weekly patterns — standard weeks, holiday weeks, reduced operations — and apply them with one drag

Amazon Variance Tracking

Compare your DailyDSP schedule against Amazon's expected roster to catch mismatches before they become problems.

Uploading Amazon's Expected Schedule

  1. Download the expected schedule from Amazon Logistics
  2. On the Schedule page, click Upload Amazon Schedule
  3. Select the downloaded file
  4. DailyDSP automatically compares it against your schedule

Understanding Variance Cards

DailyDSP shows five variance cards at the top of the report. Each is clickable and filters the table to that category:

CardColorMeaning
In Sync with Amazon🟢 GreenDriver and shift times match exactly across your schedule and Amazon's roster — no action needed
Time Mismatch🟠 AmberDriver is on both schedules, but the shift start or end times don't match — adjust before dispatch to avoid late or short routes
Amazon Rostered Not Scheduled🔴 Red (CRITICAL)Driver is on Amazon's roster but NOT in your schedule — Amazon expects them on a route but you haven't planned for them
DailyDSP Sched Only🟠 OrangeDriver is in your schedule but NOT on Amazon's roster — expected if you over-schedule for coverage, otherwise investigate
Amazon Sched Only🟡 YellowDriver is on Amazon's schedule but not on Amazon's roster and not in your DailyDSP plan — usually means a new addition mid-week

Fuzzy Name Matching

If a driver's Transporter ID differs between Amazon's file and your roster (common after a re-onboarding), DailyDSP falls back to fuzzy name matching (≥0.8 similarity) so typos and capitalization don't show up as false variances. The match is logged so you can audit it later.

Critical: "Amazon Rostered Not Scheduled" drivers need immediate attention — Amazon expects them on a route but they're not in your plan. Fix by 7 PM the day before or route generation may fail.
Tip: Re-upload Amazon's file anytime as plans change — variance recomputes instantly without losing your edits.
Management

Performance — Amazon DSP Scorecards

Upload weekly Amazon DSP scorecard PDFs. DailyDSP shows Amazon’s sections as rounded ovals with printed standings — and fills each driver’s Scorecard pill from the same files.

Overview

Performance is in the top nav after Schedule. Upload the weekly Amazon DSP scorecard PDF(s) for your delivery station(s). The page is independent of Schedule’s week picker and does not change the driver portal’s week.

  • Scorecard history at the top counts every uploaded week: Fantastic Plus (green), Fantastic (yellow), and Good and below (red), using Amazon’s printed Overall Standing line
  • This week’s scorecard follows Amazon’s sections: Safety and Compliance, Delivery Quality, Pickup Quality (when Amazon prints it), and Team and Fleet
  • Sections start collapsed — you see the section name and its overall rating. Tap the header (or the chevron) to show metric ovals; tap again to hide them
  • The first time you open Performance, a short guided tour highlights the main controls (same Page tutorials toggle as the other screens)

Uploading Scorecard PDFs

  1. Go to Performance
  2. Upload one or more Amazon scorecard PDFs — pick several files, or drop a folder of weeks. DailyDSP saves them one after another and lists which files saved
  3. Multi-station DSPs keep one scorecard per delivery station for the same week. DailyDSP reads the page-1 header (for example ABCD at DDC4) so uploading DDC4 does not overwrite ABE2
Tip: A slow PDF upload no longer looks like a hard failure — wait or refresh; it may already be saved. Opening Performance re-reads saved PDF text, so already-uploaded weeks pick up printed standings without a re-upload.
Format drift: Amazon changes scorecard layout several times a year. DailyDSP keeps every metric it still recognizes. Unmatched Safety or Delivery Quality metrics with no number show as TBD, and DailyDSP opens a support ticket with the PDF attached. Glossary text, appendix notes, and missing Team and Fleet lines (Capacity, Attendance) do not trigger that warning.

Station Pills & Week Selector

Station pills sit to the left of prev / week / next / This Week. Tap a station to see that site’s metrics for the selected week. One station still shows its code.

  • Prev / next / This Week step through uploaded scorecard weeks only. This Week is the latest upload
  • Changing week keeps the last station if that week has it; otherwise it opens the first station available
  • This cursor is not Schedule’s week and does not change Schedule or the driver portal

Scorecard load history at the bottom lists each upload’s week, station, status, and date/time.

Sectional Ovals & Amazon Standings

Each metric is a rounded oval, not a stop-light. The heading is Amazon’s printed standing — never a generic “below Fantastic”:

Fantastic, Great, Fair, Poor, Fantastic Plus, Coming Soon, Compliant, and Week 9 BoC Non - Compliant (Amazon’s spacing around the hyphen).

Coaching colorWhen
🟢 GreenFantastic with zero events, Coming Soon, or Compliant
🟡 YellowFantastic with events (the number stays readable)
🔴 RedGreat, Fair, Poor, Non-Compliant, or any standing other than Fantastic / Compliant / Coming Soon

Tap the i on a metric and the Appendix A explanation renders above the page (not inside the oval), so the full text stays visible.

  • DSB goal is 0 — any event is yellow when Amazon still printed Fantastic, red if the standing is not Fantastic. DSB covers six DA-controllable behaviors: simultaneous deliveries, delivered >50 meters, inaccurate scan (unattended), inaccurate scan (attended), No-POD, and scanned-not-delivered-not-returned
  • Safe Driving is station-wide on Performance only. Coming Soon is a clean green oval. It is not on the driver Scorecard

Breach of Contract & Comprehensive Audit (CAS)

Safety and Compliance includes Breach of Contract (BoC) and Comprehensive Audit (CAS) ovals. Headings use Amazon’s printed wording.

  • Compliant is green. Non-Compliant is red
  • Tap i for the Appendix A explanation: a BoC notice makes Compliance and Overall Standing Poor; Non-Compliant CAS blocks Fantastic / Fantastic Plus overall
  • BoC and CAS are station-wide on Performance only — they do not appear on the driver Scorecard pill

Driver Scorecard (portal)

The driver portal’s Scorecard pill uses that driver’s Current Week Performance row, matched only by Amazon transporter ID (never by name). Ovals stay compact and already expanded. Coaching colors follow that driver’s numbers. See Driver Portal.

Management

Driver Management

Add, edit, and manage your driver roster — including Amazon Transporter IDs, SMS language, and certifications.

Upload Baseline

The fastest way to load a roster is Amazon’s driver baseline file. On the Drivers page, click Upload Baseline, then use Preserve Local Values so curated phones and fuel PINs survive a re-import. See Smart Imports.

Adding a New Driver

  1. Navigate to Drivers
  2. Click Add Driver
  3. Fill in the required fields:
    • First Name and Last Name
    • Phone Number (with country code)
    • Email (optional)
    • Transporter ID — Amazon’s TID (unique per location)
    • SMS Language — English, Español, or Français
    • Certifications — CDV, DOT, Electric (used when auto-assigning vans)
  4. Set the driver's Status (Active / Inactive / Terminated)
  5. Click Add Driver

Transporter ID (TID)

Amazon assigns each driver a Transporter ID. DailyDSP matches Cortex routes, Amazon schedule files, baseline imports, and Performance scorecard rows on TID first; names are only a fallback (Scorecard never matches by name).

  • Keep the ID exactly as Amazon has it. A mismatch is the usual reason a Cortex row shows as unmatched
  • Amazon sometimes re-issues a TID (account reset, rehire). You can update it on the driver so the unique ID stays in sync
  • TIDs must be unique within your location

SMS Language

On each driver’s profile, set SMS Language to English, Español, or Français. Dispatch, reminders, scheduled messages, and AI replies go out in that language. Dispatchers still see the original plus an English translation in Messaging. See Multi-Language.

Tip: The SMS Language dropdown includes Français so you can edit a French-speaking driver without silently switching them to English or Spanish.

Driver Status

StatusDescriptionCan Receive Routes
ActiveAvailable for dispatch✅
InactiveTemporarily unavailable❌
TerminatedNo longer employed — hidden unless you check Show Terminated❌

Phone Number Format

For SMS to work correctly, phone numbers must:

  • Include country code (e.g., +1 for US)
  • Contain only digits after the country code
  • Be a mobile number capable of receiving SMS
Example: +14155551234
Management

Vehicle Management

Set up and manage your fleet with VIN decoding, service type matching, and status tracking.

Upload Baseline

Click Upload Baseline on the Vehicles page to import Amazon’s vehicle file (fleet IDs, VINs, service types). Re-imports can preserve local edits. See Smart Imports.

Adding a Vehicle

  1. Navigate to Vehicles
  2. Click Add Vehicle
  3. Enter the VIN — DailyDSP auto-fills Year, Make, and Model via NHTSA VIN decoding
  4. Fill in remaining details:
    • Vehicle ID — your internal identifier (e.g., VAN-001)
    • Service Type — Amazon or custom type (must match the route for auto-assign)
    • License Plate
    • Certification Class — optional CDV / DOT / Electric restriction
    • Service Status — In Service, Out of Service, or Maintenance
  5. Click Save
VIN Decoding: Just paste the 17-character VIN and DailyDSP automatically looks up Year, Make, and Model from the NHTSA database — no manual entry needed

Service Types

Amazon service types (for example “Standard Parcel - Large Van”) are discovered from Cortex and vehicle baseline imports. Every location on DailyDSP shares that Amazon list so a new DSP is not staring at an empty dropdown. You cannot invent Amazon types — they only appear when an import sees them.

Custom types are extra names for your location only (training, charter, nursery, and so on). They never show up in another DSP’s dropdown.

  • Create one from a Type dropdown (Add custom type…) on Dashboard, Vehicles, or Schedule, or from Settings → Routes → Custom service types
  • Remove a custom type from that Settings list (×). Historical routes keep the old name; it just leaves the dropdown
  • Amazon types cannot be deleted

Custom types are added to the Ignored Service Types list by default so they do not fire the dashboard route/vehicle mismatch warning. Remove a name from that ignore list if you want the warning. Assign the same custom type on both the route and the van if you want auto-assign to match them.

Vehicle Status vs Service Status

Each van has two independent flags:

ColumnValuesMeaning
Vehicle StatusActive / InactiveWhether the van is on the roster (operational)
Service Status — In ServiceIn ServiceReady for daily dispatch and eligible for auto-assign
Service Status — MaintenanceMaintenanceBeing serviced — track via Maint. Board
Service Status — Out of ServiceOut of ServiceNot available for dispatch

Auto-assign only considers vans that are Active and In Service.

Management

Vehicle Maintenance Kanban

Track every maintenance task with a visual drag-and-drop Kanban board. From oil changes to inspections, keep your fleet running smoothly.

Overview

The Maintenance Kanban board gives your team a visual way to track vehicle maintenance tasks through their lifecycle. Each task is a card that moves through columns as work progresses.

Kanban Columns

Cards flow from left to right as maintenance tasks progress:

ColumnPurpose
SoonUpcoming maintenance — scheduled but not yet urgent
This WeekNeeds to be completed this week
TodayScheduled for today
DoingCurrently in progress
DelayedBlocked or postponed — needs attention
VerifyingWork complete, awaiting verification
DoneCompleted and verified

Creating a Maintenance Card

  1. Click Add Card in any column
  2. Fill in the card details:
    • Title — e.g., "Oil Change - VAN-012"
    • Vehicle — select from your fleet
    • Type — Oil Change, Tire Rotation, Inspection, Repair, etc.
    • Description — additional details or notes
    • Due Date — when it needs to be completed
  3. Click Create

Moving Cards

As maintenance progresses, drag cards between columns:

  • Drag and drop a card from one column to another
  • Cards maintain their position within columns
  • All team members see card movements in real time

Card Comments

Add comments to cards for team collaboration:

  1. Click on a card to open its detail view
  2. Type your comment in the comment box
  3. Click Add Comment
  4. Comments show the author name and timestamp
Best Practice: Use comments to log parts ordered, vendor appointments, or any status updates so the whole team stays informed
Management

Driver-Vehicle Affinity

Configure driver-vehicle preferences for automatic assignment.

What is Affinity?

Driver-Vehicle Affinity allows you to set preferred vehicle assignments for each driver. When you use Auto-Assign Vehicles, the system uses these preferences to make intelligent assignments.

Affinity Levels

LevelPriorityDescription
Primary1st ChoiceDriver's preferred vehicle
Secondary2nd ChoiceBackup if primary unavailable
Tertiary3rd ChoiceLast resort option

Setting Up Affinity

  1. From Vehicles, click Affinity
  2. Each van has primary, secondary, and tertiary driver dropdowns — save as you go
  3. Optional toggles at the top:
    • Prior Day Affinity — prefer yesterday’s van when affinity is empty
    • Prior Day Precedence — try yesterday’s van before affinity
    • Strict Service Type Match — auto-assign refuses any van whose Amazon service type does not match the route (manual assignment is unaffected). Types on Ignored Service Types skip this gate so affinity or any available van can still be assigned

Auto-Assignment Logic

When you click In-Service Vans (auto-assign) on the Dashboard:

  1. Only vans that are operational and In Service are eligible
  2. Driver certification must match the van’s class (CDV / DOT / Electric) when a class is set
  3. Affinity (and optional prior-day van) is tried first, then a service-type match, then any remaining eligible van
  4. With Strict Service Type Match on, every pick must match the route’s service type or the route is skipped — except routes whose type is on Ignored Service Types (Settings → Routes), which get any available van
  5. Routes with no service type (backup rows) are not auto-assigned a van
Tip: After auto-assign, DailyDSP reports ignored service types separately (for example “2 service type(s) ignored: Nursery Route Level 3”) instead of counting them as mismatches.
Best Practice: Set up affinity for all active drivers to maximize auto-assignment efficiency
Driver Tools

Driver Self-Service Portal

A lightweight, browser-based portal with three views — Schedule, Reliability, and Scorecard — plus shift marketplace and today’s route. No app download required.

Overview

The Driver Portal is a mobile-friendly web app that drivers open from a unique link (SMS or dispatcher send). No App Store, no Google Play, no DailyDSP login, and no Help Chat. Drivers bookmark the link and they're ready to go.

  • No app required — works in Safari, Chrome, or any mobile browser
  • Three pills at the top: Schedule, Reliability, and Scorecard (the Scorecard pill always says Scorecard)
  • Schedule — live week, confirm shifts, availability, marketplace, today’s route
  • Reliability — 14 / 30 / 90-day attendance counts
  • Scorecard — that driver’s Current Week Performance from uploaded Amazon PDFs, matched by transporter ID only
  • Works on any device — iPhones, Android phones, even older models

Driver Access

Each driver gets a unique portal link for your location (for example a /my-schedule/… token in an SMS). They tap it, bookmark the page, and return with one tap. On Schedule, left-click the Driver heading to send the portal link to every driver on the grid (it asks first with a count). Right-click that heading for copy / clear / send portal.

Tip: Send the portal link via SMS — they just tap and bookmark. No “download our app” friction.

Three-Pill Carousel

A three-pill control sits under the greeting. The center pill is the current view; tap the left or right pill to rotate to that neighbor. The cycle wraps: Schedule ↔ Reliability ↔ Scorecard.

  • The top pills always read Schedule, Reliability, and Scorecard — the Scorecard label never becomes “Scorecard Performance”
  • Prev / next / Today on Schedule or Scorecard change the week only and stay on the same view. Only the pills switch between Schedule, Reliability, and Scorecard
  • Reliability has no week controls — it always uses rolling 14 / 30 / 90-day windows

Schedule

Drivers see their upcoming shifts in a clean, mobile-optimized view:

  • Current week displayed with shift times and types
  • Color-coded by shift preset (Morning, Mid, Evening)
  • Prev / next / Today to view other weeks
  • Off days shown clearly so drivers know their full schedule
  • Confirm shifts, set availability, and use the marketplace (give up / pick up)

Reliability

Four cards, each with 14-day, 30-day, and 90-day counts from the driver’s real route attendance (tenant timezone, rolling calendar days):

CardWhat it counts
Late Arrival WarningChecked in inside the warning window (Dashboard yellow)
Late Load OutChecked in at or after the late threshold (Dashboard red tardy)
Call OutsCall-out attendance
No Call No ShowsNCNS attendance

Call-out and NCNS days are not also counted as tardy. Count chips share one heat scale on every card: 0 green, 1–2 amber, 3–4 orange, 5+ red.

Scorecard

The Scorecard pill shows that driver’s Current Week Performance numbers from the Amazon DSP scorecard PDFs you uploaded on Performance.

  • Matched only by Amazon transporter ID — never by name. If the driver has no TID, Scorecard stays TBD rather than guessing another DA
  • If that TID is not on any station’s table for the week, DailyDSP uses the first station alphabetically
  • Safety and Delivery Quality ovals only — already expanded. Breach of Contract, Comprehensive Audit (CAS), Safe Driving, Team, and Pickup stay on the dispatcher Performance page
  • Oval headings use Amazon’s printed standing when the PDF has it. Coaching colors follow that driver’s rates, not station totals
  • Weeks with no upload, or a week where that TID is not in the table, show TBD / empty
Tip: Keep each driver’s Transporter ID in sync with Amazon so Scorecard can find their row. See Driver Management.

Shift Marketplace

The marketplace lets drivers manage their availability from the Schedule view:

Giving Up a Shift

  1. Tap on a scheduled shift
  2. Tap Give Up Shift
  3. Add a reason (optional)
  4. The shift moves to the marketplace for other drivers to pick up

Picking Up a Shift

  1. Tap Available Shifts
  2. Browse open shifts and shifts given up by other drivers
  3. Tap Pick Up on the shift you want
  4. The shift appears on your schedule (may require manager approval depending on settings)
Note: Shift pickups may require manager approval depending on your DSP's configuration. Check with your ops team.

Today's Route Info

On dispatch day, drivers can see their assignment details on Schedule:

  • Route number — Amazon route code
  • Vehicle — assigned vehicle ID
  • Wave time — scheduled departure
  • Staging location — where packages are staged
Communication

AI-Powered SMS Agent

Your drivers don't just receive messages — they can have real conversations. DailyDSP's AI agent understands natural language so drivers can ask about their schedule, shifts, and route info via text.

What Is the AI SMS Agent?

The AI SMS Agent is an intelligent assistant (powered by Google Gemini via LiteLLM) that responds to inbound driver text messages. Instead of rigid keyword-based check-ins, drivers can text naturally and get accurate, conversational responses — in their own language.

  • No app required — drivers use their normal SMS
  • Multi-language — auto-detects the driver's language and replies in kind (English, Spanish, and more via Google Cloud Translation)
  • Context-aware — knows the driver's schedule, route, vehicle assignment, availability, and shift marketplace state
  • Multi-turn memory — remembers the last 4 exchanges with each driver for 30 minutes, so follow-up texts make sense
  • Check-in automation — recognizes arrival confirmations ("here", "arrived", "aquí") and logs them automatically
  • Rate-limited — 20 messages/hour per driver to prevent abuse or runaway loops

What the Agent Can Do

The AI Agent uses a structured tool-calling pattern. Each tool is a specific capability backed by live DailyDSP data:

ToolWhen the agent calls it
get_todays_routeDriver asks about today's route, vehicle, wave time, or staging
get_weekly_scheduleDriver asks "when do I work this week" or about future shifts
check_inDriver signals arrival ("I'm here", "on station", "aquí")
confirm_shiftDriver says they'll be at an upcoming shift
request_giveupDriver wants to give up a scheduled shift
set_availabilityDriver marks days they want extra shifts or can't work
request_pickupDriver wants to claim an open marketplace shift
get_portal_linkDriver asks for their schedule link or needs a fresh one
Tip: If a driver's question is outside the agent's tools (e.g., "my van won't start"), the message is flagged in the Messaging view so a dispatcher can step in.

Example Conversations

Driver TextsAI Responds With
"What's my route today?"Route number, vehicle, wave time, and staging location
"When do I work this week?"Their scheduled shifts for the current week
"I'm here" / "On my way"Confirms check-in and logs arrival time
"What van do I have?"Their assigned vehicle for today
"Can I get extra shifts Friday?"Marks driver available + lists open Friday shifts in marketplace
"I can't make Wednesday"Initiates a giveup request and confirms the shift was released
"¿Cuál es mi ruta?"Route info in Spanish — auto-detected and replied in the same language

Viewing Conversations

All AI conversations are logged and visible to dispatchers:

  1. Navigate to Messaging and turn Log Mode off for Conversations
  2. Each driver who has SMS appears once — click them to see the full thread, oldest to newest
  3. Inbound messages (from driver) and outbound messages (from AI or dispatcher) are shown in a chat view, with the original-language transcript and an English translation side-by-side
  4. Compose in the box under the thread and click Send to take over from the AI — the agent automatically steps back for the rest of the thread

How It Works

  • When a driver texts your DailyDSP number, the inbound webhook routes to the AI agent
  • The agent looks up the driver's identity, language preference, and live data (schedule, route, vehicle)
  • It selects the appropriate tool (or chain of tools, up to 5 turns) and generates a natural reply
  • The reply is translated into the driver's language if needed, then sent via SMS
  • If the AI can't answer or detects an out-of-scope request, the message is flagged for dispatcher review
  • The agent respects tenant messaging_mode — test-mode tenants don't engage real drivers
Tip: The AI agent handles routine questions (90%+ of inbound texts), freeing your ops team to focus on exceptions and problems.
Communication

Messaging & Templates

SMS conversations (one thread per driver), Log Mode history, templates, and delivery status — including why a text failed.

SMS Configuration

DailyDSP uses Twilio for SMS messaging. Your administrator will configure:

  • Twilio Account SID
  • Twilio Auth Token
  • Sending phone number

Log Mode vs Conversations

Messaging has a Log Mode toggle.

ModeWhat you see
Log Mode onPaginated message history with filters. Expand a row for detail. Delivery status pills (including failure reasons) stay here
Log Mode off (Conversations)One row per driver who has SMS — no duplicate phones. Click a driver for the full thread, oldest to newest

In Conversations:

  • Type in the box under the thread. Enter starts a new line. Click Send (or Ctrl/⌘+Enter) to text that driver
  • Replies show up in the same thread without leaving the page (the list and thread refresh about every 5 seconds)
  • The compose box stays on screen while a conversation is open. Send is disabled with a reason if the number is not linked to a driver, or if they opted out of SMS
  • Threads still show the original-language text plus an English translation, same as Log Mode
Tip: Unknown numbers that are not linked to a driver are grouped by normalized phone so you still see one conversation, but Send stays disabled until the number is linked.

Message Templates

Customize the messages sent to drivers. Variables use single curly braces and are substituted at send time with the driver's live data. The Send Message dialog also includes a clickable pill list so you can insert any variable without remembering its exact name.

CategoryVariableDescription
Driver{driver_name}Driver's first name (e.g., "Carl")
{driver_full_name}First + last name (e.g., "Carl Whatever")
{reliability_rating}Driver's reliability rating
Route{route_number}Amazon route code
{wave_time}Scheduled departure time (driver's local TZ)
{station}Delivery station (e.g., DDC4)
{date}Route date
{vehicle}Assigned vehicle fleet ID (e.g., "V-001")
{staging_location}Staging slot in the warehouse
Schedule{todays_shift}Today's shift start/end
{next_shift}Driver's next scheduled shift
{weekly_schedule}Driver's full week summary
{availability}Driver's marked availability
Maintenance{timing}Maintenance card timing label ("Load Out", "Return To Station", "Anytime")
{portal_link}Personalized driver portal link
Tip: Use the live preview button before sending — DailyDSP renders your template with sample values so you can confirm the message looks right.

Example Template

Hi {driver_name}, your assignment for today: Route: {route_number} Vehicle: {vehicle} Wave: {wave_time} Staging: {staging_location} Your portal: {portal_link}

Multi-Language Auto-Translation

DailyDSP can automatically translate outbound SMS into a driver's preferred language. The translator protects template variables — so {driver_name} and other placeholders survive translation untouched and still resolve to live data at send time.

  • Compose once in English — DailyDSP translates per-driver based on their language preference (Spanish is the most common; other languages supported via Google Cloud Translation)
  • Variable-safe — placeholders are wrapped in notranslate markers, so they're never mangled
  • Auto-detect inbound — when a driver texts in Spanish, the AI SMS Agent replies in Spanish automatically; the dispatcher always sees an English transcript alongside
  • Fail-open — if the translation service is unavailable, the original English message is delivered (drivers never get a blank text)
Best practice: Set a driver's preferred language once on their profile and every future message — dispatch, reminder, AI reply — goes out localized.

Quiet Hours

Configure quiet hours on a per-tenant basis to suppress non-urgent SMS during specific windows. Scheduled messages and reminder workers respect these hours; any message due during quiet hours is deferred until the window closes.

  1. Go to Settings → Messaging
  2. Set Quiet Hours Start and Quiet Hours End (24-hour HH:MM, tenant timezone)
  3. Leave blank to disable quiet hours entirely
Note: Invite SMS and cross-tenant transfer confirmations always send regardless of quiet hours — they're considered transactional, not promotional.

Test vs. Production Messaging Mode

Every tenant has a messaging_mode setting that controls where outbound SMS actually goes:

ModeBehaviorWhen to use
test (default)All outbound SMS routes to a configured test_phone_number, not the actual driver. Inbound SMS from drivers is forwarded to fallback handlers.Onboarding, dry-runs, training your team without spamming drivers
productionSMS goes to real drivers; inbound is handled by the AI agentDaily operations, after your data is loaded
Tip: Switch tenants from test to production via Settings → Messaging. You can flip back to test mode at any time.

Sending Messages

  1. From the Dashboard, select routes (or select all)
  2. Click Send Messages
  3. Review the message preview
  4. Click Send
  5. Monitor delivery status in the Status column

Troubleshooting Messages

IssueSolution
No phone numberAdd phone to driver's profile
Invalid phoneEnsure phone format includes country code
Red pill (for example Opted out)Hover or tap the status for the reason and what to do next (ask them to text START). The detail includes the Twilio code for support and does not slide the list sideways
Message failed (generic)Check Twilio configuration in Settings
Message not receivedVerify driver's phone can receive SMS

You’ll see the same red failure labels on Messaging, Message Log, Dashboard route SMS status, and send results.

Communication

Automatic Schedule Reminders

DailyDSP runs four background reminder workers that keep drivers engaged without manual dispatcher work. Each worker is opt-in per tenant, configurable, and respects your quiet hours and messaging mode.

The Four Reminder Workers

WorkerWhat it doesDefault Interval
Schedule ConfirmationSMS drivers who have unconfirmed upcoming shifts asking them to confirm. Throttled to once per interval per driver so drivers with multiple unconfirmed shifts don't get spammed.24 hours
Late Check-In AlertWhen a driver hasn't checked in and their wave time is approaching, sends a personalized "are you on the way?" SMS — and posts an in-app alert to any ops users with alert_notify=true.10 minutes before wave
Giveup Commitment ReminderPings drivers whose giveup request was approved but who haven't confirmed it's released — closes the loop so a shift doesn't stay in limbo.24 hours
Pickup ReminderWhen new marketplace shifts open (DSP-posted or given-up), un-scheduled drivers get an SMS heads-up. Once per interval per driver.24 hours

Configuring the Workers

  1. Go to Settings → Reminders
  2. Toggle each worker on/off (schedule_confirm_reminder_enabled, late_checkin_alert_enabled, giveup_commit_reminder_enabled, pickup_reminder_enabled)
  3. Set the interval (in hours) for each — clamped to 1–168 hours
  4. Set the late check-in threshold (checkin_warning_minutes) — default 10 minutes before wave

What Reminders Respect

  • Quiet hours — messages due during quiet hours are deferred until the window closes
  • Messaging mode — test-mode tenants route all reminder SMS to your configured test_phone_number, never to real drivers
  • Driver language — reminders are auto-translated if the driver's profile specifies a non-English language
  • Custom templates — if you have a "Shift Reminder" message template, the workers use it; otherwise a sensible default is sent
Tip: Late check-in alerts are throttled per route — a driver only gets one late-check-in nudge per route per day. Ops users get one matching in-app alert at the same time.
Communication

Scheduled Messages (Future SMS Dispatch)

Compose an SMS once, send it later — automatically. Use scheduled messages for night-before route confirmations, day-before reminders, or any timed nudge a driver needs.

Creating a Scheduled Message

  1. Go to Messaging → Scheduled
  2. Click New Scheduled Message
  3. Pick a recipient:
    • Driver — single driver lookup
    • User — internal ops user (e.g., yourself)
    • Day-of-Driver — whoever is assigned the route on the send date (great for "see you tomorrow!" templates)
  4. Pick a template (or compose ad-hoc text). Variables substitute live at send time, not at create time, so {driver_name} always resolves to whoever the recipient turns out to be.
  5. Set Send At (date + time, in tenant timezone)
  6. Click Schedule
Tip: If you set the send time in the past, DailyDSP dispatches the message immediately — useful for "send now to a whole group" workflows.

Maintenance Card Notifications

When you create or edit a maintenance Kanban card, you can attach a scheduled SMS to it. The card becomes the "source of truth" for the message — moving the card's due date or canceling the card updates the linked scheduled message automatically.

  1. Open a Kanban card
  2. Click Notify Driver/Vendor
  3. Pick recipient type, write the message (with optional {timing}, {vehicle}, {driver_name} variables), set the send time
  4. Save the card — the linked scheduled message is created

Monitoring Scheduled Messages

The Scheduled Messages page lists every pending and recently-sent message with status (pending, sent, failed, cancelled). Edit any pending message before it goes out, or cancel one outright.

Note: Scheduled messages respect quiet hours and messaging mode just like reminders. If the send time falls inside quiet hours, the message defers until quiet hours end.
Communication

Multi-Language Auto-Translation

DailyDSP automatically translates outbound SMS into a driver's preferred language and auto-detects the language of inbound texts — so dispatchers compose once in English and every driver gets a message in the language they understand best.

How It Works

  • Outbound: Every driver has SMS Language on their profile (English, Español, or Français). When DailyDSP sends them an SMS — dispatch, reminder, scheduled message, AI agent reply — the message is translated into that language before delivery.
  • Inbound: The AI SMS Agent auto-detects the language of inbound texts and replies in kind. Spanish in, Spanish out. English in, English out.
  • Translation provider: Google Cloud Translation API v2. Languages supported include English, Spanish, French, Portuguese, Haitian Creole, Vietnamese, and dozens more.
  • Variable-safe: Template placeholders like {driver_name} are wrapped in notranslate markers before translation, so they survive untouched and resolve to live data after.
  • Fail-open: If translation fails or the API is unavailable, the original English message is delivered. Drivers never see a blank text.

Setting a Driver's Language

  1. Go to Drivers and open the driver's profile
  2. Set SMS Language (English, Español, or Français)
  3. Save — every future message to this driver is auto-translated
Tip: Dispatchers always see the message log in two columns — the original-language version and an English translation — so nothing gets lost in translation.
Communication

Cross-Tenant Driver Transfers

When a driver moves between DSPs at the same Amazon station, DailyDSP confirms the move with the driver via SMS before re-routing their work messages — protecting both DSPs from accidental or fraudulent reassignment.

Why It Matters

Driver phone numbers are unique across the platform. Without driver-confirmed transfers, anyone could "steal" a driver by typing their phone into a new DSP's roster. DailyDSP closes that hole — the driver must say YES before any messages route to the new DSP.

The Flow

  1. New DSP adds the driver by phone number
  2. DailyDSP detects the phone belongs to an existing driver at another DSP at the same station — and creates a pending transfer
  3. The driver gets an SMS: "Do you want your DailyDSP messages to go to [NewDSP] or stay at [CurrentDSP]? Reply YES or NO."
  4. The driver's reply is parsed for YES/NO/unclear
  5. YES → driver is re-homed to the new DSP. NO → no change. Unclear → counted; after 3 unclear replies, the transfer is abandoned.
  6. Until the driver replies, all SMS keep routing to the original DSP — no surprise re-routing.

Managing Pending Transfers

  • The dashboard shows a pending transfer banner with the driver's name and time since SMS was sent
  • One-click Resend SMS if the driver didn't get the first one
  • One-click Cancel Transfer if you no longer want to claim the driver
  • Transfers auto-expire after 14 days of inactivity
Tip: Invite SMS and transfer-confirmation SMS bypass quiet hours and test-mode — they're transactional, not promotional.
Operations

Shift Marketplace

Drivers give up shifts they can't work, and other drivers pick them up — without ops doing the matchmaking. DailyDSP keeps the policies you set and enforces them automatically.

Overview

  • DSP-Posted Open Shifts — shifts you publish to the marketplace, available to any qualified driver
  • Giveup Shifts — shifts assigned to a driver who released them; appear in the marketplace once approved
  • Driver Self-Service — drivers see the marketplace in their portal and request pickups with one tap
  • Manager Approval (optional) — set whether pickups need ops approval or auto-approve

Giveup Flow

  1. Driver opens their portal and taps Give Up Shift
  2. (Optional) Add a reason
  3. If your tenant requires approval, the request lands in Schedule → Giveups for review
  4. Once approved, the shift moves to the marketplace as a giveup shift
  5. Other drivers receive a pickup-reminder SMS (if the reminder worker is on)
  6. The giving-up driver is reminded to confirm via the Giveup Commitment Reminder until the shift is picked up or auto-cancelled

Pickup Flow

  1. Driver opens Available Shifts in their portal
  2. Browses open and giveup shifts with times and service types
  3. Taps Pick Up
  4. Pickup is auto-approved or routes to ops for review based on tenant policy
  5. Approved pickup is added to the driver's schedule and removed from the marketplace

Policies & Limits

SettingWhat it does
schedule_giveup_auto_cancel_hoursHow long a giveup can sit in the marketplace before it's auto-cancelled and the original driver re-assigned
schedule_giveup_max_per_weekCaps the number of giveups a driver can request per week
schedule_pickup_auto_approveIf true, pickups skip ops review
schedule_giveup_min_notice_hoursMinimum hours before shift start that a driver can request a giveup
Operations

Smart Imports — Drivers, Vehicles, Cortex, Daily Dispatch, Day-of-Ops

Drop Amazon's standard files into DailyDSP and the platform figures out the format — including Amazon Daily Dispatch on the Routes stepper, with no format picker. Re-import safely without overwriting your local edits, and review per-row errors instead of fighting all-or-nothing batches.

Supported File Types

FileWhat it loadsWhere in DailyDSP
Cortex Routes (.csv / .xlsx)Routes for the day — route number, wave, driver TID, vehicle, service type. Station/date from the filename (manual if the name cannot be parsed)Dashboard → Routes stepper
Amazon Daily Dispatch (.xlsx)Same Routes stepper — auto-detected (no format picker). Station/date from the workbook. Vehicle = Amazon Fleet ID; blank Route rows skipped; staging already in the fileDashboard → Routes stepper
Day-of-Ops / StagingWave time and staging location — merged into routes that already existDashboard → Staging stepper
Driver BaselineDriver roster, names, phones, certifications, TIDsDrivers → Upload Baseline
Vehicle BaselineFleet roster, VINs, plates, service typesVehicles → Upload Baseline
Amazon ScheduleAmazon's expected weekly roster (for variance)Schedule → Upload Amazon Schedule
Amazon DSP Scorecard (.pdf)Weekly scorecard metrics, standings, and per-DA Current Week PerformancePerformance → upload PDFs

Amazon Daily Dispatch

On Dashboard → Routes, DailyDSP auto-detects Daily Dispatch vs Cortex. There is no format picker.

  • Station and date come from the workbook (Summary + station sheet). Upload routes shows a Daily Dispatch banner. Cortex still uses the filename; if that name cannot be parsed you enter them yourself
  • Import Complete labels whether station/date came from the filename, the workbook, or what you typed
  • Vehicle matches Amazon Fleet ID. Blank Route rows are skipped. Staging is already in the file — guided workflow skips Staging after a successful Daily Dispatch import

Preserve Local Values

Re-imports never silently overwrite your edits. DailyDSP shows a "Preserve Local Values" picker before committing — you choose, field by field, whether to keep the local version or accept the incoming version.

  • Most common use: keep your hand-curated phone numbers and fuel PINs across re-imports
  • You can also choose "preserve all" or "overwrite all" with one click
  • Notices in the import results call out exactly which fields were preserved per row

Per-Row Error Reporting

Bad rows are reported individually — they don't nuke the whole batch. Common issues DailyDSP handles gracefully:

  • Blank Route rows on Daily Dispatch — skipped so they do not create empty routes
  • Blank cells in required columns
  • Empty trailing rows in spreadsheets
  • Numeric phone numbers parsed as floats (Excel's favorite trick)
  • Missing driver matches — shown as "unmatched" with a one-click resolution
  • Driver Transporter ID re-issues — DailyDSP matches by name fallback so the same driver gets re-linked even with a new TID

Service Types on Import

Amazon service-type names discovered from Cortex and vehicle baselines are shared across every location, so a new DSP is not staring at an empty Type dropdown. Custom types you add in Settings or from a dropdown stay on your location only and never leak to another DSP. See Vehicle Management.

NHTSA VIN Decoding

When importing or adding vehicles, paste the 17-character VIN and DailyDSP auto-fills Year, Make, and Model from the NHTSA database. No manual entry needed.

Admin

Users & Roles

DailyDSP supports a five-tier role hierarchy with role-based access control enforced at both the API and UI layer.

Role Hierarchy

RoleCan DoCan Invite
OwnerFull access: settings, billing, users, ops, messaging, schedulingAny role
Ops ManagerSchedule, messaging, ops, drivers, vehicles — no billing, no owner-level settingsDispatcher, Viewer only
DispatcherView schedules, send messages, manage daily route assignments—
ViewerRead-only across the platform—
PendingAccount exists but awaits owner approval — no live access yet—

Inviting a User

  1. Go to Settings → Users
  2. Click Invite User
  3. Enter a phone number (10+ digits, normalized automatically) and pick a role
  4. Click Send Invite — DailyDSP texts the registration link immediately
No email required. Invites are 100% phone-based. The registration token is 48 characters, URL-safe, and expires after 7 days (30 days for an owner's first invite).

Slack community

After someone finishes registration — or you approve a pending account — DailyDSP does not text a shared Slack join link. If the account has an email, DailyDSP texts that a Guest invite is coming — check email for the invite. Registration still succeeds if there is no email (the Slack path is skipped).

  • DailyDSP does not auto-join anyone. Ops send a Slack Guest invite from Slack.
  • Ops managers, dispatchers, and viewers are invited to #support only.
  • Owners are invited to #support and #dsp-owner-chat.
  • Drivers are not invited this way. They keep using SMS and the driver portal.
  • Existing operators may get a one-time text the same way. DailyDSP does not keep re-notifying after that.

Resending or Revoking Invites

  • Resend — if the original SMS didn't arrive or expired, click Resend to issue a new link
  • Revoke — cancel a pending invite at any time; the token becomes invalid immediately
  • Inviting the same phone twice automatically revokes the previous pending invite, so there's never a duplicate-link ambiguity

Safety Rails

  • You can't deactivate the last active owner — there must always be one
  • Ops managers can't elevate themselves or other ops managers to owner
  • Deactivation is soft (account hidden) — audit logs preserve the user's history
Admin

Tenant Settings

Open Settings from the header. General is per user (timezone, clock, tutorials). Messaging, scheduling, check-in thresholds, routes, users, DSP information, and billing apply to the whole location — owners and ops managers can change those.

General (per user)

SettingWhat it does
TimezoneHow dates and wave times display for you
Time Format12-hour (2:30 PM) or 24-hour (14:30)
Page tutorialsWhen on, Dashboard, Drivers, Vehicles, Schedule, and Performance each show a short guided tour the first time you open them. Off suppresses all tours. Turning the toggle back on clears your “already seen” list so tours run again on the next visit

Messaging Settings

SettingWhat it doesDefault
messaging_modeTest (route SMS to test phone) vs. Production (route to real drivers)test
test_phone_numberPhone that receives all outbound SMS in test mode—
messaging_quiet_hours_startStart of quiet window (HH:MM, tenant TZ)blank (off)
messaging_quiet_hours_endEnd of quiet window (HH:MM, tenant TZ)blank (off)

Check-In Thresholds

SettingWhat it doesDefault
checkin_ontime_minutesHow early before wave is considered "on time" (green)10 min
checkin_warning_minutesMinutes before wave that triggers late-check-in alert10 min
checkin_late_minutesMinutes after wave time that flips status to late (red)0 min

Reminder Workers

Each worker has an enabled flag and an interval setting. See the Automatic Reminders section for details.

  • schedule_confirm_reminder_enabled / _hours
  • late_checkin_alert_enabled
  • giveup_commit_reminder_enabled / _hours
  • pickup_reminder_enabled / _hours

Amazon Reconciliation

SettingWhat it does
match_amazon_rosterWhen true, the driver portal shows a disclaimer that Amazon A to Z is the official source of truth

Routes — Custom Types & Ignore Lists

In Settings → Routes you manage names that only exist at your location, and which dashboard warnings to skip.

ControlWhat it does
Custom service typesAdd or remove extra Type names for this location only (training, charter, nursery). They appear in Dashboard, Vehicles, and Schedule dropdowns. Amazon types from Cortex/vehicle imports cannot be removed
Ignored Route NumbersRoute codes that should not trigger the duplicate-route warning (e.g. BACKUP)
Ignored Staging LocationsStaging slots that should not trigger the duplicate-staging warning
Ignored Service TypesTypes that should not trigger the route/van mismatch warning, and that skip the Strict Service Type Match gate during auto-assign. Custom types are added here automatically; remove one if you want the warning and a strict van match

Click Save Changes after editing an ignore list. Removing a custom type only drops it from dropdowns — existing routes, vans, and shifts keep the old name.

Portal URL

If your tenant has a custom subdomain (e.g., plad.dailydsp.com), set portal_base_url to the full URL — DailyDSP uses it to generate invite links and SMS portal links for that tenant. Without it, links fall back to the platform default.

Help

Help Chat

Ask how to use DailyDSP in the app, send a feature request, or contact support — without leaving the page you are on.

Where it is

In the header, next to the question-mark Help icon, click the comments button (Ask DailyDSP). The question-mark still opens this Support page for the current screen. Help Chat does not replace it.

Owners, ops managers, dispatchers, and viewers all get the same chat, including feature requests and Contact support. Drivers use SMS and the driver portal instead.

What it answers

  • How-to questions grounded in these Support docs and What’s New
  • It knows which screen you are on (Dashboard, Schedule, Performance, Vehicles, …)
  • Links back to the matching section on this page

It cannot see your routes, drivers, vehicles, or live board. Questions like “why is this route red?” belong on the Dashboard, not in chat.

Contact support

For something that is broken or needs a human, use Contact support (header button or chip in Ask DailyDSP). This is separate from how-to answers and from feature requests.

  • DailyDSP creates a numbered ticket (YYYYMMDD-NN on the America/New_York calendar day — for example 20260915-01 is the first request that ET day)
  • It posts one parent message in Slack #support and shows you the Support ID plus a clickable permalink to that thread so you can add updates there
  • If your account has an email, DailyDSP also emails you the same ID and link
  • Attach 1–3 screenshots (PNG, JPEG, WebP, GIF) or a short recording (MP4, WebM, MOV), 20 MB each. Preview and remove files before Send. Those files appear as links on the Slack thread

How-to stays in chat. Contact support is the human path. About 5 support requests per calendar day, per person.

Feature requests

Ask for something DailyDSP does not do today, or tap the “Send a feature request” chip. We review every request. There is no ship date — sending a request is not a promise it will be built.

About 20 chat messages per hour and 5 feature requests per calendar day, per person. English only.