# Offer letters with a person in the loop

An offer letter carries a salary and a name, and sending the wrong one is a bad day. Automate the filling and the tracking, and keep a person reading every draft.

## Why this one needs a human

Software can get the amount wrong, or pair the right letter with the wrong person. Unlike an NDA, a mistake here goes straight to someone who is making a life decision. So we would never run offer letters on a "Sends directly" key. Use "Needs my approval", even when no agent is involved. The small delay is worth it.

## The flow

1. A hiring manager marks a candidate as ready in your applicant system.
2. A workflow fills the letter as a PDF, with a `{{signature:1}}` tag for the candidate and one for your signer.
3. It calls `create_document` with `ordered` set to true, and then `send_document` with the `draft_hash`.
4. HR opens the `approval_url` and checks the name, the amount and the start date against the record.
5. Your signer signs first, then the candidate.
6. `document.completed` updates the applicant system and files the sealed PDF.

## Things to get right

Set an `access_code` if the letter goes to a personal email you haven't confirmed, and share the code by phone. Treat the signed file as a personnel record and keep it for as long as your rules say. docuinked doesn't set your retention period. Some employment documents have their own rules by state or country, so have your lawyer look at your template once.

## Common questions

### Who should approve an offer letter?

Someone who can check it against the source, usually HR. The evidence log records who approved it, so choose a person who would be happy to be named.

### Can a candidate see the terms before agreeing to sign electronically?

They agree to use electronic records first, then the whole document is shown before they sign. They can decline, or ask for paper, at any time before signing.

### What happens if the offer changes after it is sent?

Void it and send a new one. A sent document can't change, and the old one stays on record as voided, which is the honest history.
