Employment verification
Employment history confirmed by the employer, not by the reference
Payroll-connected confirmation in seconds when the candidate links their payroll account; otherwise our outreach engine reaches HR by email, fax and voice on a fixed cadence, through contact channels we found independently. Dates and title, facts only.
Sources
How we reach the employer
Payroll connect
The candidate signs into their payroll provider; employer, dates and title return by webhook.
Learn more
The Work Number (opt-in)
Only when you set allowPaidThirdParty; the cost is shown before it runs.
Learn more
Employer outreach engine
Email plus fax on day 0, voice on day 1, follow-ups on days 3 and 5, deadline day 7. A secure reply form captures the responder's name and role.
Learn more
Anti-fraud contact rules
The employer must exist in an independent source; candidate-supplied contacts are used only when they match one. Free-mail addresses are never accepted.
Learn more
Contact book
Every answered request teaches us which HR channel an employer answers on, so the next check for that employer starts there.
Learn more
Attempt log as evidence
Channels, contact sources, timestamps and transcripts are attached to the result and the report PDF.
Learn more
How it works
How employment verification works
- 1
Submit employer, dates and title
Add the employer's city and state. A candidate-supplied HR contact is accepted only if it matches an independent record.
- 2
Payroll connect first
If the candidate links payroll, the claim is verified in seconds against the payroll record.
- 3
Outreach when needed
Our engine finds the organization, picks the channels that answered before, and works the cadence during the employer's business hours.
- 4
Verdict with evidence
Confirmed and dates match by month is verified; differing dates is a discrepancy; a declined or unanswered request is unable to verify with the reason.
Outcomes
| Employer response | Verdict | Reason |
|---|---|---|
| Confirmed, dates match | verified | — |
| Confirmed, dates differ | discrepancy | field checks show both |
| Title differs | reviewed by a person | never auto-failed |
| Never worked here | not_found | — |
| Declines to verify | unable_to_verify | employer_policy |
| Uses a third-party service | unable_to_verify (or routed to TWN if allowed) | employer_uses_third_party |
| Closed, no successor | unable_to_verify | employer_closed |
| No reply by day 7 | unable_to_verify | no_response |
API
The employment call
curl -X POST https://api.primarycheck.com/v1/verifications \
-H "Authorization: Bearer pc_live_…" \
-H "Content-Type: application/json" \
-d '{
"person": {
"firstName": "Amy",
"lastName": "Kowalski",
"dob": "1976-02-14"
},
"claims": [
{
"type": "employment",
"employer": "Mercy Health",
"employerState": "OH",
"title": "Charge Nurse",
"start": "2020-03",
"end": "2023-08"
}
],
"purpose": "employment",
"consent": {
"consentId": "cons_…"
},
"options": {
"allowPaidThirdParty": false
}
}'Related verification checks
Employment checks that finish
Start in the sandbox; outreach runs live after vetting.