---
title: "Knit - Adding Reimbursements to Payroll"
description: "Choose integration approach based on how your customer processes employee reimbursements:"
source_url: "https://www.getknit.dev/solutions-use-cases/adding-reimbursements-to-payroll"
page_type: "use-case-playbook"
---

_This page is a detailed implementation playbook for a specific Knit integration use case: “Knit - Adding Reimbursements to Payroll”._

# Knit - Adding Reimbursements to Payroll

HRIS

  Adding Reimbursements to Payroll

## Implementation: Two Integration Approaches for Different Customer Workflows

**Integration Path Decision:**

Choose integration approach based on how your customer processes employee reimbursements:

*   **Approach A (Payroll Integration):** For customers who add reimbursements to employee paychecks → Use Update Employee Compensation API
*   **Approach B (Accounting Integration):** For customers who process reimbursements through accounts payable → Use Create Invoice API

### Approach A: Payroll Integration via Compensation API

**API Endpoint:** `POST https://api.getknit.dev/v1.0/hr.employees.compensation.update`

**Supported Platforms:** 13 payroll systems including [ADP Workforce Now](https://md.getknit.dev/integration/adp-workforce-now-hris), Paychex Flex, Gusto, [Paylocity](https://md.getknit.dev/mcp-servers/paylocity-mcp-server), [Namely](https://md.getknit.dev/mcp-servers/namely-mcp-server), [Rippling](https://md.getknit.dev/mcp-servers/rippling-mcp-server), [BambooHR](https://md.getknit.dev/integration/bamboohr) Payroll, [UKG Pro](https://md.getknit.dev/mcp-servers/ukg-pro-mcp-server), [Hibob](https://md.getknit.dev/mcp-servers/hibob-mcp-server), [Workday](https://md.getknit.dev/mcp-servers/workday-mcp-server), [SAP SuccessFactors](https://md.getknit.dev/mcp-servers/sap-successfactors-mcp-server), [Zoho People](https://md.getknit.dev/mcp-servers/zoho-people-mcp-server), [Personio](https://md.getknit.dev/mcp-servers/personio-mcp-server)

**Request Body Example:**

```
{
  "employeeId": "emp_12345",
  "effectiveDate": "2025-01-15",
  "compensationType": "ONE_TIME",
  "amount": 2847.50,
  "currency": "USD",
  "description": "Expense Reimbursement - January 2025 Travel",
}
```

**Key parameters:**

*   `employeeId`: Employee identifier from HRIS sync
*   `effectiveDate`: Date when compensation should be added to payroll (next payroll cycle date)
*   `compensationType`: Must be ONE\_TIME for reimbursements (not recurring)
*   `amount`: Total approved expense amount from expense report
*   `description`: Clear identification of reimbursement purpose for payroll records

**Platform-Specific Limitations:**

*   **[Hibob](https://md.getknit.dev/mcp-servers/hibob-mcp-server):** Only supports one compensation element per employee. Multiple reimbursements must be combined into single amount.
*   **[Namely](https://md.getknit.dev/mcp-servers/namely-mcp-server):** Requires compensation group ID. Query available groups first via List Compensation API.
*   **[Personio](https://md.getknit.dev/mcp-servers/personio-mcp-server):** effectiveDate parameter not supported. Compensation applies to next available payroll cycle.
*   **[Zoho People](https://md.getknit.dev/mcp-servers/zoho-people-mcp-server):** Limited to predefined compensation types in platform. May require custom field configuration.

### Approach B: Accounting Integration via Invoice API

**API Endpoint:** `POST https://api.getknit.dev/v1.0/accounting.invoice.create`

**Supported Platforms:** 10 accounting systems including [Xero](https://md.getknit.dev/mcp-servers/xero-mcp-server), [QuickBooks](https://md.getknit.dev/mcp-servers/quickbooks-mcp-server) Online, NetSuite, Sage Intacct, Microsoft Dynamics 365 Business Central, [Zoho Books](https://md.getknit.dev/mcp-servers/zoho-books-mcp-server), FreeAgent, [FreshBooks](https://md.getknit.dev/mcp-servers/freshbooks-mcp-server), Odoo, Clear Books

**Request Body Example:**

```
{
  "vendorId": "vendor_emp_12345",
  "invoiceNumber": "EXP-2025-01-001",
  "invoiceDate": "2025-01-15",
  "dueDate": "2025-01-22",
  "lineItems": [
    {
      "description": "Business Travel - Client Meeting NYC",
      "quantity": 1,
      "unitPrice": 1247.50,
      "accountCode": "5100",
      "taxRate": 0
    },
    {
      "description": "Meals and Entertainment - Client Dinner",
      "quantity": 1,
      "unitPrice": 350.00,
      "accountCode": "5200",
      "taxRate": 0
    },
    {
      "description": "Ground Transportation - Taxi/Rideshare",
      "quantity": 1,
      "unitPrice": 150.00,
      "accountCode": "5110",
      "taxRate": 0
    }
  ],
  "currency": "USD",
}
```

**Key parameters:**

*   `vendorId`: Employee set up as vendor in accounting system (requires pre-provisioning)
*   `lineItems`: Individual expense categories mapped to chart of accounts codes
*   `accountCode`: GL account for each expense type (5100=Travel, 5200=Meals, etc.)
*   `status`: Typically AWAITING\_APPROVAL to route through AP approval workflow

**Platform-Specific Limitations:**

*   **[Xero](https://md.getknit.dev/mcp-servers/xero-mcp-server):** Requires contact (vendor) to exist before invoice creation. Pre-sync employee vendor records.
*   **[QuickBooks](https://md.getknit.dev/mcp-servers/quickbooks-mcp-server) Online:** Account codes must match existing chart of accounts. Query accounts first via List Accounts API.
*   **NetSuite:** Requires subsidiary, department, and location for multi-entity organizations.
*   **Sage Intacct:** Dimension requirements (department, project, class) vary by customer configuration.
*   **[Zoho Books](https://md.getknit.dev/mcp-servers/zoho-books-mcp-server):** Minimum 2 line items required. Single expense must be split or padded.
*   **Odoo:** totalAmount parameter ignored. Amount calculated from line items only.

### Step 3: Handle Expense Category Mapping and Chart of Accounts

Regardless of integration approach, expense categories from your travel management platform must map to financial system coding structures. This ensures accurate financial reporting and budget tracking.

**Expense category mapping examples:**

| Expense Category (T&E Platform) | Payroll Category | GL Account Code (Accounting) | Typical Description |
| --- | --- | --- | --- |
| Airfare | REIMBURSEMENT | 5100 (Travel Expense) | Business Travel - Airfare |
| Hotel | REIMBURSEMENT | 5105 (Lodging) | Business Travel - Accommodation |
| Meals | REIMBURSEMENT | 5200 (Meals & Entertainment) | Business Meals |
| Ground Transportation | REIMBURSEMENT | 5110 (Local Transportation) | Taxi/Rideshare/Parking |
| Office Supplies | REIMBURSEMENT | 6100 (Office Expenses) | Business Supplies Purchase |
| Equipment | REIMBURSEMENT | 1500 (Fixed Assets) | Equipment Purchase (Capitalized) |

## Key APIs and Data Models for Reimbursement Integration

| Integration Type | API Endpoint | Platform Support | Key Considerations |
| --- | --- | --- | --- |
| Payroll Integration | `POST /v1.0/hr.employees.compensation.update` | 13 payroll platforms | Use ONE\_TIME compensation type. Map to next payroll cycle date. Combine multiple expense reports per employee if platform limits compensation entries. |
| Accounting Integration | `POST /v1.0/accounting.invoice.create` | 10 accounting platforms | Requires employee vendor records pre-configured. Map expense categories to chart of accounts. Include line item detail for audit trail. |
| Employee Vendor Setup | `POST /v1.0/accounting.vendor.create` | Same 10 accounting platforms | Pre-provision employees as vendors in accounting system. Required before invoice creation. |

**Workflow decision matrix:**

*   **Customer processes reimbursements in payroll:** Use Compensation API → Add as ONE\_TIME payment in next payroll cycle
*   **Customer processes via accounts payable:** Use Invoice API → Create invoice for AP approval and payment
*   **Customer uses both methods:** Allow configuration per employee or department (executives via payroll, contractors via AP)
*   **Multi-entity customers:** Route to appropriate system based on employee entity or location assignment

## Wrapping Up: Eliminate Manual Reimbursement Processing and Accelerate Employee Payments

Automated reimbursement integration transforms expense processing from a manual, multi-system workflow into a streamlined, error-free operation. By automatically pushing approved expense totals into payroll or accounting systems—whichever your customer uses—you eliminate data re-entry, reduce payment processing time, and ensure accurate financial reporting of employee expense reimbursements.

**Key capabilities unlocked:**

*   **Dual integration path support:** Single implementation supports both payroll-based reimbursement (13 platforms) and accounts payable workflows (10 platforms)
*   **Automated payment processing:** Approved expenses automatically populate in financial systems, eliminating manual data transfer and reducing reimbursement cycle time
*   **Accurate expense categorization:** Map expense types to chart of accounts codes or payroll categories, ensuring correct financial reporting and budget tracking
*   **Platform-specific handling:** Navigate platform limitations (Hibob's single compensation entry, Zoho Books' 2-item minimum, NetSuite's multi-entity requirements) automatically
*   **Audit trail preservation:** Line-item detail flows from expense reports to financial records, maintaining complete audit trail from submission to payment
*   **Multi-entity support:** Route reimbursements to correct financial system based on employee entity, location, or organizational assignment

## Built for Scale, Speed,  
and Simplicity


## Related pages

- [Use cases hub](https://md.getknit.dev/use-cases)
- [Solutions hub](https://md.getknit.dev/solutions)
