Job Offer
Job Offer formalizes compensation and start details for a Job Applicant. On acceptance, Smooth HR updates applicant status. The Create Employee action (make_employee) maps offer fields to a new Employee record. Offers often pair with e-signature via Signature Templates.
Help URL: https://smoothhiring.com/help/hrms/recruitment/job-offer
Table of contents
- Overview
- Desk paths
- Creating and submitting offers
- Create Employee workflow
- E-sign integration
- Vacancy validation
- Who uses Job Offer
- Common mistakes
- Troubleshooting
Overview
| Field | Notes |
|---|---|
| Job Applicant | Required; email-named applicant |
| Company / Designation / Department | Flow to Employee |
| Offer Date | Used in staffing plan checks |
| Status | Awaiting Response, Accepted, Rejected |
| Terms | HTML or template for letter |
Smooth HR runs on Frappe v16. Module sidebars (People, Recruitment, Expenses, Performance, Tenure, NextAI) appear after login. DocType lists use /app/{slug}; workspace homes use /desk/{module}.
Desk paths
| Action | Path |
|---|---|
| Job Offer list | /app/job-offer |
| Appointment Letter | /app/appointment-letter |
| Signature Template | /app/signature-template |
Creating and submitting offers
- From accepted interviews, create Job Offer for applicant.
- Fill company, designation, department, salary components if shown.
- Set status Awaiting Response; submit document.
- Send letter PDF or signature request to candidate.
- On acceptance, set Accepted — applicant status updates.
Create Employee workflow
After acceptance:
- Open submitted Job Offer.
- Click Create Employee (calls
hrms.hr.doctype.job_offer.job_offer.make_employee). - Review mapped fields: name from applicant email, offer date → scheduled confirmation.
- Complete remaining Employee fields (User, salary structure).
- Save Employee; start Employee Onboarding.
flowchart LR
Offer[Job Offer Accepted] --> CE[Create Employee]
CE --> Emp[Employee saved]
Emp --> OB[Onboarding]
Emp --> PR[Payroll setup]
E-sign integration
Link offer letter to Signature Request or Signature Envelope. When candidate signs at /sign/{token}, signed PDF may attach and applicant status may move to Accepted. See Signing Portal.
Vacancy validation
If HR Settings → Check Vacancies is enabled, offer validates against Staffing Plan for designation and date range. Error: no vacancies under plan — update plan or adjust designation.
Who uses Job Offer
| Role | Typical use |
|---|---|
| HR Manager | Full create/submit/cancel; setup masters; reports |
| HR User | Day-to-day transactions; may need approval rules |
| Employee | Self-service where enabled |
| System Manager | Site-wide configuration, integrations, NextAI keys |
HR Manager approves offers; HR User creates; System Manager configures templates.
Common mistakes
| Mistake | Fix |
|---|---|
| Second offer same applicant | Cancel old offer first |
| Create Employee before accept | Wait for Accepted status |
| Missing department on offer | Fill before Create Employee |
| Vacancy block | Staffing plan quantities |
Troubleshooting
| Issue | Fix |
|---|---|
| Create Employee button missing | Submit offer; check permissions |
| Applicant not Accepted | Set offer status Accepted |
| Signed PDF not attached | Check signature workflow completion |
Offer letter templates
Use Appointment Letter Template for consistent branding. Merge fields pull applicant and offer data.
For multi-state employers, maintain template variants per company letterhead.
Frequently asked questions
Does make_employee create User?
No — link User separately on Employee.
Can offer be cancelled?
Cancel/amend per docstatus rules; updates applicant if configured.
Related guides
Additional operational detail
Smooth HR v16 organizes HR into module workspaces accessible from the desktop app switcher. Each module sidebar mirrors production fixtures in the HRMS app: People at /desk/people, Recruitment at /desk/recruitment, Expenses at /desk/expenses, Performance at /desk/performance, Tenure at /desk/tenure, and NextAI at /desk/nextai. DocType routes follow /app/{slug} where slug is the lowercased DocType with spaces replaced by hyphens.
HR Managers configure masters and approvals; HR Users run daily transactions; Employees interact through self-service when User records link to Employee and roles permit; System Managers own site configuration including NextAI API credentials. Before go-live, validate Role Permissions Manager entries for each DocType mentioned in this guide.
When migrating from spreadsheets, import Company and Department before Employee, then recruitment and expense histories. Use Data Import templates and fix validation errors row-by-row rather than bulk-deleting partial loads. Clear desk cache after fixture updates so sidebars reflect the latest Smooth HR layout.
For payroll-adjacent HR data, keep Employee company and department aligned with cost centers. For recruitment, remember Job Applicant documents use email as the primary key. For expenses, settle Employee Advance balances on Expense Claim submission. For performance, run Appraisal Cycle to batch-create Appraisal records. For tenure, complete Employee Separation projects before deactivating employees. For NextAI, store Gemini or OpenAI keys only in NextAI Settings and review usage logs before retention cleanup runs.
Additional operational detail
Smooth HR v16 organizes HR into module workspaces accessible from the desktop app switcher. Each module sidebar mirrors production fixtures in the HRMS app: People at /desk/people, Recruitment at /desk/recruitment, Expenses at /desk/expenses, Performance at /desk/performance, Tenure at /desk/tenure, and NextAI at /desk/nextai. DocType routes follow /app/{slug} where slug is the lowercased DocType with spaces replaced by hyphens.
HR Managers configure masters and approvals; HR Users run daily transactions; Employees interact through self-service when User records link to Employee and roles permit; System Managers own site configuration including NextAI API credentials. Before go-live, validate Role Permissions Manager entries for each DocType mentioned in this guide.
When migrating from spreadsheets, import Company and Department before Employee, then recruitment and expense histories. Use Data Import templates and fix validation errors row-by-row rather than bulk-deleting partial loads. Clear desk cache after fixture updates so sidebars reflect the latest Smooth HR layout.
For payroll-adjacent HR data, keep Employee company and department aligned with cost centers. For recruitment, remember Job Applicant documents use email as the primary key. For expenses, settle Employee Advance balances on Expense Claim submission. For performance, run Appraisal Cycle to batch-create Appraisal records. For tenure, complete Employee Separation projects before deactivating employees. For NextAI, store Gemini or OpenAI keys only in NextAI Settings and review usage logs before retention cleanup runs.
Last updated: May 2026
Additional operational detail
Smooth HR v16 organizes HR into module workspaces accessible from the desktop app switcher. Each module sidebar mirrors production fixtures in the HRMS app: People at /desk/people, Recruitment at /desk/recruitment, Expenses at /desk/expenses, Performance at /desk/performance, Tenure at /desk/tenure, and NextAI at /desk/nextai. DocType routes follow /app/{slug} where slug is the lowercased DocType with spaces replaced by hyphens.
HR Managers configure masters and approvals; HR Users run daily transactions; Employees interact through self-service when User records link to Employee and roles permit; System Managers own site configuration including NextAI API credentials. Before go-live, validate Role Permissions Manager entries for each DocType mentioned in this guide.
When migrating from spreadsheets, import Company and Department before Employee, then recruitment and expense histories. Use Data Import templates and fix validation errors row-by-row rather than bulk-deleting partial loads. Clear desk cache after fixture updates so sidebars reflect the latest Smooth HR layout.
For payroll-adjacent HR data, keep Employee company and department aligned with cost centers. For recruitment, remember Job Applicant documents use email as the primary key. For expenses, settle Employee Advance balances on Expense Claim submission. For performance, run Appraisal Cycle to batch-create Appraisal records. For tenure, complete Employee Separation projects before deactivating employees. For NextAI, store Gemini or OpenAI keys only in NextAI Settings and review usage logs before retention cleanup runs.