All documentation

Chapter 04

Hiring, offers and onboarding

This chapter covers everything that happens before a new joiner's first day: inviting a candidate, sending them an offer letter, what the candidate sees on their offer link, the joining details and documents they submit themselves, and the checks HR does to turn them into an active employee. It is written for whoever runs hiring paperwork — in MusterHR that is a user with the HR / Ops role (or a Super Admin) — and the middle sections describe exactly what the candidate sees, so you can talk them through it. If you are new to the product, read Getting started first; Roles and permissions explains the roles named below.

This chapter covers everything that happens before a new joiner's first day: inviting a candidate, sending them an offer letter, what the candidate sees on their offer link, the joining details and documents they submit themselves, and the checks HR does to turn them into an active employee. It is written for whoever runs hiring paperwork — in MusterHR that is a user with the HR / Ops role (or a Super Admin) — and the middle sections describe exactly what the candidate sees, so you can talk them through it. If you are new to the product, read Getting started first; Roles and permissions explains the roles named below.

Who can do what

Task Roles that can do it
Invite a candidate, verify, mark joined, mark complete HR / Ops, Super Admin
Generate and send an offer letter HR / Ops, Super Admin
Verify or reject uploaded documents HR / Ops, Super Admin
Fill in the joining details and declarations The candidate, on their own account
Accept or decline the offer The candidate, from the emailed link

Managers, Finance and ordinary Employees do not see the Onboarding screen at all. Permissions are enforced on the server, so a copied link will not get someone in.

The screen lives at People → Onboarding in the sidebar. Its heading on the page is "Onboarding", and it is where every candidate sits until their onboarding is complete.

The journey at a glance

A candidate moves through nine named stages. The candidate sees the same list as a numbered progress track on their own screen, with "You are here" against the current one.

# Stage What it means What moves it on
1 Invited You have invited the candidate. Their account and employee code exist, and an activation email has gone out. You click Send offer
2 Offer sent The offer letter has been generated and emailed. The row reads "Waiting for the candidate to accept the offer". The candidate accepts on their link
3 Offer accepted The candidate has signed. The row reads "Waiting for the candidate to submit their details". The candidate submits their joining form
4 Details pending Not used by the current flow — nothing sets this stage. It appears in the progress list only for completeness.
5 Documents pending Also not used by the current flow, for the same reason. Document checking happens on Verify documents instead.
6 Under verification The candidate has submitted their details and accepted all declarations. You click Verify
7 Ready to join You have confirmed the details. Nothing is expected from the candidate. You click Mark joined, on or after their first day
8 Joined Their employee record is now Active. Attendance, leave and payslips start working for them. You click Mark complete
9 Completed Nothing left to do. The row shows "Onboarding complete — nothing left to do".

Stages 4 and 5 are worth knowing about because a candidate will see them greyed out on their progress track and may ask. Nothing is stuck; the flow goes from Offer accepted straight to Under verification when they submit the form.

Your dashboard tile labelled Onboarding ("Invited, not yet joined") counts everyone from stage 1 to stage 7.

Inviting a candidate

  1. Go to People → Onboarding.
  2. Fill in Candidate name and Email under Invite a candidate. The email address becomes their sign-in, so use one they can read today — usually a personal address.
  3. Choose the Type: Employee, Intern, Contractor or Consultant. Interns are given an employee code from your intern code format, and their offer letter talks about a stipend and an internship rather than a salary and a permanent role.
  4. Set the Joining date if it is agreed. It is optional; left blank, the offer letter says "your proposed joining date is your agreed date".
  5. Pick Department, Designation and Reporting manager where known. All three are optional and can be left on "Not set".
  6. Click Invite candidate.

You will see "Invitation sent — the candidate will receive a secure link to set up their account". Behind that one click, MusterHR creates their user account with the Employee role, allocates an employee code (for example FDT-2026-0007), creates the employee record with status Onboarding, and emails an activation link that is valid for 72 hours.

The candidate now appears in two places: as a row on Onboarding at stage Invited, and in People → Employees with the status Onboarding.

If the activation link expires before they use it, go to People → User accounts, open their account and click Resend invite — a fresh link valid for three days is emailed. That button only appears while the account status is still Invited; once they have set a password it disappears, and they should use "Forgotten password" on the sign-in page instead.

What the offer letter says

