runbookify
← All plans
Human Resources / Recruiting & ATS

Job Requisition Intake & Approval

Build an internal tool that collects hiring requests, checks them against your salary bands and headcount budget, then routes each requisition through the right approval chain - so nobody starts recruiting for a role that isn't actually funded.

BeginnerAn afternoonBuilds onNext.js (App Router) on VercelSupabase (Postgres, Storage, Auth + RLS)Resend (approval requests, return-for-changes, recruiter notifications)
What you'll build

A login-protected requisition tool: hiring managers submit a request, the app validates it against your salary bands and headcount budget, routes it through the correct approver chain in order, lets each approver sign off or return it for changes, assigns a unique req ID and 'open' status only when fully approved, notifies the recruiter, and exports an ATS-ready CSV - with a hard rule that nothing becomes 'open to source' without every required sign-off.

Gated download

Enter your email — the plan downloads instantly and a copy lands in your inbox.

By submitting your email you'll also receive the weekly runbookify newsletter. You can unsubscribe at any time.

Before you start

  • A free Vercel account
  • A free Supabase account
  • A free Resend account (and a sender address you can use)
  • An approver matrix sheet (by department, level, and spend threshold)
  • An org / headcount-budget sheet (open seats and budget by department)

The problem this kills

"Hey, can I hire someone for my team?" The request shows up in a Slack DM, or a forwarded email, or a hallway conversation. Somebody says "sounds fine, go ahead" - and now a recruiter is sourcing candidates for a role that finance never signed off on, at a salary that's above band, for a seat that isn't in this year's headcount budget.

Then it gets awkward. The offer goes out, finance finds out, and either the role gets clawed back (after a candidate already said yes) or the budget gets quietly blown. Nobody can say who approved it, because nobody really did. The VP who was supposed to sign off on the expensive roles never saw it. And two managers just opened reqs for what is functionally the same seat because there was no shared list.

This tool replaces "can I hire someone?" over chat with a real intake form and an enforced approval chain - so a role only becomes open to recruit when it's been checked against budget and signed off by the right people, in the right order.

What you'll build

A small internal web app, just for your team, that:

  • Gives hiring managers a clean request form: role title, department, hiring manager, level, salary band, headcount, backfill vs new, target start date, and business justification.
  • Validates each request against your salary bands (flagging out-of-band pay) and your headcount / budget sheet (flagging roles that aren't funded or exceed open headcount).
  • Reads your approver matrix - the rules that say which department, level, and spend routes to which approvers - and builds the correct approval chain for each requisition.
  • Routes the req through that chain in order: each approver reviews and either signs off or returns it for changes with comments, and finance can send it back before the budget line is committed.
  • Adds conditional steps - for example, a VP sign-off that only kicks in above a spend threshold.
  • Gives a fully-approved req a unique req ID and flips it to "open to source," then notifies the recruiter.
  • Dedupes so two managers can't open the same seat twice (same department + role title + target start inside an open window).
  • Exports an ATS-ready CSV in the exact columns your applicant-tracking system expects.

What's inside the Implementation Plan

The plan is a single markdown file you paste into Claude Code (a free AI coding agent). It walks the agent through building the whole tool, step by step, each step ending with a ready-to-paste prompt.

The most important part: the plan opens by interviewing you about your business. Before it writes a single line, the agent asks how hiring requests reach you today, what your approval matrix actually looks like, the real field names and codes in your data, your salary bands and how you store them, your typical and peak requisition volumes, your exact approval and spend-threshold rules, and your messiest edge cases (backfills, replacement-but-at-a-higher-level, confidential roles, an approver who's out of office). It reads a short tailored spec back to you, you confirm it, and only then does it build - so you get a tool shaped to your hiring process, not a generic template you have to bend to fit.

Inside you'll find:

  • The discovery interview and how the agent turns your answers into the data model.
  • The full build: database, login, the request form with band/budget validation, the chain-routing engine, the approve / return-for-changes screens, the email flow, the req ID + "open" status, and the recruiter notification.
  • The hard human approval gate and the conditional, multi-step sign-off logic.
  • Verification steps so you can prove it works, and the CSV-export fallback so it's fully usable even before you connect it to your ATS.

The governance it includes (this is the point)

This isn't a toy. The plan builds in the controls an HR and finance team actually needs:

  • Login so only your team can see or touch anything.
  • Row-level security so people only see the requisitions and approvals that belong to your organization.
  • A complete audit trail - every submission, validation flag, approval, return-for-changes, and status change is logged with who and when.
  • A hard human-in-the-loop gate - the AI drafts, validates, and routes, but a real approver must sign off; a req becomes "open to source" only when every required approval is in, in order.
  • Salary-band and budget guardrails enforced in code - out-of-band or unfunded requests are flagged and can't quietly slip through.
  • Duplicate guards so the same seat can't be opened twice.

Who it's for

HR coordinators, recruiters, HR business partners, and finance partners who today field "can I hire someone?" requests over Slack and email with no paper trail - and who want a real, auditable intake-and-approval tool without hiring a developer or buying a heavyweight HRIS module. You don't need to write code. You need your approver matrix, your headcount-budget sheet, and an afternoon.

You've got this - paste the first prompt and let the agent interview you.

Gated download

Enter your email — the plan downloads instantly and a copy lands in your inbox.

By submitting your email you'll also receive the weekly runbookify newsletter. You can unsubscribe at any time.