National Staffing Solutions

Reliant — Export of Hours

Upload the day's files

Drop the two CSV files (RMG & RPR). Each upload is verified and logged. Signed timecards are locked; an unsigned one that arrives signed is promoted automatically. Rows for a work week that hasn't ended yet are held back — only completed weeks load, so a clinician's week can be judged fully signed. A clinician is ready to export only when every shift of their week is signed.

📄 Drop CSV files here or click to browse
Both files at once is fine — you can also add them one at a time.

Upload history

Every day's-files upload, newest first — click a row to expand its verification numbers.

Loading…

Productivity upload

Drop the National Contractor Productivity workbook (.xlsx) here. Each contractor's weekly Prod% is matched to your clinicians by name against the Employee Roster and shows up in the Prod% column on the Timesheets grid. The file's week columns are Monday-dated — each lands on its Sunday–Saturday work week (an 8-17 column belongs to the 8/16 – 8/22 week). The rolling 8-week file simply refreshes the weeks it covers every time you drop it — nothing duplicates.

📄 Drop the productivity workbook here or click to browse
.xlsx straight from the report is fine — the "Productivity" tab is read automatically.

Upload history

Every productivity upload, newest first — expand a row to see exactly who didn't roster-match and which names belong to more than one Person_ID.

Loading…

Timesheets

Nexus Workweek upload
SF Workweek upload
Total Hours
0
Contractors
0
Facilities
0
To Export
0

⛔ Missing hours

Straight from the Nexus Workweek upload (Reliant rows only): every contractor who has a timecard slot for the selected work week — a row on that week's workweek file — but no hours in the uploaded timesheet files yet. They drop off this list the moment their hours arrive. Rows the workweek file carried without a Candidate External ID are listed too until they're mapped on the Nexus Workweek Upload page.

ContractorPerson_IDJob IDWorkweek IDSupplier
Loading…

⏱ Shifts that arrived after the week was exported

NetHealth sometimes reports a shift a day or two late — if the clinician's week had already been exported, those late shifts have to be keyed into Nexus by hand (a work week can't be uploaded to Nexus twice). ✋ unsigned = came in late, not signed yet · ⏳ pending = signed, waiting to be added to Nexus manually · ✓ completed = added to Nexus, caught up. When a signed week has been keyed in, press ✓ Added to Nexus — you'll get a confirmation, the shifts are checked off as exported (so they never end up in a Nexus export file), and the row moves to the Archived tab. Active holds everything still to be caught up. Click a row (▶) to expand every late shift's full detail — in/out times, hours, lunch, facility, signatures, and when each line arrived from the Reliant upload — so you can key it into Nexus straight from here. Click the clinician's name to jump to that week in the grid — press ↻ Refresh up top to clear the name filter again.

No late arrivals found — no exported week has had shifts show up afterward.

Workweek Uploaded

Drop the weekly timecard export file (CSV). Every row whose Client name doesn't start with Reliant is deleted automatically, and each Candidate External ID is checked against your Employees roster (they're the same IDs). Each candidate's Job ID and Timecard Week ID are then saved as reference data, filed under the Sunday–Saturday work week their dates fall into.

📄 Drop the workweek CSV here or click to browse
One file per week — dropping a new one replaces it. If it's an Excel workbook, save it as CSV first.

Week match-up — file rows vs your clinicians

A row from the workweek file only reaches a clinician when its Candidate External ID matches their Person_ID for that week. Anything that didn't match is listed below — pick the right clinician from the dropdown (it pre-selects when the names line up) and press Map: their Job ID / Workweek ID land on that clinician and they leave the Missing JobID/Workweek ID tab. Rows the file carried without any Candidate External ID (blank ID column) are saved too and stay listed here until you map them. Mapping is per work week and can be redone any time — a later upload or re-map simply overwrites.

File candidateSaved under IDJob IDWorkweek IDMap to clinician
Pick a week above.

Workweek reference data

Every upload saves each Reliant candidate's Job ID and Timecard Week ID under the Sunday–Saturday work week their dates fall into — re-uploading a week simply refreshes it. The ⇩ Nexus export & mark ✓ button on the Timecards tab matches your signed hours against this table to build the Reliant Time Upload file.

Work weekCandidatesWith Job IDLast updated
Loading…

Upload history

Loading…