The letter is generated from the candidate's employee record at the moment you send it, and that version is frozen — later edits to the record do not change a letter already sent. It is addressed to the candidate by name and covers:

  • Position — designation, the type of engagement (Permanent role, Internship, Contract or Consulting engagement), work model and location, for example "Software Engineer · Permanent role · Remote".
  • Start date — the joining date on the record, written out in full ("1 September 2026").
  • Compensation — the monthly salary, and a performance bonus if one is recorded.
  • Probation — the probation period in days, if one is recorded.
  • A closing paragraph stating that the offer is subject to successful verification of documents and background, and to accepting the company policies, confidentiality and code-of-conduct agreements during onboarding.

Worth knowing: the Compensation and Probation paragraphs appear only when those figures are already on the employee record, and the invite form does not collect either of them. For a candidate invited this way the letter will normally go out without a pay figure, so agree the number with them separately — in writing, over email — and do not rely on the letter to state it. Amounts inside offer letters are printed as "Rs. 65,000" rather than with the ₹ symbol, for compatibility with the PDF.

Sending the offer

  1. Go to People → Onboarding and find the candidate's row.
  2. Click Send offer at the right of the row.

That single click generates the letter, saves it as a numbered version, emails the candidate a private link and moves the row to Offer sent. There is no draft step and no preview inside the app, so check the name, designation, department and joining date before you click. If you want a copy for the file, open the candidate's link yourself, or ask them to forward the PDF.

Send offer is only offered while the row is at Invited (and at the two unused stages). Once the row has moved past that — including if the candidate fills in their joining form before you send anything — the button is no longer shown on that row. See If the link expires or the candidate declines for the way back.

The link goes straight to the letter and needs no sign-in — anyone holding it can read the offer, so treat it as confidential and send it only to the candidate. The page is branded with your company's name and shows:

  • The letter itself, laid out as a document, with a Download as PDF link underneath. Most browsers open that PDF in a tab rather than saving it; the candidate can save it from there.
  • A status chip in the top corner and, while a response is still open, a line reading "Please respond by" with the last date on which the offer can be signed.
  • A signing box at the bottom.

Offers expire 14 days after they are sent. The expiry date is the one shown in the "Please respond by" line.

Chip on the offer page What it means
Awaiting your response The offer is live and can be signed.
Accepted Already signed. The page shows who signed it and when, and offers the signed PDF.
Declined The candidate declined. The page suggests contacting your HR team if that was a mistake.
Expired The 14 days have passed. The page says it can no longer be signed and points the candidate at your HR team.
Not yet sent A rarely seen state for a letter that has been generated but not sent.

If the link is wrong, incomplete or the letter has been deleted, the candidate sees "This offer link isn't valid" and is asked to request a fresh link from your HR team.

Accepting

The candidate types their full legal name in Type your full legal name to sign and clicks Accept & sign offer. The page states plainly that typing their name counts as acceptance, and that their name, the date and time, and their IP address are recorded with it. On success they get a confirmation and a Download signed offer (PDF) link; the signed PDF carries an "Accepted" block reading "Digitally signed by Ananya Iyer", with the date and time of signing in IST and the IP address it came from. The candidate's row on your Onboarding screen moves to Offer accepted.

Declining

Declining takes two deliberate steps: the small Decline this offer link, then Yes, decline the offer in the confirmation box, which states "This cannot be undone". It genuinely cannot be undone — a declined offer can never be accepted from the same link.

Neither event changes the candidate's row on the Onboarding screen. It stays at Offer sent, still reading "Waiting for the candidate to accept the offer", so you will usually learn about a decline from the candidate rather than from the screen. Check in if you have heard nothing as the response-by date approaches.

To put a fresh offer in front of someone whose link expired, or who declined and then changed their mind:

  1. Go to People → Onboarding and use Invite a candidate again with exactly the same email address. This does not create a duplicate — it reuses the existing record and resets the row to Invited.
  2. Click Send offer on the row. A new version of the letter is generated with a new link and a new 14-day window; the old link is not revived.

Two cautions before you do that. Re-inviting sets the person's account back to the invited state, so if they had already set a password they will not be able to sign in until they use the new activation email. And re-inviting does not update the joining date, department or designation already on the record — if the terms have changed, the new letter will repeat the old ones unless the record is changed first.

The candidate's joining details

The candidate sets a password from the activation email, signs in, and lands on their dashboard with a Finish your onboarding banner and a Complete onboarding button. That banner is their route in — the joining form is not in the sidebar, so tell them to use the banner if they cannot find it.

The form has four parts:

