Skip to main content
RapidDev - Software Development Agency
AI ImplementationsHR & Recruiting32 min read

White-Label AI Self-Service HR Portal (Ask-HR Chatbot)

Three paths: subscribe to Moveworks or Leena AI (enterprise quote-based, no true WL reseller tier), hire RapidDev for $13K–$25K to build a multi-tenant Ask-HR chatbot with real HRIS integration, or DIY on Lovable for $25 plus ~$30 in API credits for a working FAQ-over-handbook demo in one weekend. The decisive variable: a pure FAQ chatbot over a handbook is a genuine weekend Lovable build. The moment you need live PTO balances, paycheck history, or benefits enrollment via real HRIS APIs, the hire-agency path wins.

4.9Clutch rating
600+Happy partners
17+Countries served
190+Team members

Decision matrix

Should you buy, hire, or build it yourself?

Three paths to launch a Self-Service HR Portal (Ask-HR Chatbot), side-by-side. Pick the one that matches your budget, timeline, and how much control you actually need.

Buy enterprise SaaS

Buy SaaS
Time to launch
8–16 weeks (implementation)
Upfront cost
Implementation fees: $15,000–$80,000
Monthly cost
Enterprise quote-based; Moveworks floor typically $50,000–$100,000/yr per customer
Ownership
Vendor-controlled platform; no code ownership
Customization
HRIS connectors are pre-built; handbook Q&A is vendor-configured; no product behavior changes

Best for

Enterprise IT teams at 1,000+ employee companies who want a battle-tested, SOC 2-certified employee service platform with pre-built HRIS connectors and a dedicated implementation team

Risks

  • No white-label reseller tier exists at any price for Moveworks, Leena AI, Espressive, or ServiceNow HR Service Delivery — you can implement them for clients, but the platform brand is visible to employees.
  • Enterprise pricing ($50K–$100K/yr per customer) makes it economically impossible to resell to the 50–500 employee segment where the AI chatbot ROI is most compelling.
  • Implementation timelines (8–16 weeks) are too long for IT-services agencies that want to bundle the chatbot with a 4-week HRIS deployment.
  • Vendor lock-in on the handbook RAG corpus means a customer migration costs the same as a new implementation.

Hire RapidDev

Hire agency
Time to launch
6–10 weeks (basic, FAQ only) / 12–18 weeks (with HRIS integrations)
Upfront cost
$13,000–$25,000
Monthly cost
$300–$600 infra
Ownership
You own the code
Customization
Unlimited — handbook chunking strategy, HRIS connector selection, escalation rules, multilingual config all under your control

Best for

IT-services agencies bundling the chatbot with HRIS implementations for 50–500 employee customers, or EORs/PEOs adding a branded self-service layer to their existing payroll and benefits portal

Risks

  • HRIS integration scope is the primary cost driver: connecting to Workday's API is 4–6 weeks of work versus BambooHR's 1–2 weeks. Scope the target HRIS precisely before getting a build quote.
  • Handbook RAG quality depends on the quality and structure of the customer's handbook — poorly formatted, inconsistent, or outdated handbooks produce poor Q&A performance regardless of the LLM used.
  • HIPAA BAA is required at the LLM layer if any benefits Q&A touches health information; Anthropic's enterprise API provides this, but it must be configured per-call with zero-data-retention.
  • Sensitive-topic escalation (harassment, discrimination, mental health questions) must route to a human within minutes — the escalation workflow requires HR team buy-in from the customer before the chatbot goes live.
Recommended

Build with Lovable

Build yourself
Time to launch
1 weekend (FAQ chatbot over handbook PDF); 4–6 weeks (with basic HRIS API integration)
Upfront cost
$25–$60 (Lovable Pro)
Monthly cost
$30–$150 + API credits
Ownership
You own the code
Customization
Limited by your HRIS API access, Lovable's Edge Function timeout constraints, and the LLM's ability to stay grounded in the handbook without hallucinating

Best for

HR consultants who manage a single client's handbook and want a simple AI Q&A tool that reduces their own ticket volume — not for multi-tenant resale

Risks

  • Lovable's default Edge Function timeout (10 seconds) is too short for RAG retrieval + LLM call on large handbooks; the first time an employee asks a question that takes 12 seconds to answer, they see a timeout error.
  • Per-employee HRIS authentication (OAuth, not just API key) requires a multi-step auth flow that Lovable can scaffold but not fully implement without significant custom code in Edge Functions.
  • HIPAA compliance at the LLM layer (BAA + zero-data-retention per call) requires Anthropic enterprise API configuration that is manageable but not documented in the standard Lovable workflow.
  • Without per-tenant handbook isolation (row-level security on the handbook chunks), a bug in the retrieval logic could serve Employee A with chunks from Company B's handbook.

What a Self-Service HR Portal (Ask-HR Chatbot) actually does

Answers employee HR questions in natural language by grounding Claude Haiku 4.5 in a RAG'd employee handbook, then escalating PTO balance and paycheck queries to live HRIS API calls rather than LLM inference.

