Driver license and DOT medical card tracking
Nobody finds out at a roadside inspection.
Every driver's DOT medical card, license, and training record lives on their profile with its expiration date and the proof attached. Anything expiring in the next 30 days is listed by name while there is still time to renew it.
What the Training tab keeps track of.
Credentials live on the person, with the date they lapse and the proof attached. The tab does the counting.
- Credential types
- Yours to define: DOT medical card, CDL, OSHA 10, forklift. Mark which ones count toward compliance.
- Requirements by role
- A DOT medical card for every driver, a forklift certification for every mechanic, or OSHA 10 for everyone. Each requirement says how many months it lasts.
- Proof on file
- Upload the card or certificate on the credential itself, so the copy is there when an inspector or your insurer asks for it.
- Status and score
- Valid, Expiring within 30 days, or Expired, on the person and in the list at the top of the tab. Enter the renewal and it reads Valid again. The compliance score is how much of each role's requirements the team holds right now.
- Reports
- CSV downloads for everything expiring in the next 90 days, compliance by person, and training history.
One pay period, from the first punch to payroll.
6:34 AM
Clock in from the truck
Drivers punch from the top of their app, mechanics from the Time Clock, the office from Timesheets. Breaks are a tap, and each punch saves the phone's location when it can.Period closes
Review, fix, approve
Regular, overtime, and break hours per person, with open, auto-closed, or zero-length shifts flagged before anyone approves. Every correction needs a reason. Approving locks the period, so paid hours don't change after the fact, and Approve all skips anyone still clocked in.Payroll day
Export the CSV
Approved hours export as a CSV that QuickBooks Online Payroll, Gusto, ADP, or Paychex takes, one row per person. Anyone not yet approved stays out of the file. Wages and overtime pay stay in your payroll system.
Four roles. Each one sees its job.
Admin, dispatcher, tech or driver, and mechanic. Pick one on the email invite and change it later in the same dialog; the new access applies without a second invite.
Two switches cover the exceptions: Tech View Access lets an owner or dispatcher who also drives take a route, and Tracks Time keeps salaried staff off the timesheets. Deactivate a seasonal driver in November and reactivate them in April; their jobs, punches, and credentials stay on file in between.
Hiring a driver who applied on your careers page? Hire them from Hiring instead. The same invitation goes out a couple of minutes after your welcome email, and when they accept, the license class, endorsements, and medical card date from their application are already on their Driver Details.
Questions operators ask
Which plan is it in?
Users and roles are on every plan, with unlimited users. Training and certifications, timesheets, scheduling, and time off are on Core and up.
Does PortaPro calculate overtime pay, and what pay periods does it handle?
It sorts hours into regular and overtime: weekly overtime after 40 hours by default, plus a daily threshold for states that need one, and never the same hour twice. Wages and overtime rates stay in your payroll system; job and route profitability use a separate, company-wide driver labor rate from Cost Rates as a cost estimate and never read anyone's pay. Pay periods run weekly on the day you choose, every two weeks from an anchor date, twice a month, or monthly, in your company's time zone.
What if a driver forgets to clock out?
The shift closes itself at your limit, 16 hours unless you change it, and is flagged on the timesheet. Clocking in the next morning closes yesterday's shift too. Someone in the office sets the real end time, with a reason, before approving.
Can hours go straight into QuickBooks Payroll, and can drivers ask for time off?
Approved hours export as a CSV that QuickBooks Online Payroll imports with its own timesheet import, and the same file works for Gusto, ADP, and Paychex. Payroll that runs inside PortaPro is in beta and rolling out company by company. Time off requests come from the app to the office to approve or deny, the driver is notified either way, and approving warns if the dates overlap shifts already assigned.