---
updatedAt: 2026-05-27T23:30:58.000Z
agentTools:
  projectIndex: https://docs.checkhq.com/llms.txt
---

# Check + Layer Accounting Integration Guide

## Introduction

[Layer](https://www.layerfi.com/) is an embedded accounting platform that enables small business software platforms to offer automated bookkeeping and accounting directly within their products. Layer connects to payroll, banking, and commerce data to generate real-time financial statements and accounting journal entries — without requiring the business owner to use separate accounting software.

The Check + Layer integration enables any Check partner to offer Layer's embedded accounting product to businesses on their platform. Once authorized, Layer automatically pulls granular payroll data from Check after each payroll run to generate accurate accounting journal entries. Your role as a partner is to authorize the integration — Layer handles the rest.

> 🚧 Implementation Timeline Expectations
>
> In order to access our integration with Layer, you must first be introduced to Layer to establish a relationship and receive API credentials directly from Layer.
>
> If interested in using our integration, please reach out to your Check representative to get this process started.

## Integration Overview

The Check + Layer integration follows a two-step process:

1. **Configure the Layer connection** — Call Layer's API with the Check company ID to associate the business with Layer.
2. **Authorize Layer via Check** — Call Check's [Authorize an Integration Partner API](https://docs.checkhq.com/reference/integration-partners-copy) to grant Layer access to the company's payroll data.

> 📘 Layer Integration Documentation
>
> Layer maintains its own detailed integration guide covering the full setup from their perspective. See [Layer's Check Embedded Payroll integration guide](https://docs.layerfi.com/integrations/check-embedded-payroll) for additional context.

## Step 1: Configure the Layer Connection

Before authorizing Layer in Check, you need to configure the payroll connection in Layer's system. Call Layer's configuration endpoint with the Check company ID:

```javascript PUT
https://api.layerfi.com/v1/businesses/{businessId}/payroll/check/configs

REQUEST BODY:
{
    "external_id": "{{companyId}}"
}
```

Replace `{businessId}` with the Layer business ID and `{{companyId}}` with the Check company ID.

> 📘 Layer API Credentials
>
> Layer's API uses its own authentication. Obtain your API credentials directly from Layer during the onboarding process. See [Layer's API documentation](https://docs.layerfi.com) for authentication details.

## Step 2: Authorize Layer via Check

After configuring the connection in Layer, authorize Layer to access the company's payroll data through Check by calling the [Authorize an Integration Partner](https://docs.checkhq.com/reference/integration-partners-copy) API endpoint:

```javascript PUT
{{apiUrl}}/integrations/partners/{{integrationPartnerId}}/authorize

REQUEST BODY:
{
    "integration_permission": "{{integrationPermissionId}}",
    "company": "{{companyId}}",
    "tos_timestamp": "2025-01-01T00:00:00Z",
    "product_purchase_timestamp": "2025-01-01T00:00:00Z"
}
```

Set `tos_timestamp` to the time the employer agreed to Layer's terms of service, and `product_purchase_timestamp` to the time the employer purchased or enabled the Layer product on your platform.

### Layer Partner and Permission IDs

Use the following fixed IDs when referencing Layer in Check's API :

| Parameter                | Value                      |
| :----------------------- | :------------------------- |
| `integration_partner`    | `int_Ccn63OpX6zKfIvssRdyB` |
| `integration_permission` | `ipe_S2LMi4ckzax5YdN8BokZ` |

Alternatively, look up the Layer integration partner and permission dynamically.

**Find the Layer integration partner:**

```javascript GET
{{apiUrl}}/integrations/partners

// Look for the partner with name "Layer" in the response list.
```

**Find the active integration permission:**

```javascript GET
{{apiUrl}}/integrations/permissions

// Look for the active permission associated with the Layer integration partner.
```

### Check Connection Status

Use the Integration Access API to verify that the authorization is complete:

```javascript GET
{{apiUrl}}/integrations/accesses?company={{companyId}}

RESPONSE BODY:
{
    "id": "iac_example",
    "company": "{{companyId}}",
    "status": "connected",
    "integration_permission": "{{integrationPermissionId}}",
    "access_type": "Integrated",
    "integration_partner": "{{integrationPartnerId}}",
    "scope": [...]
}
```

When the integration access has a `status` of `connected` and an `access_type` of `Integrated`, the connection is ready.

## What to Expect

Once the integration is active, Layer automatically pulls payroll data from Check after each payroll run to generate accounting journal entries. No additional partner action is required — the integration runs in the background. Layer uses the payroll data to produce accurate, categorized journal entries that flow into the business's accounting ledger within Layer's embedded product.