Engagements
An engagement is the contract between a Contractor (or a placed agency worker) and one of your companies: title, dates, manager, rate, leave mode and TDS defaults. A person can hold several engagements over time, but never two active ones in the same company that overlap. The engagement drawer on the Contractor page is where all of this is managed.
Who can do this: HR Managers and Admins with `contractors.manage` for the engagement's company. Viewers with `contractors.view.*` open the drawer read-only. The Contractor sees their own engagements on their home page.
Where to find it
People → Contractors, open a Contractor (`/contractors/{id}`). Add engagement sits on each person row; click an engagement card to open the drawer.
Creating an engagement
- On the Contractor page click Add engagement next to the person.
- Company (required; fixed when hiring from Recruitment), Engagement title (required, for example Senior React developer), Start date (required), End date (optional; must be on or after the start; nothing ends automatically) and Manager (an employee who gets end-date reminders).
- Rate type (Hourly, Daily, Monthly retainer, Milestone, Fixed fee), Rate (required, more than zero) and Currency (three letters; the party's default).
- Leave: No leave, or Same as employees.
- TDS section and TDS rate (%) copied from the party; edit per engagement. TDS is recorded here, not computed by ZekoHR.
- Click Add engagement. It is created as Active.
Editing and documents
- Save changes updates details. The company is fixed.
- Statement of work (SOW): one file (PDF, Word or image). Replace by removing and uploading again.
- End engagement sets the end date; if it is today or earlier the status becomes Ended at once, otherwise it ends on that date and reminders run until then. Cancel engagement is for one that never started.
Statuses
| Status | Meaning | What happens next |
|---|---|---|
| Draft | Created but not active. | Edit, cancel. |
| Active | Running; counts for overlap checks and leave eligibility. | Edit, end, cancel. |
| Ended | Past its end date or ended by HR. | Read-only. The person keeps their login until offboarded. |
| Cancelled | Never started. | Read-only. |
A Past end date badge appears on active engagements whose end date has passed.
What happens next
Creating or changing an engagement is audited with the company. If the leave mode is Same as employees and the engagement is active, leave is allocated under the normal eligibility rules; No leave excludes the person from allocation and from applying. HR who manage Contractors for the company and the named manager get `contractor.engagement.ending` 30 days and 7 days before the end date, and then daily while it is past its end date and the person is still active.
Rules and limits
- One active engagement per person per company at a time; overlapping dates are refused with the clashing engagement named.
- End date must be on or after the start date.
- Only HR who manage the engagement's company may change it; moving it to another company needs scope there too.
Troubleshooting
"This person already has an active engagement in this company that overlaps these dates". End the existing engagement first, or adjust the dates.
I cannot edit an engagement. It is Ended or Cancelled, or you only have view access.
The drawer opens but every field is disabled. You have view access only. Editing needs a role that manages Contractors for the engagement's company.