The implementation separates two fundamentally different question types: informational questions ('How many vacation days do I accrue?', 'What is the parental leave policy?') are answered by a RAG pipeline over the employer's handbook and benefits documents; transactional questions ('What is my current PTO balance?', 'When was my last paycheck?') are answered by deterministic API calls to the connected HRIS (BambooHR, Rippling, Gusto, or Workday) with the LLM handling only the final-mile formatting of the retrieved data. This separation is both a quality decision (HRIS APIs are authoritative; LLMs are not) and a compliance decision (HIPAA applies if benefits Q&A touches health information; HRIS data is PII that must not be inferred by a language model).

The market signal for 2026: Moveworks — the category leader — is enterprise-only and quote-based, leaving a structural gap for IT-services agencies and EORs that want to bundle a branded AI Ask-HR chatbot with HRIS implementations for 50–500 employee customers. The compliance load is genuinely lighter than hiring/promotion tools (no NYC LL 144, no Annex III high-risk for pure FAQ use) but escalates the moment the bot starts approving PTO requests or making automated benefits-enrollment decisions — that boundary is the core architectural guardrail.

AI capabilities involved

Natural-language HR Q&A over RAG'd employee handbook and benefits documents

Claude Haiku 4.5Claude Sonnet 4.6GPT-5.4 miniGemini 3.1 Flash-Lite

Sensitive-topic classifier for auto-escalation routing (harassment, discrimination, mental health)

GPT-5.4 nanoClaude Haiku 4.5Gemini 3.1 Flash-Lite

Multilingual Q&A support (Spanish primary for US frontline workforces)

Gemini 3.5 FlashClaude Haiku 4.5Gemini 3.1 Flash-LiteMistral Large 3

Form-filling assistance for FSA claims, address changes, and beneficiary updates

Claude Haiku 4.5Claude Sonnet 4.6GPT-5.4 mini

Who uses this

  • IT-services agencies that implement BambooHR, Rippling, or Gusto for mid-market customers and want to bundle a branded AI chatbot with the HRIS deployment
  • EORs and PEOs adding a self-serve employee portal to reduce HR ticket volume from their client employees
  • HR-tech founders targeting the 50–500 employee segment that is too small for Moveworks ($100K+ enterprise implementation) and too large for a simple FAQ bot
  • Distributed-team platforms adding multilingual HR Q&A (Spanish for US frontline workforces) as a differentiating feature
  • Professional employer organizations (PEOs) that manage HR administration for dozens of small-business clients and want a single branded portal all client employees use

SaaS alternatives on the market

Real products you can sign up for today — with current 2026 pricing, honest pros and cons.

Moveworks

Enterprise IT teams at companies with 1,000+ employees and existing Workday or ServiceNow investments who want a world-class employee-service AI without building it.

None

Enterprise quote-based; floor typically $50,000–$100,000/yr per customer

Pros

  • +The category leader for enterprise employee-service AI — pre-built connectors for Workday, ServiceNow, SAP, BambooHR, and 100+ HRIS and IT systems.
  • +Conversational AI that can take actions (file a ticket, approve a request, update an address) not just answer questions — the broadest scope of any product in the category.
  • +SOC 2 Type II + HIPAA BAA available — satisfies enterprise security and compliance requirements out of the box.
  • +Multi-language support with 100+ languages — the strongest multilingual Q&A in the category.

Cons

  • No white-label reseller tier; Moveworks brand is visible to all employees.
  • Enterprise-only pricing ($50K+/yr per customer) makes it economically impossible to resell to 50–500 employee companies.
  • Implementation requires a dedicated Moveworks professional services engagement — not a self-serve deployment.
  • Overkill for customers who only need FAQ Q&A over a handbook; the full platform capability requires ITSM and HRIS integration to deliver ROI.
The minimum viable Moveworks deployment economically requires a customer with 500+ employees and an existing ITSM platform — below that threshold, the implementation cost ($15K–$80K) exceeds the ROI from ticket deflection.

Leena AI

Mid-market HR-tech vendors or PEOs serving 200–1,000 employee customers who need a partially brandable Ask-HR platform and have the budget for enterprise pricing.

Demo only

Quote-based; Enterprise co-brand on high tiers

Pros

  • +Stronger mid-market positioning than Moveworks — serves customers in the 200–5,000 employee range more aggressively.
  • +Partial co-brand available on Enterprise tier — the closest to a true WL option among the enterprise incumbents.
  • +Native integration with Workday, SuccessFactors, and BambooHR for live PTO and payroll queries.
  • +Included HR document management (policy and handbook storage) reduces integration scope.

Cons

  • Co-brand is partial, not full product rebrand — Leena AI product identity remains visible to employees.
  • Pricing opacity makes resale margin planning difficult; enterprise floor is typically $15K–$40K/yr per customer.
  • Implementation timeline (6–10 weeks) reduces the bundling advantage for IT-services agencies doing fast HRIS deployments.
  • Smaller benchmark and training corpus than Moveworks — answer quality on edge-case policy questions is weaker.
The partial co-brand on Enterprise tier is the closest real WL option in this category, but it requires a volume commitment that prices out most IT-services agency resellers.

Espressive Barista

Enterprise system integrators who already implement ServiceNow HR Service Delivery for large customers and want to add an AI chatbot layer to existing implementations.

None

Quote-based; partial WL on Enterprise

Pros

  • +NLP trained specifically on HR domain knowledge — stronger out-of-the-box accuracy on HR-specific questions than general-purpose LLM chatbots.
  • +Partial white-label on Enterprise tier (custom portal branding) makes it one of the few realistic reseller options.
  • +Strong integration with ServiceNow HR Service Delivery for customers who already use that platform.
  • +Intelligent form automation — fills forms based on employee profile data from HRIS.