SalesForce Workweek Upload

Drop the SalesForce report export here (the .xls file straight out of SalesForce is fine — no need to convert it). One row per clinician timesheet: Contact ID, Reliant ID (the same Person_ID used everywhere in this app), Timesheet / Assignment / Facility record IDs and the facility's Cost Center. The work week is read off the date at the end of the IW Timesheet Name and filed under its Sunday–Saturday week. Re-uploading a week simply refreshes it — rows are saved by their SalesForce Timesheet ID, so nothing duplicates. Every upload is checked for a numeric Reliant ID: the candidates that came without one are listed below the stats, mapped to the employees table, and can be downloaded with ⇩ Export missing numbers (here and on the upload's line in the history).

📄 Drop the SalesForce report here or click to browse
.xls straight from SalesForce works as-is (.xlsx and .csv are fine too).

SalesForce workweek data

Everything saved from the SalesForce uploads, grouped by work week. Each clinician's row carries their SalesForce Timesheet, Assignment and Facility record IDs for that week.

Work weekCliniciansFacilitiesLast updated
Loading…

Upload history

Loading…
HG Homegrown
Dashboard

Dashboard

Your HG landing page — this is where everyone arrives after signing in. Widgets land here as the build progresses (open jobs, submissions in flight, assignments ending soon, the candidate pipeline). For now, pick a section on the left.

Intentionally blank for now.

Employee Roster

One row per Person_ID, built automatically from every upload — each ID belongs to exactly one person and duplicates are impossible. Anyone appearing in a file for the first time lands on the Needed to add to Nexus tab; check them off once they're set up in Nexus and they simply stay in the full roster.

Facilities

One row per AccountingID with its facility name — kept current from every upload, no duplicates.

AccountingIDFacilityCityStateSF IDFirst seenLast updated

Duplicate Accounting IDs

There should only ever be one row per facility. This finds facilities whose Accounting IDs are the same number written differently — almost always a leading-zero twin like 329 vs 0329 (one came from NetHealth, the other from the SNF/SF import). For each pair, pick the row to keep and the others are deleted — anything filled in on a deleted row (SF ID, master data, name) is first copied onto the row you keep, so nothing is lost. Keep the ID your timecards actually use — the count of timecards on each ID is shown, and the most-used one is pre-selected.

SNF master facilities upload

