← All use cases
HR · People ops

AI offer letter generator with required-field guardrails.

Recruiters shouldn't be the last line of defense against typos in salary numbers. Upload your offer-letter templates, mark the must-have fields, and let Claude draft each letter from a one-line prompt — with zero risk of a missing start date or equity grant.

For: In-house recruiters, HR business partners, and people-ops teams shipping more than five offer letters a week.

The problem

Offer letters look simple until you account for three template variants (FT, contractor, intern), an equity addendum, region-specific benefits paragraphs, and the legal review that follows every typo. Most HRIS tools either lock you into their layout or require an admin to wire each new template into a custom flow.

How DocExport solves it

DocExport hosts each offer-letter .docx as a Claude-callable tool. Mark {{Salary}}, {{StartDate}}, and {{ManagerName}} as required, and Claude refuses to generate the letter without them — calling preview_generate first to surface anything missing. The recruiter writes one sentence; the PDF lands in their DM 3 seconds later.

The workflow

From .docx to AI-generated document.

1
Upload your offer templates

One .docx per variant — full-time, contractor, intern. Add a {{TableStart:Benefits}} region for variable benefit lines.

2
Mark required fields

Flag salary, start date, and manager name as required. Add descriptions like "Annual base in USD, no commas" so Claude formats them right.

3
Recruiter prompts Claude

"Generate the FT offer for Priya — Senior Engineer, $185k, 4-year vest, starts June 15." Done.

Example

What the prompt looks like.

“Generate the full-time offer for Priya Sharma — Senior Engineer, base $185,000, 4-year vest with a 1-year cliff, starts June 15, manager is Jordan Lee.”

Template fields exposed to the agent

{{CandidateName}}{{JobTitle}}{{Salary}}{{StartDate}}{{ManagerName}}{{EquityGrant}}{{VestingSchedule}}{{TableStart:Benefits}}{{BenefitName}}{{BenefitDescription}}{{TableEnd:Benefits}}{{OfferExpiry}}
Why teams choose DocExport for this

Built for the agent on the other side.

✓
Required-field enforcement

No salary, no letter. DocExport rejects the generation if a required placeholder is empty — Claude self-corrects before producing the file.

✓
Audit log out of the box

Every offer letter generation is logged with timestamp, requesting user, and the JSON payload. Auditors can trace who issued what.

✓
Multi-template by design

Run FT, contractor, and intern variants from the same MCP endpoint. Claude picks the right template via list_templates.

✓
Edit in Word, ship in seconds

When legal updates the equity language, edit the .docx in Word. The next letter ships with the new wording — no engineering ticket required.

FAQ

Common questions.

Is this compliant for international hires?
DocExport renders whatever your template says. If your legal team maintains region-specific .docx variants, Claude can pick the right one based on candidate location.
Can the equity table vary per candidate?
Yes. Use a {{TableStart:Equity}} repeating region and pass an array of grants — different vesting schedules per row are fine.
Where is candidate data stored?
Inside your DocExport tenant. Generations are tenant-isolated; the rendered PDF and input JSON are accessible only to your workspace.
Can a recruiter generate without involving IT?
Yes. Once HR uploads the templates, recruiters use Claude Desktop or the web app — no engineering help needed.

Try DocExport free.

25 documents / month on the free tier. No credit card. Connect Claude in under 10 minutes.

Start free