Documentation

Everything You Need to Master NexivoHR

From your first login to advanced boolean queries — step-by-step guides, reference tables, and best practices written by the team that built it.

Popular: Boolean queries · Pipeline stages · Job portals · Billing

⚡ 5-Minute Quickstart

This is the fastest path from "I just signed up" to "I'm placing candidates."

  1. Register your company on the sign-up page. You'll be auto-logged in as the Admin.
  2. Invite 1–2 team members from Account → Teams.
  3. Add your first job from the sidebar: Jobs → New Job. Fill out title, location, and a short description.
  4. Add candidates three ways: manually, by uploading a resume (fields auto-fill), or via CSV import.
  5. Submit candidates to the job from a candidate's profile or directly from the job page.
  6. Move them through stages by dragging cards or clicking a stage on the candidate row.
💡 Tip: The dashboard's "My Day" widget surfaces stale candidates, interviews this week, and open submissions awaiting feedback. Check it once a day.

First login

After registering, you land on the Dashboard. The sidebar has the four core modules:

ModuleWhat it's for
CandidatesYour talent pool — every person you've interviewed, sourced, or placed
JobsOpen requisitions (internal or client roles)
SubmissionsThe pipeline view — candidates × jobs × stage
ReportsTeam activity, conversion, time-to-fill, recruiter performance

Invite your team

From Account → Teams, click Invite User. They'll get an email with a one-click join link.

User roles & permissions

RoleCan doCan't do
AdminEverything — billing, teams, all candidates
Account ManagerAll candidates and jobs across the companyBilling, team management
RecruiterOnly candidates/jobs assigned to themSee other recruiters' data, billing
ViewerRead-only — for clients, hiring managersAdd, edit, or delete anything
🔒 Roles are enforced server-side on every API call. A user can't unlock functions just by inspecting the page HTML.

👤 Candidates

A candidate is a person in your talent pool. Each profile contains contact info (encrypted at rest), resume file (preserved with extracted text for search), work experience, location with lat/lng for radius search, skills & tags, source, visa status, and a complete activity log.

Adding candidates

1. Manual entry

Candidates → New Candidate opens a multi-tab modal. Only first name and email are required.

2. Auto-fill from resume

  1. Click Choose File and pick a PDF, DOCX, RTF, or TXT (10 MB max)
  2. Click Auto-Fill from Resume
  3. NexivoHR extracts text and parses out: name, email, phone, LinkedIn, current title, education, location, years of experience
  4. Review and click Save
💡 PDFs are extracted client-side using PDF.js (the engine Firefox uses for its built-in PDF viewer), so even rare encodings work. Falls back to a pure-PHP parser if the browser can't load PDF.js.

3. Bulk CSV import

From Candidates → Import CSV, paste or upload a CSV with these columns (any subset works):

first_name,last_name,email,phone,current_title,linkedin,city,state,zip,country,years_experience,visa_status,skills,source,notes

We support imports from Bullhorn, Greenhouse, Lever, JobDiva, Ceipal, Workable, and Recruit CRM. Contact us for free migration help.

💼 Jobs

Creating a job

  1. Basics — title, location, employment type, seniority
  2. Description — rich text with bullets, headings, links
  3. Pay range — min/max + currency + period
  4. Required skills — tag-style entry, drives match scoring
  5. Client & recruiter assignment — for agency workflows

Pipeline stages

StageMeaningTypical time
SubmittedCandidate sent to client/hiring manager1–3 days
ScreeningRecruiter or HM phone screen3–7 days
InterviewFormal interview scheduled or completed1–3 weeks
OfferOffer extended, awaiting acceptance3–7 days
Placed / HiredAccepted and startedTerminal
Rejected / WithdrawnClosed out with reason codeTerminal

Drag cards between columns on the kanban board, or click the stage badge on any submission row. Every move is logged with timestamp + user.

Syntax

OperatorEffectExample
ANDBoth terms must matchpython AND django
OREither term matchesreact OR vue
NOTExcludes a termjava NOT junior
"…"Exact phrase"machine learning"
(…)Grouping(python OR django) AND ml

Operators are case-sensitive (always upper-case). Terms are not.

Real-world examples

# Senior Python engineer who knows ML, not a manager
(python OR pyspark) AND ("machine learning" OR "deep learning") NOT (manager OR director)

# AWS DevOps with K8s, 5+ years
aws AND kubernetes AND (terraform OR ansible) AND devops

# Healthcare RN looking for night shift
"registered nurse" AND (RN OR BSN) AND (night OR PRN) AND NOT travel

# Mid-career React dev open to remote
react AND (typescript OR javascript) AND remote NOT (intern OR junior)

The filter panel on the right side of the boolean search page includes location filters:

  • ZIP code — auto-resolves to city/state
  • City + State — typed manually
  • Radius — 10, 25, 50, 100, 200, or 500 miles

Results sort by distance with a "X mi away" badge. Uses the Haversine formula on stored lat/lng coordinates, so it's fast even with 100k+ candidates.

Saved searches & history

Every search runs against your full company pool and is automatically saved. From Search History in the sidebar you can re-run, star, or see team-wide searches (admins only).

🔌 Integrations

Job portals

Configure portal accounts under Account → Portal Profiles:

PortalWhat we syncPlan
DiceCandidate sourcing, job posting, applicant importPro+
MonsterResume database access, applicant importPro+
JobDivaFull bi-directional candidate & submission syncEnterprise
CeipalBulk export/import via APIPro+

Email setup (SMTP)

From Account → Email Settings (admin only):

FieldExample
Hostsmtp.sendgrid.net
Port587 (TLS) or 465 (SSL)
Usernameapikey (SendGrid) or full email
PasswordAPI key or app password
From emailjobs@yourcompany.com

Tested with: SendGrid, Mailgun, Postmark, Amazon SES, Gmail (app passwords), Office 365, SMTP2GO.

⚠️ If your host blocks outbound SMTP, use an HTTP-based provider like SendGrid or Mailgun.

Billing & payments

Under Account → Billing: see current plan, upgrade (immediate proration), downgrade (end of cycle), pay with Stripe / PayPal / Razorpay, download invoice PDFs, update billing info. Custom invoicing or volume pricing: contact sales.

🛠 Troubleshooting

Resume upload fails or text is garbled

Most PDFs extract perfectly. If a specific PDF returns empty text, it's likely image-based (scanned from paper). The file uploads fine — you'll just fill the fields manually. Visit /debug.php as admin to verify your PHP environment.

Email isn't being sent

Check Account → Email Settings credentials, then send a test. If tests fail, check your SMTP provider's logs. Common causes: wrong port, wrong app password, sender domain not verified.

Boolean search returns no results

Operators must be upper-case. Try without quotes first. Check that filters aren't too restrictive.

"Plan limit reached" error

You've hit the user/job/candidate cap. Upgrade from Account → Plans.

Can't log in after password reset

Resets invalidate other active sessions. Verify the reset email is the most recent — links expire after 60 minutes.

Need more help?

Can't find what you're looking for? Search our support center or contact us.

Visit Support Contact Us