# Employment status

Every HR system describes employment differently. Mesh maps them onto one set of
statuses, so a policy you write once behaves the same no matter which HR platform
reported the data.

## The statuses

| Mesh status | Meaning |
|---|---|
| **Active** | Currently employed and working |
| **Pending** | Hired but not yet started — a future joiner |
| **On leave** | Employed, temporarily away (for example parental or medical leave) |
| **Suspended** | Employed, temporarily not permitted to work |
| **Terminated** | No longer employed |
| **Deceased** | Recorded as deceased by the HR system |
| **Unknown** | Mesh cannot confidently interpret what the HR system reported |

## Why the distinctions matter

These aren't cosmetic. **Pending**, **On leave** and **Suspended** all describe
someone who is not currently working but has **not left** — and each carries
different access implications.

Collapsing them into a single "inactive" state, or worse into **Terminated**, gets
it wrong in both directions: it either revokes access from an employee on leave who
is coming back, or leaves access in place for someone who has gone.

**Deceased** is kept distinct for the same reason. It is a departure, but it is not
a resignation, and organizations handle the two differently.

## When Mesh reports Unknown

**Unknown** is a deliberate answer, not a failure.

Mesh reports it when your HR system returns an employment state it can't map with
confidence — most often because that provider doesn't have provider-specific status
mapping yet. Workday and TriNet have provider-specific mapping today; other
supported providers connect and sync normally, and may report **Unknown** for states
that are ambiguous.

Mesh would rather tell you it doesn't know than assert that someone is Active or
Terminated on a guess — a wrong guess in either direction is an access decision.

All other identity fields sync normally while status is **Unknown**.

If a provider's states are consistently **Unknown** and you need them mapped,
contact [Axiad Customer Success](mailto:customer.success@axiad.com) — mapping is
per-provider work.

## Someone missing from a sync is not treated as departed

If a person stops appearing in sync results, Mesh does **not** conclude they have
left. A departure is recorded only when your HR system explicitly says so.

This matters because records disappear for mundane reasons — a filter changed, a
permission narrowed, a partial sync. Treating absence as termination would revoke
access from employed people.

## Rehires and status changes

Employment isn't one-directional. People go on leave and return; people leave and
are rehired. Mesh reflects the **latest** state your HR system reports, with the
timing that goes with it, rather than assuming status only moves one way.

## What Mesh keeps

Mesh retains the **original value your HR system reported** alongside its own
interpretation, for support and troubleshooting. Product screens show only the
interpreted status, so what you see stays consistent across providers.