Cons

  • Espressive's primary market is large enterprises (5,000+ employees); smaller customers are typically redirected to partners.
  • No published pricing; Enterprise WL tier is expensive enough that resale margin for small-business deployments is negative.
  • Limited multilingual support compared to Moveworks and Leena AI.
  • Heavy dependency on ITSM platform (ServiceNow) for full feature utilization — bare-bones without it.
Espressive Barista's partial WL is enterprise-priced and ITSM-dependent — not viable as a standalone SMB resell product.

Workday Assistant

Workday HCM enterprise customers who want to maximize their existing investment by adding conversational employee self-service — not a reseller product.

None

Bundled with Workday HCM enterprise contract

Pros

  • +Deepest HRIS integration available — direct access to every Workday data field (PTO, payroll, benefits, goals, org chart) without API configuration.
  • +Voice-enabled interface for mobile use cases where hands-free interaction matters.
  • +Workday's single-tenant security model means customer data never commingles — the strongest data isolation in the category.
  • +Continuous learning from employee interactions improves answer accuracy over time within each customer's instance.

Cons

  • Not available as a standalone product — requires an existing Workday HCM contract, pricing it out of the SMB segment entirely.
  • Cannot be white-labeled or resold under a different brand.
  • Configuration is managed by Workday Professional Services; resellers cannot independently implement it.
  • Only useful for Workday-connected data — a customer using Gusto for payroll cannot use Workday Assistant.
Workday Assistant is the best Ask-HR product for existing Workday customers and is entirely irrelevant for anyone else.

The AI stack

The production stack has a hard architectural rule: the LLM handles natural language, the HRIS API handles data retrieval. A language model that infers PTO balances from historical patterns is not an Ask-HR chatbot — it is a liability. Every transactional query must go to the HRIS API; only informational queries should use the RAG + LLM path.

01

FAQ answer synthesis (informational Q&A)

Answer policy and procedure questions by grounding the LLM in retrieved handbook and benefits document chunks

Claude Haiku 4.5

$1 / $5 per M tokens

Standard tier FAQ Q&A for tenants with handbooks under 200 pages and straightforward single-policy questions

+ Best cost-quality ratio for FAQ Q&A at the volume an HR chatbot operates; 200K context is sufficient for most handbook RAG use cases; excellent instruction-following to stay grounded in retrieved chunks. 200K context cap means very large handbook archives (>200 pages) need careful chunking; less nuanced on complex multi-policy questions than Sonnet.

Claude Sonnet 4.6

$3 / $15 per M tokens

Premium tier complex Q&A or HRIS-integrated queries where answer accuracy is commercially critical (customers paying $10K+/yr for the platform)

+ Better at synthesizing answers that touch multiple policies simultaneously ('How does parental leave interact with my FMLA entitlement?'); 1M context handles large handbook archives in a single call. 3× more expensive than Haiku for the same question volume; cost is justified only for complex cross-policy queries.

GPT-5.4 mini

$0.75 / $4.50 per M tokens

Cost-sensitive FAQ deployments where the handbook is well-structured and ambiguous cross-policy questions are rare

+ Good balance of cost and quality for FAQ use cases; large 1M context handles full handbooks. Slightly weaker instruction-following on strict 'only answer from the provided context' prompts compared to Claude — more prone to incorporating training-data knowledge when the handbook is ambiguous.

Our pick: Claude Haiku 4.5 as the default for all FAQ Q&A. Route to Sonnet 4.6 only for queries that the Haiku response explicitly flags as requiring multi-policy synthesis or for premium-tier tenants. The cost difference at typical HR chatbot volume (200 queries/employee/year) is approximately $0.02/employee/year for Haiku versus $0.06 for Sonnet.

02

Sensitive-topic classifier (escalation routing)

Detect questions about harassment, discrimination, mental health, legal disputes, or termination and route them to human HR reps before the LLM responds

GPT-5.4 nano

$0.20 / $1.25 per M tokens

High-volume pre-screening on every incoming question before any LLM call is made — the classification cost is ~$0.00003 per question

+ Fastest and cheapest classifier for binary 'sensitive/not-sensitive' routing; runs in <500ms before the main Q&A call, adding negligible latency. Can miss nuanced sensitive-topic signals in vague or indirect employee questions.

Claude Haiku 4.5

$1 / $5 per M tokens

Premium tier deployments where missing a subtle mental-health or harassment signal carries significant liability

