# 2. Payroll Export Configuration

## Summary

This section provides a high-level overview for all stakeholders involved in setting up the flaik payroll export integration.

* **Purpose**: Export finalized instructor pay (hourly wages and incentives) in .CSV format to your payroll provider.
* **Delivery**: Manual download or automatic nightly transfer via SFTP/FTP.
* **Core Requirement**: You must provide a working example file from your payroll provider.

> **flaik does not define your payroll file format. You must coordinate directly with your payroll provider to understand and test this.**

***

## Roles & Responsibilities

### Resort Admin or Project Team

* Coordinate with the payroll provider to define an acceptable file template in .csv format.
* Define all types of wage pay (Teaching, Training, Non-Teaching, Private Request).
* Identify any incentives to be used (Allowance, Private Request, Head Count, Metric).
* Create a working Excel (.csv) mock-up file with your payroll provider that includes examples of each wage type and at least one incentive type.
* Ensure the mock file contains any required codes (Paycodes, Jobcodes, Business Structures/Departments).
* Upload the test file to the payroll system.
* Verify that all wage and incentive pay is correctly created in the payroll system and no pay is missing or dropped.
* Provide this tested mock-up file to flaik.
* Provide a list of all Jobcodes, Paycodes, and Business Structures to flaik so they can be uploaded into your flaik system.
* Configure the Paycodes, Jobcodes, and Business Structures on Paid Activities, and required Paycodes on Incentives.
* Sign off on the final working configuration.

### Payroll Provider

* Supply field requirements and formatting rules.
* Assist in testing and confirming upload of the mock file.

### flaik

* Provide field mappings and attend one kickoff meeting.
* Create the export configuration based on the working mock file.
* Deploy the integration to staging and production.
* Provide bug fixes as needed.

> **flaik does not manage integration with the payroll provider. Resorts are responsible for coordination, testing, and validation.**

***

## Integration Lifecycle

### Step-by-Step Process

<table data-header-hidden><thead><tr><th width="68.20001220703125"></th><th width="491.800048828125"></th><th></th></tr></thead><tbody><tr><td><strong>Step</strong></td><td><strong>Task</strong></td><td><strong>Responsible</strong></td></tr><tr><td>1</td><td>Capture wage/incentive business requirements</td><td>Resort + flaik</td></tr><tr><td>2</td><td>Provide example payroll file with valid test data</td><td>Resort</td></tr><tr><td>3</td><td>Identify paycodes, jobcodes, business structures used</td><td>Resort</td></tr><tr><td>4</td><td>Create export requirement from example file</td><td>flaik</td></tr><tr><td>5</td><td>Define flaik config and values required</td><td>flaik</td></tr><tr><td>6</td><td>Review and approve requirement</td><td>Resort</td></tr><tr><td>7</td><td>Deploy export to staging</td><td>flaik</td></tr><tr><td>8</td><td>Configure test data in flaik</td><td>Resort</td></tr><tr><td>9</td><td>Upload test file to payroll system</td><td>Resort</td></tr><tr><td>10</td><td>Validate output in payroll system</td><td>Resort</td></tr><tr><td>11</td><td>Sign off when all test cases pass</td><td>Resort</td></tr><tr><td>12</td><td>Deploy to production</td><td>flaik</td></tr><tr><td>13</td><td>Activate automatic file delivery (if applicable)</td><td>flaik</td></tr></tbody></table>

***

## Testing Requirements

* Build test cases in flaik that cover:
  * All wage types: Teaching, Non-Teaching, Training, Private Request
  * All incentive types: Staff, Metric, Headcount
* Use real Paycode and Jobcode values in test data.
* Export the .csv file and upload it to the payroll system.
* Confirm that all values appear correctly and no data is dropped.

> **Sign-off will not be accepted without a full working test verified in your payroll system.**

***

## Configuration Cheat Sheet (Resort Admin)

<table data-header-hidden><thead><tr><th width="254"></th><th></th><th data-hidden></th></tr></thead><tbody><tr><td>Element</td><td>Where to Configure</td><td>Notes</td></tr><tr><td>Paycodes</td><td>Admin – Upload required codes</td><td>Must match payroll values exactly</td></tr><tr><td>Jobcodes</td><td>Admin – Upload required codes</td><td></td></tr><tr><td>Business Structures</td><td>Admin – Upload required codes</td><td>Used to populate Cost Centers</td></tr><tr><td>Paid Activities</td><td>Add required codes from uploaded lists</td><td>Required to tag correct Paycodes/Jobcodes</td></tr><tr><td>Incentive Pay</td><td>Add required codes from uploaded lists</td><td>Must be tagged with all required codes</td></tr></tbody></table>

***

## FTP/SFTP Setup Guide

### How It Works

* Finalize payroll data in flaik by 10 PM.
* After 10 PM, flaik sends the .csv file to the FTP/SFTP destination.

### Setup Checklist

1. **Confirm with Payroll Provider:**
   * Can they accept .csv files via FTP/SFTP?
   * Can they automatically ingest the file?
   * Is error logging available?
2. **Request Account Info:**
   * SFTP/FTP server URL and port
   * Username and password
   * Directory path
   * PGP key if required
3. **Send credentials to flaik securely**

### Supported Protocols

| Protocol | Supported | PGP Support | Notes                |
| -------- | --------- | ----------- | -------------------- |
| SFTP     | ✅ Yes     | ✅ Yes       | Preferred            |
| FTP      | ✅ Yes     | ✅ Yes       | Use PGP for security |
| FTPS     | ❌ No      | ❌ No        | Not supported        |
| SCP      | ❌ No      | ❌ No        | Not supported        |
| WebDAV   | ❌ No      | ❌ No        | Not supported        |

***

## Post-Deployment & Change Management

* Production testing must be validated by the resort.
* flaik does not store historical payroll file versions. You must archive them manually.
* Changes made post-signoff may incur a development fee.

| Type                       | Cost    |
| -------------------------- | ------- |
| Bug Fix Post-Signoff       | $0      |
| Format Change Post-Signoff | \~$3000 |
| New Integration            | \~$4000 |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://knowledgebase.flaik.com/flaik-knowledge-base/for-it-specialists/payroll-export-configuration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
