Client-initiated resignation

In some workflows, the client initiates the resignation process on behalf of the worker rather than the worker doing so directly. Unlike the worker-initiated flow, where submitting the resignation implicitly confirms it, this flow requires an explicit sign-off step from the worker after the client submits the request.

For an overview of all offboarding flows, see EOR offboarding.

Prerequisites

  • Client API token: Required for Step 1 (request resignation) and Step 4 (review PTO). See Authentication.
  • Worker API token: Required for Step 2 (view pending resignations) and Step 3 (sign resignation letter). See Worker API tokens for how to generate one.
  • Contract ID: All endpoints in this flow require a contract_id for an active EOR contract.
1

Step 1: Request resignation on behalf of the worker

Use the Request contract resignation endpoint with a client API token to initiate the resignation on behalf of the worker.

$curl --location --request POST \
> '{{host}}/rest/eor/contracts/{{contract_id}}/offboarding/resignation' \
> --header 'Authorization: Bearer {{client_token}}' \
> --header 'Content-Type: application/json' \
> --data-raw '{
> "data": {
> "last_working_day": "2025-09-30"
> }
> }'
2

Step 2: Worker views pending resignations

This step requires a worker API token.

After the client initiates the resignation, the worker can retrieve the list of resignations pending their signature using the Retrieve worker resignations endpoint.

$curl --location --request GET \
> '{{host}}/rest/eor/workers/resignations' \
> --header 'Authorization: Bearer {{worker_token}}'
3

Step 3: Worker signs the resignation letter

This step requires a worker API token.

The worker must explicitly sign the resignation letter to confirm it. This step is required in the client-initiated flow because the worker did not directly submit the request. Use the Sign resignation letter endpoint.

$curl --location --request POST \
> '{{host}}/rest/eor/workers/contracts/{{contract_id}}/offboarding/resignation-letter/sign' \
> --header 'Authorization: Bearer {{worker_token}}'
4

Step 4: Review PTO (client side)

This step is performed by the client organization using a client API token.

After the worker signs the resignation letter, the client must review the worker’s outstanding paid time-off balance before Deel can continue processing. Use the Submit employee resignation PTO review endpoint.

$curl --location --request POST \
> '{{host}}/rest/eor/contracts/{{contract_id}}/offboarding/resignations/review-pto' \
> --header 'Authorization: Bearer {{client_token}}' \
> --header 'Content-Type: application/json' \
> --data-raw '{
> "data": {
> "approved": true
> }
> }'

Flow

Next steps