+ Higher accuracy on nuanced sensitive-topic detection, particularly for indirect mental-health signals ('I've been really struggling lately') and implicit harassment disclosures. 5× more expensive than GPT-5.4 nano for a binary classification task.

Our pick: GPT-5.4 nano for all initial sensitive-topic pre-screening. If the classifier returns 'uncertain' (confidence < 0.85), escalate to Claude Haiku 4.5 for a more nuanced second-pass classification before routing to the Q&A layer.

03

Multilingual support

Translate non-English employee questions before handbook retrieval and translate the English-language handbook chunks into the employee's language for the final response

Gemini 3.5 Flash

$1.50 / $9 per M tokens

Deployments where code-switching or complex bilingual question framing is common (US restaurant and retail frontline workers)

+ Strongest multilingual Q&A out of the box at the new default model tier; handles code-switching (Spanish-English mixing common in US frontline workforces) better than most alternatives. More expensive than Gemini 3.1 Flash-Lite for straightforward translation tasks.

Gemini 3.1 Flash-Lite

$0.25 / $1.50 per M tokens

Cost-minimization on high-volume multilingual Q&A where questions are clearly in a single language

+ Cheapest Gemini 3-generation model; adequate for standard Spanish ↔ English translation with clear question structure. Weaker on code-switching and ambiguous multi-language sentences; requires cleaner input structure.

Our pick: Default to Claude Haiku 4.5 for US English Q&A. Add Gemini 3.1 Flash-Lite as the translation layer for Spanish-first questions (employee writes in Spanish, system translates to English for retrieval, translates response back to Spanish). Upgrade to Gemini 3.5 Flash only for deployments where code-switching is common.

04

Handbook embeddings (RAG retrieval)

Embed handbook and benefits document chunks for cosine-similarity retrieval when an employee question comes in

text-embedding-3-small (OpenAI)

$0.02 per M tokens

US-only deployments with well-structured handbooks where retrieval accuracy is not the primary product differentiator

+ Cheapest viable embedding for HR document RAG; adequate retrieval quality for well-structured handbooks with clear section headers. Lower recall on vague or indirect questions that reference policy content without using the policy's exact terminology.

text-embedding-3-large via Azure OpenAI

$0.13 per M tokens

EU-facing deployments requiring data-residency compliance, or premium tier tenants with complex, cross-referential policy handbooks

+ Better semantic recall on indirect questions; Azure hosting satisfies EU data-residency for GDPR compliance. 6× more expensive than text-embedding-3-small; overkill for the majority of FAQ use cases.

Our pick: text-embedding-3-small for US-only deployments; text-embedding-3-large via Azure for EU-facing deployments or any tenant requiring data-residency guarantees. Index chunks as 300–500 tokens with a 50-token overlap at section breaks to preserve policy context across chunk boundaries.

Reference architecture

The pipeline uses a decision-tree router before every user question: sensitive-topic classification first, then informational-vs-transactional routing, then either RAG + LLM (informational) or HRIS API lookup (transactional). The hardest engineering challenge is per-employee HRIS authentication — the chatbot must authenticate as the specific employee to retrieve their PTO balance, not as an admin — without storing their HRIS credentials in the chatbot's session.

01

Employee submits a question to the HR chatbot

Next.js frontend (chat interface, embedded in HR portal or Slack)

Question arrives with the employee's authenticated session (Supabase Auth tied to their HRIS employee ID). The UI pre-populates the company name and department for context.

02

Sensitive-topic classifier pre-screens every question before any other processing

GPT-5.4 nano Edge Function (synchronous, <500ms)

Classifies the question as 'routine', 'sensitive', or 'uncertain'. 'Sensitive' topics include harassment, discrimination, mental health, legal threats, termination, and hostile work environment. 'Sensitive' routes immediately to human escalation — no LLM answer is generated. 'Uncertain' routes to Haiku for a second-pass classification.

03

Question is classified as informational or transactional

Claude Haiku 4.5 Edge Function (router call, ~300 tokens)

A brief LLM call classifies the question: 'informational' (policy, procedure, general benefits explanation) or 'transactional' (PTO balance, paycheck amount, benefits enrollment status — requires live HRIS data). This classification drives the next step.

04

Informational questions: retrieve handbook chunks via vector search

Supabase pgvector (handbook_chunks table) + text-embedding-3-small

The question is embedded and matched against the tenant's handbook corpus (filtered by tenant_id for per-tenant isolation). Top 6–8 most relevant chunks are retrieved with their source section names. If fewer than 3 relevant chunks are retrieved, the fallback prompt instructs Haiku to respond: 'I could not find a specific answer in your company handbook. Please contact HR directly.'

05

Informational questions: synthesize answer grounded in retrieved chunks

Claude Haiku 4.5 Edge Function

Haiku generates a conversational answer citing the relevant handbook sections. The prompt strictly instructs the model to answer only from the retrieved chunks and to use the fallback if the chunks do not cover the question. Answer is formatted with the source section names so the employee can verify.

06

Transactional questions: fetch live data from HRIS API

HRIS connector Edge Functions (BambooHR / Rippling / Gusto OAuth)

The employee's HRIS OAuth token (stored encrypted in Supabase with per-employee row isolation) is used to make an authenticated API call to their HRIS. The raw API response (PTO balance in hours/days, paycheck amount, benefits enrollment status) is formatted by Haiku into a conversational response. The LLM never infers HRIS data — it formats only the API response.

07

Sensitive escalations are routed to the HR team within 5 minutes

Escalation webhook (Slack, email, or in-portal notification)

Sensitive-topic escalations create a ticket in the HR team's queue with the employee ID, the question text, and a timestamp. The employee sees: 'This is an important question — I have notified your HR team and they will be in touch within [configured SLA, typically 4 business hours].' The question text is not processed by the LLM.

08

Form-filling assistance for benefits enrollment and HR data changes

Claude Haiku 4.5 Edge Function + HRIS API write endpoints

For supported form-filling actions (FSA reimbursement, address change, beneficiary update), the chatbot walks the employee through the required fields, confirms the change with a preview ('You are changing your home address to: 123 Main St, Austin TX 78701 — is this correct?'), and then calls the HRIS API write endpoint. A human-approval gate is enforced for any change that affects payroll calculations.

Estimated cost per request

~$0.001 per informational FAQ question (GPT-5.4 nano classification + Haiku RAG synthesis, ~350 tokens total); ~$0.0003 per transactional question (classification only, HRIS API call has no LLM cost); ~$0.01 per nuanced policy question routed to Sonnet 4.6.

Cost calculator

Drag the sliders to model your actual usage. The numbers update in real time so you can stress-test economics before writing a single line of code.

Calculator models the monthly AI API cost for a white-label Ask-HR chatbot serving multiple tenant companies. Unlike most AI products, the dominant cost at scale is HRIS API rate-limit management and handbook re-embedding on updates — not per-question LLM costs.

400 employees
505,000
3 questions
115

Estimated monthly cost

$75.00

$900 per year

Supabase Pro (DB + Auth + pgvector)$25.00
Vercel Pro (hosting + Edge Functions)$20.00
Upstash Redis (session state + per-tenant rate limiting)$20.00
Slack app hosting (if Slack-native delivery enabled)$10.00
GPT-5.4 nano (sensitive-topic pre-screening, every question)$0.00
Claude Haiku 4.5 (FAQ synthesis, ~70% of questions are informational)$0.00
Haiku router classification (transactional vs informational, every question)$0.00
Fixed: $75.00/moVariable: $0.00/mo

Calculator notes

  • Transactional questions (PTO balance, paycheck history) route to HRIS APIs — no incremental LLM cost. HRIS API rate limits (typically 5,000–10,000 calls/day for BambooHR) are the constraint, not LLM cost.
  • Handbook re-embedding on each quarterly handbook update is a one-time cost per tenant: ~$0.02 per 100-page handbook at text-embedding-3-small rates — negligible.
  • HIPAA BAA at the Anthropic enterprise tier has no incremental per-call cost over standard API pricing — it is a contract and configuration requirement, not a billing line item.
  • At 400 employees × 3 questions/mo = 1,200 questions/mo: total AI cost ~$1.14/mo + $75 infra = ~$76/mo. Revenue at $8–$15/employee/mo generates $3,200–$6,000/mo gross — exceptionally strong margin at this ticket-deflection scale.

Build it yourself with vibe-coding tools

A pure FAQ chatbot over a handbook PDF is the most honest weekend Lovable build in the entire HR cluster. You will have a working demo by Sunday night. The caveat: 'working demo' means FAQ answers from the handbook; live PTO balance requires HRIS OAuth integration that is genuinely 4–6 additional weeks.

Time to MVP

1 weekend for FAQ chatbot over handbook; 4–6 additional weeks for HRIS OAuth integration

Total cost to MVP

$25 Lovable Pro + ~$30 Anthropic credits + free Notion/PDF handbook import

You'll need

Anthropic API key (Claude Haiku 4.5 for FAQ synthesis)OpenAI API key (GPT-5.4 nano for sensitive-topic classification and text-embedding-3-small for handbook embeddings)Supabase account with pgvector extension enabledThe employer's employee handbook in PDF or text format (the better structured, the better the RAG quality)A written escalation protocol: who does the chatbot notify when it classifies a sensitive question, and within what timeframe do they respond?

Starter prompt

Lovable Prompt

Build a white-label AI Ask-HR chatbot platform called [YOUR BRAND NAME]. The app has three main interfaces: 1. EMPLOYEE CHAT — A clean chat interface where employees can ask HR questions in plain English. The chatbot answers in 2–4 sentences with a 'Sources' panel showing which section of the handbook the answer came from. If the question is about their personal PTO balance, paycheck, or benefits enrollment status, the chatbot responds: 'To check your current [PTO balance / paycheck details / benefits status], log in directly to [HRIS name] — I cannot access your personal account information.' (We handle the HRIS integration in a later step.) If the question sounds sensitive (mentions harassment, discrimination, mental health, termination, or legal threats), the chatbot responds: 'This is an important question. I have notified your HR team and they will reach out within [4 business hours]. You can also [call HR hotline if exists].' and does NOT attempt to answer. 2. HR ADMIN PANEL — For each tenant: handbook upload (PDF → auto-chunked into Supabase pgvector); sensitive-topic escalation config (who receives escalation notifications, via what channel — email or Slack webhook); chatbot name and brand config; conversation log viewer (showing question + answer + whether it was escalated, but NOT the full conversation text for privacy). 3. CONVERSATION LOG (HR admin only) — Shows the count of questions by category (policy, benefits, PTO, sensitive-escalated), trending questions this week, and unanswered/low-confidence questions flagged for handbook improvement. No individual employee question text is visible in aggregate views — only the categories and counts. Tech stack: Vite + React + Supabase (handbook_chunks/conversations/escalations/tenants tables + pgvector for handbook embeddings) + Anthropic Edge Functions (Haiku 4.5 for answers, GPT-5.4 nano for sensitive classification). Per-tenant row-level security: no tenant can see another tenant's handbook chunks or conversation logs.

Paste this into Lovable

Follow-up prompts (run in order)

  1. 1

    Add the handbook ingestion pipeline: when an admin uploads a PDF in the admin panel, extract the text using PDF.js, split it into 400-token chunks with 50-token overlaps, and embed each chunk using text-embedding-3-small. Store chunks in handbook_chunks with tenant_id, section_title (extracted from H1/H2 headings), chunk_text, and embedding. Add a 'Re-embed handbook' button that re-processes the latest uploaded PDF when the handbook is updated quarterly.

  2. 2

    Add the question-answering Edge Function with strict source-grounding: (1) embed the question; (2) retrieve top 6 chunks from handbook_chunks filtered by tenant_id; (3) if fewer than 3 chunks retrieved, return fallback message; (4) call Claude Haiku 4.5 with the retrieved chunks in the context and the instruction 'Answer the employee's question using ONLY the provided handbook excerpts. If the excerpts do not directly address the question, say so and suggest contacting HR directly. Do not use any general knowledge about employment law — only the provided text.'; (5) return answer + chunk source citations.

  3. 3

    Add the sensitive-topic classifier as a pre-screening step that runs on every question BEFORE the handbook retrieval: call GPT-5.4 nano with a classification prompt listing sensitive topic categories (harassment, discrimination, mental health crisis, termination, legal threat, hostile work environment). If the classifier returns 'sensitive' with confidence > 0.85, skip the handbook search and trigger the escalation workflow instead. Log the escalation in the escalations table with employee_id (hashed), question_text, timestamp, and escalation_channel.

  4. 4

    Add Slack-native delivery option: an employee can ask their HR question in Slack by @mentioning the bot. The bot responds in-thread with the same answer + source citation format. Sensitive questions trigger a private DM to the configured HR contact, not a visible thread response. Use Slack Bolt for JavaScript (Edge Function compatible) and store Slack OAuth tokens per-tenant.

  5. 5

    Add the handbook health dashboard for HR admins: analyze the conversation log to find the top 10 most asked questions that received 'I could not find an answer in your handbook' responses. Display these as 'Handbook gaps' with a count and example question. Add a 'Suggest handbook section' button that calls Claude Haiku 4.5 to draft a new handbook section covering the gap, which the HR admin can review and paste into their handbook before the next re-embedding.

Expected output

A working multi-tenant FAQ chatbot with handbook RAG, sensitive-topic escalation, and an HR admin panel. Answers FAQ questions from the handbook with source citations. Does not yet connect to HRIS APIs for live PTO or paycheck data — that requires the additional 4–6 weeks of OAuth integration work.

Known gotchas

  • !Lovable's default Edge Function timeout (10 seconds) is too short for embedding + retrieval + LLM synthesis on large handbooks. A 200-page handbook with 600 chunks will sometimes take 12–15 seconds for a complex retrieval. Use Inngest background jobs for handbook ingestion; configure Edge Function timeout extensions for Q&A calls, or pre-warm the embedding index.
  • !PDF quality determines answer quality. A scanned handbook (image PDF with no extractable text) produces zero usable chunks. A handbook with inconsistent section headers produces poor retrieval. Spend 30 minutes auditing the customer's handbook structure before starting the RAG pipeline — a clean, well-structured handbook in Google Doc or Word format produces dramatically better retrieval than a scanned PDF.
  • !Per-tenant handbook isolation via row-level security (RLS) in Supabase is not optional — it is the first thing to configure before any handbook data is stored. An RLS misconfiguration where all tenants share a single policy is a data-breach risk that will end the business.
  • !Employees ask the chatbot questions they would not ask HR directly. This includes union organizing questions, questions about their manager's behavior, and salary negotiation advice. Your escalation logic must catch these even when phrased indirectly, and your terms of service must prohibit employers from using conversation logs to identify which employees asked which sensitive questions.
  • !HRIS OAuth flows are the hardest part of the build and are entirely outside what Lovable handles well. BambooHR's OAuth is relatively simple (server-side flow, stable API). Rippling and Workday OAuth are enterprise-grade flows that require a dedicated integration sprint. Scope the specific HRIS before estimating the full build timeline.
  • !The 'Do not store employee conversation text in ways that allow employer access' principle is both a privacy design choice and a legal protection for your employees. Design your data model so that conversation content is accessible only to the employee who asked, and to the HR admin only when the employee explicitly shared it or it was escalated as sensitive.

Compliance & risk reality check

An AI Ask-HR chatbot sits outside the most regulated HR categories (no hiring/promotion decisions, no AEDT trigger) but still carries important compliance requirements — particularly around HIPAA if benefits Q&A touches health information, EU AI Act Art. 50 chatbot disclosure, and sensitive-topic escalation obligations.

Important

EU AI Act Art. 50 — chatbot-is-AI disclosure

EU AI Act Article 50 requires that conversational AI systems disclose they are AI to users, effective August 2, 2026 (legacy systems until December 2, 2026 per the May 7, 2026 Omnibus). An HR chatbot deployed for EU-based employees is covered. The disclosure must be clear, not buried in a privacy policy, and must appear at the start of each conversation or in a persistent UI element.

Mitigation: Add a persistent disclaimer in the chat UI: 'Ask-HR is an AI assistant. It answers questions based on your company handbook. For sensitive matters, it will connect you with a human HR team member.' For EU tenants, make this disclaimer non-removable and add a 'You are speaking with an AI system' notice at the start of each new conversation session.

Important

HIPAA — if benefits Q&A touches health information

HIPAA applies when an AI system 'creates, receives, maintains, or transmits' Protected Health Information (PHI) on behalf of a covered entity. An HR chatbot that answers questions about health insurance plans (deductibles, copays, in-network providers, HSA balances) is likely not handling PHI — it is describing plan features. But a chatbot that retrieves an employee's specific health insurance claims history, FSA balance, or medical leave status from the HRIS crosses into PHI territory and requires a Business Associate Agreement (BAA) with both the HRIS provider and the LLM provider (Anthropic enterprise API).

Mitigation: Scope the benefits Q&A feature precisely: plan descriptions and enrollment guidance do not require a BAA; individual claims and medical leave retrieval do. If individual health data retrieval is in scope, obtain a BAA from Anthropic (Claude enterprise API) and enforce zero-data-retention per API call. Configure HRIS API calls for medical leave data through a server-side Edge Function that never sends PHI to the LLM — the LLM formats only non-PHI metadata ('Your FMLA leave starts on DATE').

Important

EU AI Act Annex III — escalates if bot auto-approves PTO or benefits decisions

A pure FAQ chatbot is NOT Annex III high-risk. The escalation to high-risk occurs the moment the chatbot automatically approves or denies requests that constitute employment decisions (PTO approval, leave approval, benefits enrollment changes that affect health coverage). An FAQ chatbot that answers 'Your company's PTO policy allows 15 days annually' is informational; a bot that responds to 'Approve my PTO request for next Thursday' with an approved confirmation is making a consequential employment decision.

Mitigation: Enforce a hard architectural rule: the chatbot can display PTO balances and policy information (informational), but all requests that modify HRIS records require human approval before execution. The UI should explicitly label form-filling actions as 'Submitted for HR approval' rather than 'Completed.' In customer contracts, prohibit configuration of the chatbot to auto-approve any request affecting employment terms.

Important

Sensitive-topic escalation duty of care

An employee who discloses suicidal ideation, reports workplace harassment, or describes a hostile work environment in an HR chatbot conversation has a reasonable expectation that this information reaches a human capable of acting on it — not just an AI response. Failure to route these conversations to a human HR representative within a reasonable timeframe creates both a duty-of-care liability and, in states with mandatory reporting requirements, a legal compliance failure.

Mitigation: Configure the sensitive-topic classifier to route escalations to the HR team with a response SLA (default: 4 business hours). The chatbot must not attempt to answer sensitive questions — it must respond with the escalation message and create a human-visible ticket. For mental-health crisis disclosures (employee expresses thoughts of self-harm), add a secondary escalation to a crisis resource (988 Suicide and Crisis Lifeline) alongside the HR notification, and document this escalation path in your customer agreements.

Good to know

GDPR Art. 22 + DPIA for EU employee Q&A data

Conversation logs between EU employees and the HR chatbot constitute personal data under GDPR. Storing these logs for audit or product improvement purposes requires a lawful basis and a defined retention period. GDPR's right to erasure (Art. 17) means an employee can request deletion of their conversation history.

Mitigation: Define a conversation-log retention policy (90 days for routine FAQ conversations; 3 years for escalated sensitive conversations for employment-record purposes). Implement a 'Delete my conversation history' button in the employee portal tied to a Supabase RPC that purges conversation records linked to the employee's user ID. Conduct a DPIA before enabling any analytics on conversation content that might involve identifying individual employees.

Build vs buy: the real math

6–10 weeks (FAQ only) / 12–18 weeks (with HRIS integrations)

Custom build time

$13,000–$25,000

One-time investment

3–5 months

Breakeven vs buying

The comparison point for the resell path is Moveworks at $50,000–$100,000/yr per enterprise customer — a price point that prices out the 50–500 employee mid-market entirely. A RapidDev build at $13K–$25K that you resell at $8–$15/employee/mo is recovered at 400 employees in months 3–5. At 400 employees × $10/mo = $4,000/mo gross revenue, with AI costs of ~$76/mo and infrastructure at $75/mo, the operating margin is approximately 96%. The HRIS integration investment ($5K–$15K additional for BambooHR/Rippling OAuth) pays back at the first HRIS deployment bundled with the chatbot — a typical IT-services agency closes at $15K–$30K for an HRIS implementation, and the chatbot bundled at $500/mo adds $6,000/yr per client. As Claude Haiku 4.5 pricing continues downward pressure (Anthropic cut Opus 67% in 2025), per-question costs approach negligible at typical Ask-HR volumes.

Skip the DIY — RapidDev builds the production version

A Lovable MVP gets you a demo. Production needs auth that doesn't leak data, AI calls that don't bankrupt you, observability when models drift, and code you can audit. That's what we ship.

1

Discovery call (free)

30 min

We map your exact Self-Service HR Portal (Ask-HR Chatbot) use case: who uses it, target volume, AI model choice, integrations, compliance scope. You get a detailed scope document and fixed-price quote within 48 hours.

2

AI-accelerated build

6–10 weeks (FAQ only) / 12–18 weeks (with HRIS integrations)

Our engineers use Claude Code, Lovable, and custom tooling to ship 3–5x faster than agencies. You see weekly progress in a staging environment — not a black box.

3

Launch + handoff

1 week

We deploy to your infrastructure, transfer the GitHub repo, set up CI/CD and monitoring, and train your team. You own 100% of the source code, prompts, and model configurations.

What you get

Full source code (GitHub repo)
Deployed on your infrastructure
Audited prompts & model configs
Cost monitoring + budget alerts
3 months of bug-fix support
Direct Slack channel with engineers

Timeline

6–10 weeks (FAQ only) / 12–18 weeks (with HRIS integrations)

Investment

$13,000–$25,000

vs SaaS

ROI in 3–5 months

Get your free estimate

30-min call. Fixed-price quote within 48 hours. No commitment.

Frequently asked questions

How much does it cost to build a white-label Ask-HR chatbot?

A FAQ-only chatbot over a handbook — multi-tenant, with sensitive-topic escalation and an HR admin panel — runs $13,000–$25,000 at RapidDev's standard band over 6–10 weeks. Adding live HRIS integration (BambooHR, Rippling, Gusto OAuth for PTO balance and paycheck history) adds $5,000–$15,000 and 6–8 additional weeks depending on which HRIS you are integrating with. Workday integration adds more — typically $10,000–$20,000 — due to Workday's more complex API and authentication model.

How long does it take to ship this?

An FAQ-only chatbot with multi-tenant handbook RAG can ship in 6–10 weeks. A full HRIS-integrated Ask-HR portal with live PTO balance, sensitive-topic escalation, and Slack-native delivery takes 12–18 weeks. The scoping decision that most affects timeline is which HRIS(s) you integrate with — BambooHR is 1–2 weeks of integration work; Workday is 4–6 weeks.

Can the chatbot answer questions about an employee's personal PTO balance or paycheck?

Only with HRIS integration. A language model should never infer or estimate PTO balances from general knowledge — that data must come directly from the HRIS via an authenticated API call. The architecture uses OAuth to make an authenticated call to the specific employee's HRIS record and format the result into a conversational response. Without HRIS integration, the chatbot should respond: 'To check your current PTO balance, log in directly to [HRIS name] — I do not have access to your personal account information.'

Does an AI HR chatbot need to comply with the EU AI Act?

Yes for two distinct requirements. Article 50 (chatbot-is-AI disclosure) applies to any conversational AI system from August 2, 2026 — you must clearly tell EU-based employees they are talking to an AI. Annex III (workers-management high-risk) does NOT apply to a pure FAQ chatbot, but it does apply if the chatbot begins approving PTO requests, making leave decisions, or influencing employment decisions. The architecture must enforce a hard line: informational answers are fine; automated approvals are Annex III high-risk and require human oversight built in.

Can RapidDev build this for my company?

Yes. RapidDev has shipped 600+ applications including HR portals, HRIS integrations, and multi-tenant SaaS platforms. We recommend scoping the specific HRIS integration target and the sensitive-topic escalation workflow with your HR client before starting the build — both have more nuance than they appear in the spec stage. Book a free 30-minute consultation at rapidevelopers.com to discuss your target market (IT-services agency, PEO, or standalone HR-tech) and the HRIS ecosystem you are targeting.

How do sensitive questions get handled — does the AI answer them?

No. The architecture pre-screens every question with a sensitive-topic classifier before any handbook search or LLM call. If the question mentions harassment, discrimination, hostile work environment, termination, mental health crisis, or legal threats, the chatbot immediately responds with the escalation message and creates a ticket in the HR team's queue. The LLM never attempts to answer sensitive questions. This is both an ethical decision and a liability protection — an AI's response to a harassment disclosure or a mental-health crisis cannot satisfy the duty of care that a human HR representative can.

What makes this different from a simple ChatGPT wrapper over a PDF?

Four things: (1) per-tenant handbook isolation — each company's handbook is stored separately in a row-level-secured table, so Company A's employees can never receive answers from Company B's handbook; (2) sensitive-topic classification that routes away from the LLM entirely for any question involving harassment, mental health, or legal matters; (3) HRIS integration for live data retrieval rather than hallucinated answers about personal account information; (4) a fallback instruction that tells the LLM to acknowledge when it cannot find an answer in the handbook, rather than generating a plausible-sounding but potentially wrong policy explanation.

Does the employer have access to read employee conversation logs?

By design, the employer HR admin has access to aggregate analytics (question categories by count, handbook gaps, escalation rates) but not to individual employee conversation content. The only employee conversation content visible to HR is: (1) conversations that were escalated as sensitive (visible to HR because HR needs to respond); (2) conversations that the employee explicitly shared with HR as context. This design choice protects employee trust in the chatbot — employees who believe their manager reads their HR questions will not ask honest ones.

RapidDev

Want the production version?

  • Delivered in 6–10 weeks (FAQ only) / 12–18 weeks (with HRIS integrations)
  • You own 100% of the code
  • AI cost monitoring built in
Get a free estimate

30-min call. No commitment.

Matt Graham

Written by

Matt Graham · CEO & Founder, RapidDev

1,000+ client projects delivered. Columbia University & Harvard Business School alumnus, U.S. Navy veteran. About the author →

Want this built for you?

We ship production apps at a fixed price — $13K–$25K, 6–10 weeks, source code yours. You've seen what it takes; we do it every week.

Get a fixed-price quote

We put the rapid in RapidDev

Need a dedicated strategic tech and growth partner? Discover what RapidDev can do for your business! Book a call with our team to schedule a free, no-obligation consultation. We'll discuss your project and provide a custom quote at no cost.