I-9 Verification Using Flows

Enable I-9 verification in Developer Portal

From the Developer Portal, check the flows partner config Allow employer to choose whether an employee should complete an I-9 during self-onboarding to enable the I-9 feature in Flows. See the Customize Flows guide for more details.

2. Create an employee and invite them to self-onboard

  1. Create an employee and invite them to self-onboard, this can be done via the company_onboarding flow or add_employees flow.
curl --location 'https://api.gusto-demo.com/v1/companies/{{company_uuid}}/flows' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{access_token}}' \
--data '{
     "flow_type": "company_onboarding"
}'
  1. On the Documents page in the onboarding flow, check the box to include Form I-9.

🚧

If employer does not select self-onboarding, then the I-9 option will not be available.

The employer can also uncheck the "Employment eligibility (Form I-9)" option, in which case the employee can self-onboard without providing authorization status information.

  1. Invite the employee to self-onboard.

3. Employee completes self-onboarding process

  1. Generate an employee_self_management flow for the new employee.
curl --location 'https://api.gusto-demo.com/v1/companies/{{company_uuid}}/flows' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{access_token}}' \
--data '{
     "flow_type": "employee_self_management",
     "entity_type": "Employee",
     "entity_uuid": "{{employee_uuid}}"
}'

  1. The employee should enter their authorization status on the Personal details page.
    1. Additional details may be required, depending on which authorization status is chosen.
  1. Continue through the flow, filling out all required info to successfully onboard the employee
    1. You can return to the Personal Details page and edit authorization status information.

📘

After the I-9 form is signed, you cannot edit the authorization status information.

  1. On the Documents page, sign the Form I-9
    1. When signing the Form I-9, add preparers/translators as needed. Up to 4 can be added.
  1. Finish self-onboarding for the employee

4. Employer verifies employee information

  1. Verify the employee has completed self-onboarding. Go back into the company_onboarding or add_employees flow to verify the employee.
  2. Continue through the steps until you have successfully finished onboarding the employee.

5. Employer adds evidence documents via the I-9 verification flow

  1. Generate an i9_verification flow for the employee. Ensure this is done after the employee has fully onboarded and signed the Form I-9.
curl --location 'https://api.gusto-demo.com/v1/companies/{{company_uuid}}/flows' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{access_token}}' \
--data '{
     "flow_type": "i9_verification",
     "entity_type": "Employee",
     "entity_uuid": "{{employee_uuid}}"
}'

  1. Select I-9 verification document types
  1. Fill out verification document details for selected document types
  1. Sign the Form I-9 as the employer
  1. If successful, you will see the Finish page where you can download the completed Form I-9 for the employee

🚧

We do not support I-9 re-verification or going through the I-9 process again after deleting the form through the API/flows.