> This page is for API, version 2026-01-01 (Stable) (default).
> For other versions, use one of these documentation indexes:
> - 2026-01-01 (Stable) (default): https://developer.deel.com/api/stable/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developer.deel.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developer.deel.com/_mcp/server.

# Amendment Statuses

> Full reference for EOR amendment status codes and hierarchy

## Amendment statuses

Amendments pass through multiple statuses from creation to completion. The API returns these statuses in an array within the response. Check the most recent status to determine the amendment's current state.

### Amendment status structure

Amendment statuses are hierarchical: each dot-separated segment in the `name` field adds a level of detail. The tables below document the possible `name` values, grouped by lifecycle stage. Use the `name` field for branching logic in your integration. See [Status payload](#status-payload) at the end of this page for the full object shape and the `friendly_name` field.

#### Draft stage

*Amendments that are still being prepared and can be modified.*

| `name`  | Description                                                                                  | Next step                    |
| ------- | -------------------------------------------------------------------------------------------- | ---------------------------- |
| `DRAFT` | The amendment is still being prepared and can be modified. The client can edit or submit it. | Moves to Preparing documents |

#### Preparing documents stage

Statuses related to document preparation and internal review. Documents are being created, reviewed, or paused for input before signatures can begin. No action required by you in this case, fetch the amendments to get the latest status.

| `name`                                    | Description                               | Next step                                                 |
| ----------------------------------------- | ----------------------------------------- | --------------------------------------------------------- |
| `PREPARING_DOCUMENTS`                     | Under review                              | Await Deel/legal review                                   |
| `PREPARING_DOCUMENTS.AMENDMENT_REQUESTED` | —                                         | —                                                         |
| `PREPARING_DOCUMENTS.PAUSED`              | Moved to paused for legal inputs          | Legal team will review it                                 |
| `PREPARING_DOCUMENTS.PREPARING_DONE`      | —                                         | —                                                         |
| `PREPARING_DOCUMENTS.WAITING_HRX_ACTION`  | Sent to HRX to process after legal review | HRX completes the amendment process and sends for signing |

#### PREPARING_DOCUMENTS.AMENDMENT_REQUESTED checkpoints

```
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.CUSTOM_REVIEW
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.CUSTOM_REVIEW.APPROVED_CUSTOM
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.CUSTOM_REVIEW.CUSTOM_REVIEW
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.CUSTOM_REVIEW.CUSTOM_SKIPPED
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.CUSTOM_REVIEW.INIT_CUSTOM
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.EA
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.EA.DOCUMENTS_READY
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.EA.INIT_EA
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.EA.PENDING_DOCUMENT_SUBMIT
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.EA.READY
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.EA.SKIPPED
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.SOW
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.SOW.DOCUMENTS_READY
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.SOW.INIT_SOW
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.SOW.PENDING_DOCUMENT_SUBMIT
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.SOW.READY
PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.SOW.SKIPPED
```

#### PREPARING_DOCUMENTS.PAUSED checkpoints

```
PREPARING_DOCUMENTS.PAUSED.LEGAL_REVIEW
PREPARING_DOCUMENTS.PAUSED.LEGAL_REVIEW.DECLINED
PREPARING_DOCUMENTS.PAUSED.LEGAL_REVIEW.IN_PROGRESS
PREPARING_DOCUMENTS.PAUSED.LEGAL_REVIEW.SOLVED
PREPARING_DOCUMENTS.PAUSED.LEGAL_REVIEW.TO_DO
PREPARING_DOCUMENTS.PAUSED.LEGAL_REVIEW.WAITING_FOR_ANOTHER_TEAM
PREPARING_DOCUMENTS.PAUSED.LEGAL_REVIEW.WAITING_FOR_CLIENT_FEEDBACK
PREPARING_DOCUMENTS.PAUSED.MOBILITY_INPUT
PREPARING_DOCUMENTS.PAUSED.PAUSED_BY_HRX
```

#### PREPARING_DOCUMENTS.WAITING_HRX_ACTION checkpoints

```
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.CUSTOM_REVIEW
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.CUSTOM_REVIEW.APPROVED_CUSTOM
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.CUSTOM_REVIEW.CUSTOM_REVIEW
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.CUSTOM_REVIEW.CUSTOM_SKIPPED
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.CUSTOM_REVIEW.INIT_CUSTOM
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.EA
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.EA.DOCUMENTS_READY
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.EA.INIT_EA
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.EA.PENDING_DOCUMENT_SUBMIT
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.EA.READY
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.EA.SKIPPED
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.SOW
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.SOW.DOCUMENTS_READY
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.SOW.INIT_SOW
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.SOW.PENDING_DOCUMENT_SUBMIT
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.SOW.READY
PREPARING_DOCUMENTS.WAITING_HRX_ACTION.SOW.SKIPPED
```

#### Signature stage

These statuses indicate the amendment is awaiting signature, either from Deel as countersign or from the client or employee. The flow splits into two tracks: **EA** (Employee Agreement) for changes the employee must sign, and **SOW** (Statement of Work) for changes the client must sign.

| `name`                                             | Description                    | Action required                             |
| -------------------------------------------------- | ------------------------------ | ------------------------------------------- |
| `AWAITING_SIGNATURE`                               | Awaiting signature             | Deel, client, or employee signs             |
| `AWAITING_SIGNATURE.EA.PENDING_EMPLOYEE_SIGNATURE` | Waiting for employee signature | Employee must sign                          |
| `AWAITING_SIGNATURE.EA.PENDING_COUNTERSIGN`        | Waiting for Deel countersign   | Deel countersigns after employee has signed |
| `AWAITING_SIGNATURE.SOW.PENDING_CLIENT_SIGNATURE`  | Waiting for client signature   | Client must sign                            |
| `AWAITING_SIGNATURE.SOW.PENDING_COUNTERSIGN`       | Waiting for Deel countersign   | Deel countersigns after client has signed   |

#### AWAITING_SIGNATURE.EA tracking checkpoints

```
AWAITING_SIGNATURE.EA.INIT
AWAITING_SIGNATURE.EA.SIGNED
AWAITING_SIGNATURE.EA.SKIPPED
```

#### AWAITING_SIGNATURE.SOW tracking checkpoints

```
AWAITING_SIGNATURE.SOW.INIT
AWAITING_SIGNATURE.SOW.SIGNED
AWAITING_SIGNATURE.SOW.SKIPPED
```

#### Active or upcoming stage

Statuses when an amendment is in effect or scheduled for the future.

| `name`     | Description                                                                                                        |
| ---------- | ------------------------------------------------------------------------------------------------------------------ |
| `ACTIVE`   | The amendment has taken effect and its terms are now legally applied on the employee's contract. No action needed. |
| `UPCOMING` | The amendment has been approved and scheduled but is not yet effective.                                            |

#### Canceled, rejected, or void stage

Statuses for amendments that were canceled, rejected, or voided.

| `name`      | Description                                                                                                                              |
| ----------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `CANCELLED` | The amendment was canceled, either by the client or internally, before completion.                                                       |
| `REJECTED`  | The amendment was reviewed and explicitly rejected by Deel.                                                                              |
| `VOID`      | The amendment has been voided, making it invalid. This may happen if it is superseded by another amendment or due to compliance reasons. |

### How to read amendment statuses

Amendment statuses are structured in a hierarchical format, where each level provides increasing detail about the amendment’s progress.

#### 1. Parent phase

* Represents the overall stage of the amendment, for example `PREPARING_DOCUMENTS`.
* Indicates the broad area of progress, such as document preparation, review, or approval.

#### 2. Sub-step

* A more specific action within the parent phase, for example `PREPARING_DOCUMENTS.AMENDMENT_REQUESTED`.
* Helps identify what part of the larger process is currently active.

#### 3. Detailed checkpoint

* Provides the most detailed level of the amendment’s status, for example `PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.SOW.PENDING_DOCUMENT_SUBMIT`.
* Clarifies the current condition of the amendment, such as pending submission, under review, or awaiting approval.

> **Note**
>
> By reading an amendment status from left to right, you can move from the broad phase to the precise checkpoint, making it easy to understand exactly where the amendment stands in the process.

### Why this matters

* Each nested level gives increasing detail about the amendment’s progress.
* The high-level phase always represents the current overall state of the amendment, for example `PREPARING_DOCUMENTS`, `ACTIVE`, `UPCOMING`, or `CANCELLED`.
* Sub-steps and detailed checkpoints record the lifecycle progression of the amendment. This is useful for auditing, troubleshooting, and tracking how the amendment evolved over time.

> **Note**
>
> The parent status is the single source of truth for the amendment’s current state. The history should not be used to infer the current status, for example by taking the last status in the array.

### Status payload

Each entry in the status history array has the following shape:

| Field                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ----------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                              | The hierarchical status code documented in the tables above. Use this for branching logic.                                                                                                                                                                                                                                                                                                                                               |
| `friendly_name`                     | A shorter human-readable label. For most statuses this is the last segment of `name`. A few are explicitly renamed: legal review surfaces as `AWAITING_LEGAL_INPUT`, mobility input as `AWAITING_MOBILITY_INPUT`, document-submit checkpoints as `AWAITING_REVIEW`, client signature as `AWAITING_CLIENT_ACCEPTANCE`, and the EA and SOW countersign checkpoints as `PENDING_EA_COUNTERSIGN` and `PENDING_SOW_COUNTERSIGN` respectively. |
| `_amendment_flow_status.created_at` | When the status was recorded.                                                                                                                                                                                                                                                                                                                                                                                                            |

The example below shows an amendment in the `PREPARING_DOCUMENTS` phase. The request is logged as `PREPARING_DOCUMENTS.AMENDMENT_REQUESTED`, and the amendment is waiting for Deel review at the `PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.SOW.PENDING_DOCUMENT_SUBMIT` checkpoint:

```json
[
  {
    "name": "PREPARING_DOCUMENTS",
    "friendly_name": "PREPARING_DOCUMENTS",
    "_amendment_flow_status": {
      "created_at": "2025-03-19T17:15:02.053Z"
    }
  },
  {
    "name": "PREPARING_DOCUMENTS.AMENDMENT_REQUESTED",
    "friendly_name": "AMENDMENT_REQUESTED",
    "_amendment_flow_status": {
      "created_at": "2025-03-19T17:15:02.053Z"
    }
  },
  {
    "name": "PREPARING_DOCUMENTS.AMENDMENT_REQUESTED.SOW.PENDING_DOCUMENT_SUBMIT",
    "friendly_name": "AWAITING_REVIEW",
    "_amendment_flow_status": {
      "created_at": "2025-03-19T17:15:02.053Z"
    }
  }
]
```