Backlog
7Under consideration
Stalled match alerts
Matches that sit still for a week are easy to miss when you live in email. Show a clear list of who needs a nudge — and optional digests — so fewer placements go cold.
Candidate self-service portal enhancements
Advanced analytics (placement fee by client / skill)
Zapier / webhook integrations
Native mobile-friendly timesheet for contractors
Notifications for follow-ups (email / Slack)
Get notified when a match goes stale or a timesheet is waiting — without living inside the ATS all day.
End-client master & duplicates
Keep final-client names clean and stop junk auto-created records, so reporting and billing stay trustworthy.
Next up
2Committed and queued
In Progress
2Actively being built
Public jobs portal polish
A cleaner multilingual careers page for candidates to apply without ATS access — better share links for clients and agencies.
Travel & expenses
Track travel and expenses tied to placements and contracts, so fee and cost don’t live only in someone’s inbox.
Done
11Recently shipped
Report: active client & employee notices
Active contracts whose client and/or employee notice window has started (from estimated end date − notice days). Overdue if end date already passed and the contract is still active. Requires end date + notice days on the contract. Notice does not yet change Matching by itself — pair with upcoming availability for the candidate-side view.
Report: AI usage this month (quota)
Current-month AI meter: Σ used / quota (LLM + OCR), with OCR/LLM/Trad split. Trad API is tracked but does not consume quota. Check before bulk CV imports or inbox backfills. (No multi-month history yet.)
Report: pipeline by job (kanban matrix)
Matrix of open jobs with match counts per kanban column (suggested → won), plus in-progress count and potential fee €/day. See which briefs are overweight or empty, then open the job and unblock the stuck column.
Report: fee by client or skill
Aggregated profitability for a month: confirmed fee, pending fee, and active €/day — grouped by end client or by skill. Spot concentration (one client or skill carrying the desk) or pending fee stuck on a segment.
Report: monthly fee (confirmed vs pending)
Same fee logic as the dashboard, with month picker and line detail: Confirmed = issued/collected timesheets × fee/day + placement fees Pending = timesheets still pending issue + placement drafts Active fee €/day on live contracts Drill into the timesheet or placement invoice on the contract. Operational amounts — not fiscal invoicing.
Report: pending timesheets (send / validate / collect / pay)
One worklist for open timesheet actions: Not sent — contractor has not submitted Validate / issue — days confirmed, client side still pending Collect — issued, waiting collection Pay — contractor payment / receipt progress Clear validate before month close so fee moves from pending to confirmed.
Report: stalled matches (no status change)
Full list of live pipeline matches with no status change for N days (default 7). Excludes suggested, discarded, and won — so you only see work that went cold. Advance, set a follow-up, or discard with a reason.
Report: upcoming availability (liberation window)
See who frees soon inside your Matching liberation window (default 30 days). Availability comes from contract end date sync (with rules that protect closer manual dates) or from the candidate profile. Plan outreach and matching before people are free — without spreadsheet lists.
Reports hub — operations, fee & platform worklists
A dedicated Reports area beyond the morning dashboard. What you get Operations: upcoming availability, stalled matches, pending timesheets Commercial: monthly fee, fee by client/skill, pipeline by job Platform: AI usage this month, active contract notices Open a report, filter, then click through to the candidate, contract, timesheet, or job and finish the action. Why The dashboard shows urgency; Reports give the full list and month-end / weekly hygiene views.
Smarter AI inbox filters
When the inbox fills up, you need to slice by type, sender domain, and status in seconds. Better filters and bulk actions so classification stays useful under load.