Offer management
Send a job offer to a candidate, capture salary on the status change, and track accept / reject.
How offers work in CVViZ
Offers are handled as a combination of two things:
- A status change to Job Offered (code 60) β captures the offer's salary and currency.
- A Send Job Offer action that emails the candidate a templated message with a response link.
There's no separate offer-builder page with custom terms; the data points captured are intentionally light.
Capturing the offer (status change)
- Open the candidate.
- Click Change Candidate Status.
- Pick Job Offered from the dropdown.
- The form surfaces extra fields:
- Final Salary Offered β numeric.
- Currency β picker (defaults to your company's default currency).
- Add Remarks if useful.
- Click Update Status.
Status codes 60 (Job Offered), 61, and 62 (Offer Accepted) all surface the salary fields when applicable.
Sending the offer email
Click Send Job Offer on the candidate. An email drawer opens with a pre-filled template that includes a link the candidate uses to respond:
"Congratulations on your job offer⦠Please click the link below and respond to the job offer. {{JOB_OFFER_LINK}}"
Edit the email if you want, attach the offer letter PDF if you have one, and send.
Offer states
Each offer record has afield with three values:
- 0 β Offer Sent (blue tag).
- 1 β Offer Accepted (green tag).
- -1 β Offer rejected (red tag).
The candidate updates this state by responding to the email link.
Tracking offers on the candidate profile
The candidate profile has a Job Offers tab (job-context only). It lists every offer extended with:
- user β who sent the offer.
- file_name β the attached offer letter file (if any).
- audit_insert_datetime β when it was sent.
- email_message β the email body.
- candidate_comments β any reply notes the candidate added when responding.
- status β current state (Offer Sent / Accepted / Rejected).
Offer letter file storage
If you attach an offer letter PDF, it's stored at:
You don't need to think about this path β it's the convention CVViZ uses internally.
Closing the loop
- Accepted β move the candidate to Offer Accepted (62) on the next status change. Trigger handoff to HR / IT for onboarding via webhook or manual export.
- Rejected β capture the reason in Remarks, then change status to Job Offer Reject (-97) for clean reporting.
Tips
- Always fill the salary field. The Final Salary Offered data on Job Offered status is the basis for offer-acceptance reporting.
- Personalize the email. The pre-filled template is fine but a few personal lines lift acceptance rates.
- Pair with an automation at Settings β Automations if you want a follow-up reminder task scheduled when an offer goes out.