Drop the "All SNF facility" workbook here (CSV — if it's the Excel file, save it as CSV first, or use the converted copy you were given). It reads Accounting ID, Facility, Customer, Division, Address, City, State, ZIP Code and Ops Management by header and keeps all of it on the facilities record, matched by Accounting ID. You get a review first: new facilities that will be added, update rows that fill in or change master data on facilities already on file, and name differs flags where the workbook name doesn't look like the name your timecards use for that same Accounting ID. Untick anything you don't want, then 💾 Save approved. The facility name your uploads maintain is never overwritten — the workbook's name is kept alongside it. Run supabase_schema_v13.sql once first.

📄 Drop the SNF master facilities CSV here or click to browse
Matched by Accounting ID — nothing saves until you approve.

SF facility IDs

Drop the Salesforce facilities export here (CSV — if it's the Excel workbook, save it as CSV first). It reads the Name, Id, Street_Address__c, City__c and State__c columns by header and matches each facility on file by name first — timecard name and SNF-workbook name, with the "Reliant -" prefix, capitals, "&/and" and abbreviations (CTR/Center, REHAB/Rehabilitation, HOSP/Hospital) handled — then by address (street + city + state from the SNF master data) when the name finds nothing. Go through the table and approve: ✓ exact name matches come pre-ticked, close-name and address matches wait for your tick after you check the address shown, and rows with more than one candidate wait for you to click Use on the correct one. Then 💾 Save SF IDs writes only the approved rows into the facilities table (sf_id) — run supabase_schema_v12.sql once in Supabase first (and v13 for the address matching).

📄 Drop the SF facilities CSV here or click to browse
Extra columns in the file are ignored — only Name, Id and the address columns are read.

Upload history

Loading…

Assignments

Drop the vms_assignment_report export (CSV). Each row is saved by its Assignment ID — new assignments are added, existing ones are updated, and every change is written to a change log with a short description. The Candidate External Id ties each assignment to your Employees roster and timecards, and the Job Id ties it to the workweek reference data — so everything is related for reporting. Candidate SSN and DOB are never saved.

📄 Drop the assignment report CSV here or click to browse
Re-uploading a newer export just updates what changed. If it's an Excel workbook, save it as CSV first.

Saved assignments

Candidates highlighted in amber aren't in your Employees roster yet.

CandidatePerson_IDJob IDFacilityRoleStatusStart – EndHours

Recent assignment changes

Every upload writes one line per added or changed assignment — what changed, from what, to what.

WhenCandidateTypeWhat changed
Loading…

Upload history

Loading…

Assignments vs Reliant CSV

Pick a work week and this compares the Assignments data against the hours actually uploaded: everyone whose assignment dates make them expected to work that week, the hours they worked (all uploaded shifts including drive time, signed or not), their bill rate from the assignment, and the amount billed (hours × rate) — with the whole week totaled at the bottom. Weeks run from week-ending 4/11/26 out to the farthest assignment end date. Expected = the week overlaps the assignment's dates (pushed start date is used if set, otherwise actual start, otherwise start).

Supplier breakdown

Who's working this week by supplier: National Staffing Solutions vs Non-National Staffing Solutions, counting clinicians with hours and a matching assignment (supplier comes from the assignment) — with the amount billed under each count. Below the chart, one row per supplier for the week — click a supplier row (▸) to drop down its professions. Clinicians without an assignment aren't included.

SupplierProfessionCliniciansHoursBilled
Pick a week above.

Expected but no hours received

Clinicians whose assignment dates cover this week but who have no uploaded hours at all for it.

ClinicianPerson_IDSupplierFacilityRoleStatusRateAssignment dates
Pick a week above.

Hours worked but no assignment

Clinicians with uploaded hours this week but no assignment covering the week — check whether the assignment export is missing them or the hours landed on the wrong person. Their hours are not billed in the totals below. The box at the bottom of this page lists these across every work week at once.

ClinicianPerson_IDJob IDFacilityHours worked
Pick a week above.

Hours & billing vs assignments

One row per clinician with hours and a matching assignment that week. Rate and Job ID come from the assignment; the whole week is totaled at the bottom. Anyone working without a covering assignment is listed in the table above instead and left out of these totals.

ClinicianPerson_IDJob IDFacilityHours workedRateAmount billed
Pick a week above.

All hours worked, no assignment — every work week

Every clinician-week with uploaded hours but no assignment covering that week, across every work week at once (the box above shows only the selected week). Vendor is the supplier from the clinician's assignment on file even when its dates don't cover the week — if hours landed outside every assignment's date range, that vendor's export probably needs updating. none on file means that Person_ID has no assignment anywhere in the Assignments data. Click any column header to sort.

Workweek Clinician Person_ID Vendor Job ID Facility Hours worked
No timecard data yet.

Actual Invoices Audit

Drop the timesheet_week_report export (CSV) from Nexus. Each row is saved by work week + Job ID + Candidate External ID, so re-uploading a newer export updates statuses in place. The Supplier column is looked up from the suppliers table by Supplier Id — names fill in automatically from your saved Assignments (matched by Job Id).

📄 Drop the timesheet week report CSV here or click to browse
timesheet_week_report_v2_*.csv — if it's an Excel workbook, save it as CSV first.

Weekly summary

One row per saved work week. Every value is a link — click it to open that week below and jump straight to the section it references.

WorkweekTotal billedMissingDid Not WorkOtherTotal Billed +Other
No timesheet data yet — upload the report above.

Week breakdown by facility billing status

Pick a work week. Rows group by the report's Facility Billing Status: Invoiced, Approved & Finalized together (with hours and amount billed), then Missing, then Did Not Work — anything else (e.g. Saved) lands in the last box so nothing is hidden.

Invoiced & Approved

Timesheets the facility has invoiced, approved, or finalized for this week — hours and the amount billed, totaled at the bottom. Finalized counts as invoiced.

ClinicianPerson_IDSupplierStatusJob IDProfessionHoursAmount billed
Pick a week above.

Missing

Facility billing status Missing — no timesheet received for this week.

ClinicianPerson_IDSupplierJob IDProfession
Pick a week above.

Did Not Work

Facility billing status Did Not Work for this week.

ClinicianPerson_IDSupplierJob IDProfession
Pick a week above.

Other statuses

Anything not Invoiced / Approved / Missing / Did Not Work — e.g. Saved timesheets still in progress.

ClinicianPerson_IDSupplierStatusJob IDProfessionHoursAmount billed
Pick a week above.

All “Other” timesheets — every work week

Every timesheet whose facility billing status isn't Invoiced / Approved / Finalized, Missing, or Did Not Work (e.g. Saved), across all work weeks from 10/11/25 on. The Signed timecard column checks the Timesheets data for that person & work week — ✓ when their whole week is signed. Click any column header to sort — click again to reverse.

Workweek Clinician Person_ID Supplier Status Signed timecard Job ID Profession Hours Amount billed
No timesheet data yet.

Upload history

Loading…

MSP (Parent Client)

Click chips to filter. All shown by default.

NATIONAL STAFFING SOLUTIONSON
0
0% of visible
OTHER SUPPLIERSON
0
0% of visible

Suppliers

Click chips to filter. Blue dot = National Staffing Solutions, amber = other suppliers. Counts are candidates working the selected week.

Head Count i

STATENSSOTHERTOTAL

Open jobs by state i

STATEJOBSOPENINGS

Facilities by state i

STATEFACILITIES

Contractors working — week over week

Every bar is a work week: distinct contractors who actually worked hours that week, from the timesheet detail upload — National Staffing Solutions blue, everyone else combined amber, the bold number is the week's total. Everything is a link: click a bar section to jump to that week showing only that group (click it again to bring both back), click the total or the week label to just switch weeks. Client / supplier chips, the state drill-down and this chart all filter each other. Up to 26 weeks (6 months) at a time.

Data uploads — this page only

This page runs on its own tables, completely separate from the hours-export program — nothing dropped here touches the timecards, workweek IDs or the assignments the export pages use.

1 · Timesheet week report (hours worked)

Drop the timesheet week report v2 export (CSV) from Nexus — one row per clinician per work week. Worked hours = the hour buckets (Regular, OT, Holiday, Orientation, Charge, On-Call, Drive Time…); PTO, Sick, Guaranteed, differentials and the supplier-side "S." mirror columns are never counted, and zero-hour timesheets are skipped. Keyed by Timesheet ID — re-uploading refreshes in place. (The older per-day detail report still works here too — the format is auto-detected.)

📄 Drop the timesheet detail CSV here or click to browse
If it's an Excel workbook, save it as CSV first.

2 · ALL assignments (reference)

Drop the ALL assignments export (CSV). It supplies the Parent Client for every facility, facility addresses for the map, and each candidate's assignment dates + bill rate for the dot popups. Assignments that ended before 2026 are skipped. Candidate SSN, DOB, email, phone and home-address columns are never read and never stored.

🗂 Drop the ALL-assignments CSV here or click to browse
Re-uploading a newer export refreshes in place.

3 · Full facility roster (parent / child)

Drop the facility roster workbook (.xlsx) — the one with the parent and child tabs. It's the authoritative facility → Parent Client mapping and address book for this page (it wins over the assignments file when both know a facility). Zips that lost their leading zero in Excel are repaired. Re-drop whenever the roster changes.

🏥 Drop the facility roster .xlsx here or click to browse
Keep it as the Excel workbook — the parent/child tabs are needed.

4 · National Staffing jobs report (open jobs)

Drop the National Staffing Jobs Report export (CSV). It powers the Open jobs by state table — every upload replaces the previous snapshot so closed jobs never linger. The Parent Client comes straight from the file's own Parent Facility Name column.

📋 Drop the jobs report CSV here or click to browse
If it's an Excel workbook, save it as CSV first.

Upload history

Loading…

Agents

Your automated crew. Click an agent to open their station.

Supervisor Agent
Audits the other agents' work in the database — after every upload, after every export, or on demand
Security Agent
Watches the front door — logs every visit and every login with who it was, their IP address and device, and flags bogus sign-in attempts
File Upload Agent
Ingests the daily CSVs · verifies every line landed · files a report on anything that didn't
Checking the duty log…
Export Agent
Confirms every export: file downloaded · shifts checked off · database re-verified
Connection Agent
Links this site to your database the moment you sign in — no keys to re-enter

File Upload Agent — duty log

Every upload, who ran it, the verification result, and any lines that didn't load.