E-Verify Mock Server
Last updated: April 27, 2026
Summary
This short guide explains how to configure Onboarded to use the E-Verify Mock Server, how to run supported I-9 + E-Verify test flows, and a quick way to iterate on different flows without recreating employees. The mock is name-driven and intentionally limited: it covers a small subset of E-Verify outcomes.
The E-Verify Mock API is not an exact replication of the actual E-Verify API
Pre-requirements
An Onboarded account (Test or Live) with admin rights to configure integrations.
I-9 + E-Verify form included on your account and assigned to an employee
Ability to create or edit employees and to generate onboarding/task links (UI or API).
Access to the E-Verify configuration page
(Optional) Read about the Onboarded task lifecycle for guidance on task states and change requests
Configure E-Verify
Go to Integrations → Configure E-Verify.
Type: select External Account (important).
Username / Password: enter the credentials you want to use for the integration. The mock accepts configured credentials for testing.
Endpoint: paste the mock URL exactly.
https://mock.apidog.com/m1/806230-785042-defaultClick Save.
Quick step-by-step — what to do and what to expect
Basic flow (create new employee)
Create a test employee and use one exact first + last name from the list below. Exact spelling and spacing are required.
Submit the I-9 + E-Verify form for the employee (complete doc type, DOB, SSN, etc.). The mock uses the first + last name to determine the mocked outcome.
Generate an employer link to test the employer experience:
UI: Create Link → Assignee: Employer → Create Link
Or generate an onboarding URL via the API.
Observe case states in the Onboarded UI; the mock will respond as the user clicks through case management actions in the E-Verify integration UI.
Supported test names & expected results
Alaina Smith→ Employment authorized (happy path)Tim Salek→ Unconfirmed data → Manual review → Employment authorized (manual-review flow)David Cook→ Unconfirmed data → Pending referral (FAN) → Final nonconfirmation → Employment NOT authorizedNote: the mock indicates the FAN/referral state but does not provide a downloadable FAN/referral PDF.
Fast iteration method — test different flows without recreating employees
If you don’t want to repeatedly create new employees and run the full I-9 sequence, you can reuse a single employee by changing its name and re-creating a case:
Complete the I-9 + E-Verify task for a test employee so the task status is Completed.
Edit the employee’s First and Last name on the employee detail page to one of the exact test names above.
Submit a Task Change Request for the completed task (see Task Lifecycle docs for how change requests work). This tells the system you want to re-run or change the task state.
Return to the E-Verify step via Create Link → Assignee: Employer → Create Link. Once at the E-Verify step, you can Create Case, which will create a new E-Verify case for the employee under the new name.
Observe the resulting E-Verify flow/state — you’ve triggered a new case without going through the entire I-9 again.
This approach is helpful when you only want to exercise different E-Verify responses and employer views quickly.
Known limitations & notes
Limited coverage. The mock implements a small, name-driven subset of E-Verify outcomes — it does not reproduce every production nuance.
No FAN PDFs. Referral/FAN PDFs cannot be downloaded from the mock.
Endpoint payload fidelity. Some endpoints may return invalid or incomplete payloads because the mock cannot perfectly replicate E-Verify’s exact responses.
UI quirks. In the test environment, you may see issues such as an inability to reopen a case after a FAN/mismatch, missing language options for referral exports, or transient UI elements disappearing. These are generally mock-environment limitations.
Exactness matters. The mock is name-driven. If the first + last name is not exact, the mock will typically not return the intended mocked response.
Troubleshooting checklist
Endpoint: Confirm the E-Verify endpoint equals:
https://mock.apidog.com/m1/806230-785042-default.Type: Verify Type = External Account in the E-Verify configuration.
Name: Confirm you used the exact first + last name spelled and spaced as shown above.
Support: If the flow cannot be reproduced, provide Onboarded support with account ID, employee ID, exact inputs (name)
Short FAQ
Q — Does my Onboarded account need to be in Test Mode?
A — No. Use Test or Live accounts; what matters is the E-Verify endpoint configured. If you want to avoid sending data to USCIS, set the endpoint to the mock URL.
Q — Why didn’t I get the expected result?
A — Common reasons: endpoint not set to the mock, Type not set to External Account, the task lacks the Verify form, name not exact, or the mock does not cover that scenario.
Q — Can the mock produce FAN PDFs?
A — No. The mock indicates FAN/referral states but does not provide downloadable FAN/referral PDFs.