This guide covers: creating a client record, sending the e-sign onboarding packet, adding the first employee, and running the first payroll. SMB users skip step 1 — their own company is the client and is created at signup.
Add the client
What it does: Creates the company record (EIN, legal name, address, pay frequency, contact, owners) that everything else hangs off.
Where: Dashboard → Clients (/clients) → click Add Client (top right).
Steps:
- From
/clientsclick Add Client. - On the Company step: type Legal Name and optional DBA, then EIN (XX-XXXXXXX) and pick an Entity Type (Sole Proprietorship · Partnership · LLC · S Corporation · C Corporation · Nonprofit).
- Click Next.
- On the Addresses step: type the physical street address (the Google autocomplete fills city/state/ZIP). Leave Same as physical address ticked unless mail goes elsewhere.
- Click Next.
- On the Pay & Contact step: pick Pay Frequency (Weekly · Bi-weekly · Semi-monthly · Monthly). Optionally enter one First pay period (Period Start · Period End · Check Date) — Payrollix derives the cadence from it. Add Company Phone, Company Email, and (optional) Contact Person for W-2 / Tax Forms.
- Click Next.
- On the Representatives step: click Add representative for each beneficial owner (>=25%) and control officer (CEO/CFO/COO/Director). Enter their DOB, SSN, residence address, and tick Beneficial owner with the ownership percentage and/or Control officer. Required for Moov KYB later — but you can click Skip for now and add them in Banking.
- On the Review step: scan the summary and click Create Client.
The stepper shows each step as a labelled icon (no "Step N" prefix in the UI — the labels are Company, Addresses, Pay & Contact, Representatives, Review).
Who: Accountants. SMB owners don't see this — their single client was created at signup.
Notes: The EIN field is masked as you type. If a representative fails to save you'll see "Client created, but N representative(s) failed — add them in Banking." — the client itself still exists.
Send the onboarding packet
What it does: Emails the client an e-sign packet with Form 8655 (IRS reporting agent authorization), per-state Reporting Agent / TPA POAs, the Master Services Agreement, and Moov acknowledgements. The client signs once, and Payrollix is authorized to file and pay on their behalf.
Where: Two options.
- Per-client: Clients → [the client] → Overview (
/clients/[clientId]) → click Invite to client portal (also sends the onboarding packet for clients that haven't started it). - Bulk across all clients: Clients → Send onboarding packets (top of
/clients).
Steps (bulk):
- On
/clientsclick Send onboarding packets (amber outline button next to Add Client). - The Bulk send onboarding packets modal opens scoped to your accountant account.
- Pick Send (first time) or Remind (re-send to clients already nudged). The modal previews dry run by default — confirm the list, then untick dry-run and run for real.
- Click Send to fire.
Who: Accountants only.
Notes: Until the client signs (status fully_signed) or you mark them with client.ra_on_file=True, create_payroll_run is blocked with HTTP 412 ONBOARDING_PACKET_NOT_SIGNED — the run-payroll page surfaces this as an Onboarding required modal that deep-links to client settings.
Add at least one employee
What it does: Creates the employee record (W-2 or 1099), captures W-4 data, address, pay rate, and tax setup so payroll can include them.
Where: Clients → [the client] → Employees (/clients/[clientId]/employees) → click Add Employee.
Steps:
- Open the client and click Employees in the left rail.
- Click Add Employee (top right).
- Pick W2 or 1099 for Worker type.
- Fill in First Name, Last Name, SSN (XXX-XX-XXXX), Date of Birth, Hire Date, optional Email and Phone, and (optional) Emergency Contact name/phone/relationship.
- Type the employee's home address. Pick the Assigned work location if the client has multiple work locations set up.
- Pick Pay Type (Hourly · Salary · Project) and enter the Pay Rate.
- For W-2: pick Filing Status, enter dependents/other income/deductions/additional withholding on Federal W-4, and complete the state W-4 form that appears for the work state. For 1099: fill in Business Name, EIN, Contractor Type, and Payment Terms.
- Click Create Employee.
Who: Accountants (for any client) and SMB owners (for their own company).
Notes: If the work state is Ohio, the Ohio school district field appears and auto-detects the 4-digit code from the address. For PA, OH, KY and similar local-tax states the Local Tax lookup populates the local jurisdiction. Tick I have reciprocity exemption if the employee has filed the right reciprocity form (e.g. PA-NJ).
Run the first payroll
What it does: Calculates gross pay, taxes, deductions, and net pay for the period, then queues direct deposits and tax payments after approval.
Where: Clients → [the client] → Payroll (/clients/[clientId]/payroll) → click New Payroll Run (or the top-of-dashboard Run Payroll quick action).
Steps:
- Open the client and click Payroll → New.
- Enter the Pay Period Start, Pay Period End, and Pay Date (defaults to client cadence).
- The employee grid loads with one row per active employee. For each row tick Include and enter Hours Regular / Hours Overtime / Hours Holiday / Hours PTO / Hours Sick (hourly) or leave at the per-period salary default (salary). Add Bonus and Commission if applicable.
- The Payment method column auto-picks Direct deposit if the employee has a Moov-linked bank, Paper check otherwise. Flip a row to paper check by clicking the chip.
- Click Preview to calculate gross, taxes, deductions, and net side-by-side.
- Click Save & Approve to lock the run. Direct deposits and tax payment vouchers fire automatically per your ACH timing (see the Direct Deposit Timing card on the page).
Who: Accountants (any client) and SMB owners (own company). Team members with the Viewer role see the page but the Save & Approve button is hidden.
Notes: If the client hasn't completed onboarding signing, the Onboarding required modal blocks the run with a deep-link to client settings. If an employee already has a row for this period, the grid flags has_existing_payroll so you don't double-pay.
Related: Accept an invitation · Dashboard & client list · How ACH timing works · Your filing authorization.