An offer letter is a document that gets read back years later, usually at an inconvenient moment. What gets stored at the point of sending determines whether that reading is a two-minute lookup or an afternoon in an email archive.
Key takeaways
The exact PDF is kept, not the ability to re-render it.
The clause versions used are recorded, so the letter can be explained as well as produced.
Acceptance is recorded as an event with a date, however it arrived.
The start date and role hand straight to onboarding, with nobody retyping anything.
One report matters: how often the library needed a new clause.
Keep the document, not the recipe
The tempting economy is to store the terms and the template versions and re-render the letter when needed. It saves a small amount of storage and it is wrong, because rendering is code and code changes: a formatting fix eighteen months from now would silently produce a document that differs from the one somebody signed.
So the PDF as sent is stored, unmodified, and it is the record. The terms and clause versions are stored alongside it to explain it, not to reproduce it.
Kept
Why
The PDF as sent
It is the document. Nothing regenerates it.
The nine terms, versioned
What was agreed, and what changed if it was renegotiated
Clause ids and versions
Lets somebody explain any sentence in the letter
Who drafted and who sent
Two different people, both recorded
The covering email
Offers are frequently qualified in the email body
Acceptance, with a date
However it arrived: a reply, a signature, a phone call logged
The covering email is the one most systems forget, and it matters because a substantial proportion of offers are qualified in the body of the message rather than in the attachment — “as discussed, we can review the rate at six months”. That sentence is part of what was communicated and it belongs with the letter.
Acceptance
Fig 1. What happens when an offer is accepted. The handover to onboarding carries the same terms that were in the letter, which removes the most common source of a wrong start date.
Database
App integration
Machine learning
Networking
Security & identity
Management
People
That handover is worth more than it looks. The most common onboarding error in small businesses is a start date that differs between the offer letter, the HR record and the payroll setup, because it was typed three times. Passing it once removes the possibility.
Declines
Recorded, with a reason if the candidate volunteered one, and never chased. A declined offer is a complete outcome, and the only useful thing to do with it is count it: three declines on salary in a quarter is a market signal, and it is only visible if declines are recorded rather than deleted.
The report
Fig 2. A quarter of offers in five numbers. The clause-request count is the one that tells you something you did not already know.
Three new clauses in fourteen offers means roughly one offer in five is doing something the library does not cover, which is high and usually means the business has started hiring differently — more part-time, more fixed-term, more flexible arrangements — without the paperwork catching up. That is a genuinely useful thing to learn from a document generator.