## Overview

This guide walks through how to integrate **Incode’s identity verification** into the **Greenhouse Applicant Tracking System (ATS)**. By embedding identity verification steps directly into the hiring workflow, you can ensure candidates are who they say they are—protecting against fraud and streamlining trust in your hiring process.

We’ll cover:

- The candidate journey with identity verification
- How to set up automation using **Tines** (other SOAR tools optional)
- Custom integration steps with Greenhouse ATS
- **What eKYC means in hiring workflows**

## Candidate Journey

Below is an example candidate journey diagram that illustrates where identity verification can fit into the recruiting workflow:

### Key Stages

1. **Application Submission** – Candidate applies through the job board.
2. **eKYC Check** _[optional]_ – Candidate’s phone number and email trigger an Incode identity check.
3. **Risk Scoring**– Based on eKYC risk levels (Low, Medium, High), candidates can be routed differently based on the risk score:

- **High risk** → Immediate identity verification (document + selfie).
   - **Medium risk** → Verification before recruiter/hiring manager interviews.
   - **Low risk** → Direct progression to interviews.
4. **Final Verification** – Before offer issuance or final interview stage, candidates complete a final identity verification step.
5. **Results Sync** – Results are written back into Greenhouse ATS, updating the candidate profile.

This creates a **layered trust model**, ensuring each stage of hiring has the right level of identity assurance.

## What is eKYC?

**eKYC (electronic Know Your Customer)** is a digital identity verification process originally used in banking and compliance, now applied to hiring.

In the **Greenhouse ATS context**, eKYC means:

- Using candidate data (email, phone) to perform fraud checks.
- Assessing whether the identity has a **history of fraud, synthetic activity, mismatches, lack of history, etc**.
- Returning a **risk score** (Low / Medium / High) that helps recruiters decide the right level of additional verification.

This provides a **tiered trust model**: most candidates move smoothly through hiring, while suspicious ones undergo stronger checks early in the process.

## Integration with Greenhouse via Tines

To orchestrate the verification flow, we use **Tines**—a powerful automation platform.

Here’s a pre-built Tines story that shows how to connect **Greenhouse ATS → Incode → Greenhouse ATS**:

👉 [Verify Candidate Identity with Greenhouse and Incode (Tines Library)](https://www.tines.com/library/stories/1325972/?name=verify-candidate-identity-with-greenhouse-and-incode&redirected-from=%2Flibrary%2F?view=all&s=incode&utm_source=chatgpt.com)

### Example Flow in Tines

- **Trigger**: A candidate submits an application in Greenhouse.
- **Action**: Tines retrieves candidate data (name, email & phone) via Greenhouse API.
- **Verification**: The candidate is sent an Incode identity verification link.
- **Callback**: Incode returns verification results to Tines.
- **Update**: Tines pushes the results back into Greenhouse ATS, updating the candidate record.

This setup allows recruiters and hiring managers to see **real-time verification status** without leaving Greenhouse.

## Step-by-Step Custom Integration Guide

### 1. Prerequisites

- A Greenhouse ATS account with API access.
- Incode Workforce developer account.
- A Tines workspace for automation (or another automation platform).

### 2. Configure Greenhouse Webhooks & Customer Fields

Set up a webhook in Greenhouse ATS to trigger when a candidate is created or moves stages.

- Event: Candidate has been created / Candidate has changed stage
- Payload: Candidate details (name, email, phone)
- Destination: Tines webhook URL
- Add custom fields in Greenhouse for the results you want to map, such as `Verification Status`, `Risk Score`.

### 3. Build Tines Story

Import the [Tines story](https://www.tines.com/library/stories/1325972/?name=verify-candidate-identity-with-greenhouse-and-incode&redirected-from=%2Flibrary%2F?view=all&s=incode&utm_source=chatgpt.com).

- Update credentials for your Greenhouse and Incode APIs.
- Define routing rules based on eKYC risk scoring.
- Run the Lookup Customer Fields action to retrieve the results of the

### 4. Connect to Incode API

Use the Incode API to initiate and complete identity verification.

Endpoints:

- `POST /omni/externalVerification/ekyc` – Initiates risk check with email/phone.
- `POST /v1/workforce/verification/candidate/generate-verification-link` – Creates URL for document + selfie verification.

### 5. Sync Results to Greenhouse

Tines will call the Greenhouse API to update candidate profiles with verification results.

## Example Use Cases

- **High-volume hiring** → Automatically filter out fraudulent applicants at scale.
- **Sensitive roles** → Enforce mandatory verification before final interviews.
- **Global workforce compliance** → Meet KYC/AML requirements in hiring.

## Benefits

- **Frictionless**: Candidates only verify when needed.
- **Secure**: Prevents identity fraud in hiring.
- **Integrated**: Recruiters stay in Greenhouse with results synced automatically.

## Next Steps

- Work with your Incode Solutions Engineer to receive your Incode APIs.
- Import the [Tines story](https://www.tines.com/library/stories/1325972/?name=verify-candidate-identity-with-greenhouse-and-incode&redirected-from=%2Flibrary%2F?view=all&s=incode&utm_source=chatgpt.com).
- Map your hiring journey against the verification checkpoints in the diagram.
- Deploy the automation in your Tines workspace and test with sample candidates.