Section What it asks for
Personal details Date of birth, gender, personal email, mobile, alternate number, current and permanent address, city, state, PIN code, and an optional profile photo (PNG, JPG or WebP, up to 5 MB)
Education & experience Highest qualification, institution, course, completion year, and optionally previous employer and designation
Bank & identity (optional) Account holder name, bank name, account number, IFSC, PAN and Aadhaar
Declarations & consent Eight declarations, every one of them mandatory

Bank and identity fields are optional on the form but are what payroll runs on, so it is worth asking for them here. They are encrypted at rest and only ever shown masked afterwards. The form states that MusterHR never asks for an ATM PIN, CVV, OTP, UPI PIN or net-banking password — a useful line to repeat if a candidate is nervous.

The eight declarations cover: that the information given is true and correct; that all uploaded documents are genuine and unaltered; consent to the company processing their data for employment and payment purposes; acceptance of the company policies; the confidentiality agreement; the intellectual-property assignment terms; the remote-work agreement; and the code of conduct. Submit for verification is refused until all eight are ticked. Each acceptance is stored separately with the date and time, the candidate's IP address, the version of the wording they agreed to, and their name and email as identity — which is what makes it usable as evidence later.

On submission the row moves to Under verification and the candidate's own screen changes to a read-only progress view with a summary of what they sent. Bank and identity values are not shown back to them. They cannot edit the form afterwards; corrections go through HR.

If the candidate signs in and the screen says "No onboarding in progress", their sign-in is not linked to a candidate record — check on People → User accounts which email they actually used.

Documents

Documents are uploaded separately, not on the joining form. The candidate goes to My space → My documents and uploads under a category — Resume, Identity proof, Address proof, Education document, Experience document, Bank document, Tax document, Offer letter, NDA, Employment agreement or Other. Files may be PDF, JPG or PNG, up to 10 MB each. Only they and HR can open the files, and download links expire five minutes after they are requested.

You review them at People → Verify documents, which lists everything awaiting a decision, oldest first, with a View, Verify and Reject control on each row. You can also upload a file on the candidate's behalf from their employee record.

Documents are checked in that separate queue, so nothing stops you from verifying a candidate on the Onboarding screen while a document is still pending. Clear the Verify documents queue for that person first if their paperwork matters.

Verifying and marking joined

  1. Open People → Onboarding and find the row at Under verification.
  2. Check what they submitted — their employee record shows the personal details, and bank and identity values appear masked, with the last few digits only. Revealing a full value is written to the audit log.
  3. Click Verify. The row moves to Ready to join and records you as the verifier.
  4. On or after their first day, click Mark joined. This sets their employee record to Active, which is what makes attendance, leave and payslips available to them.
  5. Once any remaining checks are done, click Mark complete. The row moves to Completed and stays on the screen as a record.

None of these three steps can be reversed from the interface — there is no button that moves a candidate back a stage. The only reset available is inviting the same email address again, which returns the row to Invited and, as described above, also resets their sign-in.

Note that Mark joined records the day you clicked it, which is not necessarily the joining date on their record. Click it on the day they actually start.

How this differs from Add employee

People → Employees → Add employee exists for records you want to key in yourself — typically people who already work for you when you start using MusterHR.

Invite from Onboarding Add employee
Who types the personal details The candidate You
Offer letter Yes, with online signing No
Declarations and consent captured Yes, all eight, with a full audit trail No
Sign-in created Yes, by the invitation email Only if you create a login from the employee record afterwards
Bank and identity details Entered by the candidate Entered by you on the form
Appears on the Onboarding screen Yes No
Can be moved to Active Yes, by Mark joined No — see below

Worth knowing: an employee created through Add employee is saved with the status Onboarding but never gets an onboarding record, so they never appear on the Onboarding screen and nothing in the interface can move them to Active. That is a known limitation. If you need someone to end up as a fully active employee, invite them from People → Onboarding instead — that is the only route that works end to end. The Add employee page itself points at the invite route for this reason.

Worth knowing

  • Offers expire 14 days after they are sent; account activation links expire after 72 hours.
  • A declined or expired offer does not change the candidate's row on the Onboarding screen — it stays at Offer sent.
  • Declining an offer, and each of Verify, Mark joined and Mark complete, cannot be undone from the interface.
  • Details pending and Documents pending are shown on the progress track but are never reached.
  • The offer letter's pay and probation lines depend on figures the invite form does not collect, so they are usually absent.
  • Download as PDF opens the file in the browser rather than saving it on most devices.

Something unclear on this page? Tell us.