> ## Documentation Index
> Fetch the complete documentation index at: https://docs.toku.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Paychex Worker Sync

> How Toku syncs your worker roster from Paychex Flex

Toku keeps its roster in sync with Paychex Flex so stablecoin elections always map to the right person. Paychex models both W-2 employees and 1099 contractors as **workers**, and Toku syncs both. Sync is read-only and runs automatically after every connection and on a rolling schedule.

## Endpoint

Toku reads workers through Paychex's company-scoped workers resource:

```bash theme={null}
curl "https://api.paychex.com/companies/<company_id>/workers" \
  -H "Authorization: Bearer <access_token>"
```

A trimmed, representative example response:

```json theme={null}
{
  "content": [
    {
      "workerId": "00Z5V9BJTLXCR27S3RS4",
      "workerType": "EMPLOYEE",
      "name": {
        "givenName": "Ada",
        "familyName": "Lovelace"
      },
      "currentStatus": {
        "statusType": "ACTIVE"
      }
    },
    {
      "workerId": "00Z5V9CQ8MXDN41T7UW2",
      "workerType": "INDEPENDENT_CONTRACTOR",
      "name": {
        "givenName": "Grace",
        "familyName": "Hopper"
      },
      "currentStatus": {
        "statusType": "ACTIVE"
      }
    }
  ]
}
```

See Paychex's reference for the full schema: [Worker resource](https://developer.paychex.com/resources/worker).

## What Toku Reads

| Field           | Purpose                                                                                   |
| --------------- | ----------------------------------------------------------------------------------------- |
| `workerId`      | Stable identifier used to match the worker across systems                                 |
| `workerType`    | Distinguishes W-2 employees (`EMPLOYEE`) from 1099 contractors (`INDEPENDENT_CONTRACTOR`) |
| `name`          | Roster display and worker-portal invitations                                              |
| `currentStatus` | Marks departed workers inactive in Toku                                                   |

Paychex exposes worker sub-resources for compensation, communications, and direct deposit; Toku reads only what it needs to validate elections and display the roster.

## Sync Behavior

* **New workers** appear in Toku automatically once they exist in Paychex Flex.
* **Updates** (name, status, worker type) flow through on the next sync.
* **Inactive workers** are marked inactive in Toku and stop receiving stablecoin payments.
* A manual sync can be triggered anytime from **Settings → Payroll Integrations** in Toku.

<Note>
  Worker sync never writes to Paychex. Toku does not modify worker records, compensation, communications, or direct deposit details.
</Note>

## Next

<CardGroup cols={2}>
  <Card title="Payroll Sync" icon="calendar" href="/integrations/paychex/payroll-sync">
    How Toku tracks pay periods and checks
  </Card>

  <Card title="The Toku Deduction" icon="money-bill-transfer" href="/integrations/paychex/deduction">
    How the deduction is applied via pay components
  </Card>
</CardGroup>
