# Integrating with Paychex

### Overview

To authenticate Paychex, Drivetrain requires:

* **API Key**
* **Client Secret**

These credentials are created directly in your **Paychex account.**

### Prerequisites

Before you begin, ensure the following:

* **Admin permissions** in your **company’s Paychex instance** (or access shared with you by an Admin).
* **Admin access to Drivetrain** with permission to **add data sources**.
* If payroll data is required, your Paychex account must include access to the Payroll and Check APIs.

### Step 1: Generate Your API Key and Client Secret

* Log in to **Paychex** and go to **Company Settings**.

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2Fmx7SX2fCR1jdaPO7VMxx%2Fimage.png?alt=media&#x26;token=b5b3682d-a8bb-415f-bbe8-9a0429dc1de4" alt=""><figcaption></figcaption></figure>

* Select **Integrated Apps**.

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FD9joz7r2Al3dVEzakbQX%2Fimage.png?alt=media&#x26;token=5961314c-a09c-4c56-9792-1225655e0b6c" alt=""><figcaption></figcaption></figure>

* Click **Create App**.

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FVrv7U79Nz53iOmnWC7Y0%2Fimage.png?alt=media&#x26;token=a05644f7-c1b2-4e24-81e7-e3884c320442" alt=""><figcaption></figcaption></figure>

* Enter an **Application Name** and **Description**.

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FZGqUCx48UosUGZDExHIp%2Fimage.png?alt=media&#x26;token=461b1d36-8227-4df4-b8eb-3faf68a3b406" alt=""><figcaption></figcaption></figure>

* Select **Read only** for the **Company and worker APIs**
  * If you also need to sync payroll information, select **Read only** for the **Payroll and check APIs**

<figure><img src="https://4220329029-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmBZR0D9lq6jrI895OuOU%2Fuploads%2FDVKBI3Gk6AlZKspa2hDu%2Fimage.png?alt=media&#x26;token=226a3a1a-f1fb-46cc-9d62-bdd0570a27e7" alt=""><figcaption></figcaption></figure>

* If Payroll API toggles are missing, contact your Paychex account manager for access.
* Review and accept the **Legal Notice** and **Paychex API License Agreement**, then **Save**.
* After saving, Paychex will display your **API Key** and **Client Secret**.
* **Copy these credentials — you will share them with Drivetrain in the next step.**

### Step 2: Share Your Credentials With Drivetrain

Instead of entering the API Key and Client Secret directly into Drivetrain:

1. Send your **API Key** and **Client Secret** to your Drivetrain implementation contact or customer success team using your agreed secure channel.
2. Drivetrain will configure the connector and validate access using the credentials you provide.
3. Once connected, you will see Paychex listed under **Data → Data Sources** in your workspace.

### Notes and Special Cases

#### Requesting Payroll API Access

If your Paychex account does not show the **Payroll** or **Check** **API** toggles:

Your **application provider (Drivetrain)** may need to **contact Paychex** using this message:

> We are using Merge API as a third-party integration provider and are looking to integrate {customer} payroll data into our system. We need access to the Payroll and Check APIs toggle in the Access settings for an application. Please advise what information you need from us and whether a form is required.

### Linking Multiple Companies

To link multiple companies under a Paychex parent account:

1. Ensure you are a **Super Admin** or **Security Admin** in the parent account.
2. Create the app in the **parent** account using the steps outlined above.
3. Open the app from **Company Settings → Integrated Apps → {Your App Name}**.
4. Scroll to **Company Access** and select **Add or Remove Company**.
5. Select all companies that should use the same credential set and **Save**.
6. Switch into each child company using the company dropdown in the upper-left corner.
7. In each child account, open the app under **Integrated Apps**, toggle **Access** on, and **Save**.

Once completed, share the API Key and Client Secret with Drivetrain as described in [Step 2.](#step-2-share-your-credentials-with-drivetrain) Drivetrain will configure the connector for all selected companies.
