Semantius Logo

Background Checks

1. Overview

Pre-employment background-check orchestration with adverse-action workflow. Coordinates external vendor handoffs and gates offer-to-firm conversion on clearance. Requires an external send_email tool for FCRA adverse-action notices.

2. Entity summary

Namedata_objectDescription
Adverse Action Noticesadverse_action_noticesFCRA-mandated notices issued when a background check is used to decline a candidate, covering the pre-adverse and post-adverse two-step process and dispute window.
Background Check Adjudicationsbackground_check_adjudicationsHuman review decisions on a completed background check (clear, engaged, decisional, declined), with rationale and individualized assessment notes.
Background Check Componentsbackground_check_componentsIndividual sub-check results inside a background check order (county criminal, SSN trace, employment verification, drug screen), each with its own status and source.
Background Check Disputesbackground_check_disputesCandidate-initiated disputes of a background check result under FCRA, with the disputed component, candidate statement, re-investigation result, and resolution.
Background Check Packagesbackground_check_packagesConfigured bundles of check types that can be ordered as one unit, defining what a standard package looks like for a role tier.
Background Checksbackground_checksExternal verification results for a candidate (criminal, employment, education, credit, identity), with status and findings from a screening provider.
CandidatescandidatesPeople known to the recruiting organization, with or without an active application, carrying contact details, resume, tags, consent, and source.
Drug and Health Screeningsdrug_health_screeningsPre-employment drug tests and occupational health screenings, tracking the order, provider, result, and any adverse-finding review. Holds sensitive medical data subject to legal restrictions.
FCRA Disclosuresfcra_disclosuresLegally required disclosure forms shown to a candidate before a consumer report is requested, with text version, signature, and timestamp.
FCRA Summary of Rights Acknowledgmentsfcra_summary_of_rights_acknowledgementsCandidate acknowledgments of receiving the summary of consumer rights at consent time, captured separately so the copy and timestamp persist for audit.
Offersjob_offersFormal employment offers extended to candidates, with compensation, start date, terms, approval chain, and status.
Pre-Adverse Action Noticespre_adverse_action_noticesFCRA-mandated notices sent to a candidate before a final adverse-action decision, including the report and rights summary and opening a dispute waiting period.
flowchart TD
  classDef embedded_master fill:#fff4cc,stroke:#c79100,color:#5b4500;
  classDef platform_builtin fill:#e0e0e0,stroke:#424242,color:#1a1a1a;
  candidates["Candidates"]
  job_offers["Offers"]
  background_check_components["Background Check Components"]
  background_check_disputes["Background Check Disputes"]
  background_check_adjudications["Background Check Adjudications"]
  fcra_disclosures["FCRA Disclosures"]
  adverse_action_notices["Adverse Action Notices"]
  fcra_summary_of_rights_acknowledgements["FCRA Summary of Rights Acknowledgments"]
  background_checks["Background Checks"]
  background_check_packages["Background Check Packages"]
  drug_health_screenings["Drug and Health Screenings"]
  pre_adverse_action_notices["Pre-Adverse Action Notices"]
  users["Users"]
  background_checks -->|"contains"| background_check_components
  background_check_packages -->|"shapes"| background_checks
  candidates -->|"discloses_via"| fcra_disclosures
  background_checks -->|"adjudicated_via"| background_check_adjudications
  background_check_adjudications -->|"triggers"| adverse_action_notices
  background_check_components -->|"disputed_via"| background_check_disputes
  candidates -->|"acknowledges_via"| fcra_summary_of_rights_acknowledgements
  background_checks -->|"triggers_pre_notice"| pre_adverse_action_notices
  background_checks -->|"gated_by"| fcra_summary_of_rights_acknowledgements
  job_offers -->|"is contingent on"| background_checks
  candidates -->|"screened_via"| drug_health_screenings
  candidates -->|"has owning recruiter"| users
  background_checks -->|"has requester"| users
  background_check_components -->|"has owner"| users
  background_check_adjudications -->|"has adjudicator"| users
  adverse_action_notices -->|"has owner"| users
  background_check_disputes -->|"has owner"| users
  pre_adverse_action_notices -->|"has owner"| users
  job_offers -->|"has approver"| users
  drug_health_screenings -->|"has coordinator"| users
  class candidates embedded_master;
  class job_offers embedded_master;
  class background_check_components embedded_master;
  class background_check_disputes embedded_master;
  class background_check_adjudications embedded_master;
  class fcra_disclosures embedded_master;
  class adverse_action_notices embedded_master;
  class fcra_summary_of_rights_acknowledgements embedded_master;
  class background_checks embedded_master;
  class background_check_packages embedded_master;
  class drug_health_screenings embedded_master;
  class pre_adverse_action_notices embedded_master;
  class users platform_builtin;
  style fcra_disclosures stroke-dasharray:5 5;
  style adverse_action_notices stroke-dasharray:5 5;
  style fcra_summary_of_rights_acknowledgements stroke-dasharray:5 5;
  style drug_health_screenings stroke-dasharray:5 5;
  style pre_adverse_action_notices stroke-dasharray:5 5;

3. Entities catalog

#data_objectcanonical codesingularpluralrolemastered inmastered labelnecessitypersonal_contententity_typewrite tiernotes
1adverse_action_noticesadverse_action_noticesAdverse Action NoticeAdverse Action Noticesembedded_masterbgv-adjudication-complianceAdjudication and Complianceoptionalyesoperational_workflow:manage-
2background_check_adjudicationsbackground_check_adjudicationsBackground Check AdjudicationBackground Check Adjudicationsembedded_masterbgv-adjudication-complianceAdjudication and Compliancerequiredyesoperational_workflow:manage-
3background_check_componentsbackground_check_componentsBackground Check ComponentBackground Check Componentsembedded_masterbgv-screening-ordersScreening Orders and Packagesrequiredyesoperational_workflow:manage-
4background_check_disputesbackground_check_disputesBackground Check DisputeBackground Check Disputesembedded_masterbgv-adjudication-complianceAdjudication and Compliancerequiredyesoperational_workflow:manage-
5background_check_packagesbackground_check_packagesBackground Check PackageBackground Check Packagesembedded_masterbgv-screening-ordersScreening Orders and Packagesrequired-catalog:admin-
6background_checksbackground_checksBackground CheckBackground Checksembedded_masterbgv-screening-ordersScreening Orders and Packagesrequiredyesoperational_workflow:manage-
7candidatescandidatesCandidateCandidatesembedded_masterats-candidate-crmCandidate CRMrequiredyesoperational_workflow:manage-
8drug_health_screeningsdrug_health_screeningsDrug and Health ScreeningDrug and Health Screeningsembedded_masterbgv-screening-ordersScreening Orders and Packagesoptionalyesoperational_workflow:manage-
9fcra_disclosuresfcra_disclosuresFCRA DisclosureFCRA Disclosuresembedded_masterbgv-adjudication-complianceAdjudication and Complianceoptionalyesoperational_workflow:manage-
10fcra_summary_of_rights_acknowledgementsfcra_summary_of_rights_acknowledgementsFCRA Summary of Rights AcknowledgmentFCRA Summary of Rights Acknowledgmentsembedded_masterbgv-adjudication-complianceAdjudication and Complianceoptionalyesoperational_record:manage-
11job_offersjob_offersOfferOffersembedded_masterats-offersJob Offersrequiredyesoperational_workflow:manage-
12pre_adverse_action_noticespre_adverse_action_noticesPre-Adverse Action NoticePre-Adverse Action Noticesembedded_masterbgv-adjudication-complianceAdjudication and Complianceoptionalyesoperational_workflow:manage-

4. Aliases and industry synonyms

(none: no industry-scoped aliases for this scope)

5. Relationships

5.1 Intra-scope edges

fromverbtocardinalitykindnecessityowner_sidedelete_modefk_formatnotes
background_checkscontainsbackground_check_componentsone_to_manycompositionrequiredsourcecascadeparent-
background_check_packagesshapesbackground_checksone_to_manyreferencerequiredsourcerestrictreference-
candidatesdiscloses_viafcra_disclosuresone_to_manycompositionrequiredsourcecascadeparent-
background_checksadjudicated_viabackground_check_adjudicationsone_to_onereferencerequiredsourcerestrictreference-
background_check_adjudicationstriggersadverse_action_noticesone_to_onereferenceoptionalsourceclearreference-
background_check_componentsdisputed_viabackground_check_disputesone_to_manyreferenceoptionaltargetclearreference-
candidatesacknowledges_viafcra_summary_of_rights_acknowledgementsone_to_manycompositionoptionalsourcecascadeparent-
background_checkstriggers_pre_noticepre_adverse_action_noticesone_to_manycompositionoptionalsourcecascadeparent-
background_checksgated_byfcra_summary_of_rights_acknowledgementsone_to_onereferencerequiredsourcerestrictreference-
job_offersis contingent onbackground_checksone_to_manyreferencerequiredsourcerestrictreference-
candidatesscreened_viadrug_health_screeningsone_to_manyreferenceoptionalsourceclearreference-

5.2 Built-in edges (users and other platform built-ins)

fromverbtocardinalitynecessityowner_sidedelete_modefk_formatnotes
candidateshas owning recruiterusersmany_to_manyoptionalsourceclearreference-
background_checkshas requesterusersmany_to_manyrequiredsourcerestrictreference-
background_check_componentshas ownerusersmany_to_manyoptionalsourceclearreference-
background_check_adjudicationshas adjudicatorusersmany_to_manyrequiredsourcerestrictreference-
adverse_action_noticeshas ownerusersmany_to_manyoptionalsourceclearreference-
background_check_disputeshas ownerusersmany_to_manyoptionalsourceclearreference-
pre_adverse_action_noticeshas ownerusersmany_to_manyoptionalsourceclearreference-
job_offershas approverusersmany_to_manyrequiredsourcerestrictreference-
drug_health_screeningshas coordinatorusersmany_to_manyoptionalsourceclearreference-

5.3 Cross-scope edges

5.3a Outbound from this scope’s masters and contributors

Edges this scope drives: the in-scope endpoint has role of master or contributor.

(none: no outbound cross-scope edges from this scope’s masters or contributors)

5.3b Context edges on embedded shells and consumed entities

Edges the canonical owner drives, shown for context: the in-scope endpoint has role of embedded_master, consumer, or derived.

fromverbtocardinalitynecessitydelete_modefk_formatnotes
candidatesverified_viaright_to_work_verificationsone_to_manyoptionalnonen/a-
candidatesengaged_viacandidate_engagementsone_to_manyoptionalnonen/a-
candidatesattends_viarecruiting_event_attendancesone_to_manyrequirednone (required-if-present)n/a-
candidatesnoted_viarecruiter_interactionsone_to_manyoptionalnonen/a-
candidatesconsents_viacandidate_consentsone_to_manyrequired⚠ audit: required composed child out of scopen/a-
candidatesmember_of_viatalent_pool_membershipsone_to_manyrequirednone (required-if-present)n/a-
candidatesself_identifies_viaeeo_responsesone_to_manyoptionalnonen/a-
job_offersevolves_throughoffer_versionsone_to_manyrequired⚠ audit: required composed child out of scopen/a-
job_offersgated_byoffer_approvalsone_to_manyoptionalnonen/a-
candidatessubmits_viadata_subject_requestsone_to_manyoptionalnonen/a-
candidatesself_ids_viavoluntary_self_identificationsone_to_manyoptionalnonen/a-
candidatesdocumented_viacandidate_documentsone_to_manyoptionalnonen/a-
candidatesannotated_viacandidate_notesone_to_manyoptionalnonen/a-
candidatestagged_viacandidate_tag_assignmentsone_to_manyoptionalnonen/a-
skill_profilesfeedscandidatesone_to_manyoptionalnonen/a-
candidatessubmitsjob_applicationsone_to_manyrequirednone (required-if-present)n/a-
candidate_referralsintroducescandidatesone_to_manyrequirednone (required-if-present)n/a-
recruitment_sourcesattributescandidatesone_to_manyrequirednone (required-if-present)n/a-
recruitment_agenciessourcescandidatesone_to_manyrequirednone (required-if-present)n/a-
recruitment_eventsattractscandidatesone_to_manyrequirednone (required-if-present)n/a-
talent_poolsgroupscandidatesmany_to_manyrequirednone (required-if-present)n/a-
job_applicationsresults injob_offersone_to_manyrequirednone (required-if-present)n/a-
job_offersspawnsonboarding_journeysone_to_onerequirednone (required-if-present)n/a-
job_offerstriggersbenefit_enrollmentsone_to_onerequirednone (required-if-present)n/a-
job_offersseedscompensation_statementsone_to_onerequirednone (required-if-present)n/a-
candidatesbecomesemployeesone_to_onerequirednone (required-if-present)n/a-
job_offersspawns pre-employee recordpre_employeesone_to_onerequirednone (required-if-present)n/a-
candidatesbecomes pre-employeepre_employeesone_to_onerequirednone (required-if-present)n/a-
employeesapplies_ascandidatesone_to_manyoptionalnonen/a-
candidatescorresponds_viacandidate_emailsone_to_manyoptionalnonen/a-
candidatessubmitted_viaagency_submissionsone_to_manyoptionalnonen/a-

6. Cross-domain context

6.1 Master consumers (other modules / domains that embed this scope’s masters)

(none: no other module embeds this scope’s masters; the canonical owners do.)

6.2 Outbound handoffs (events this scope publishes)

source moduletarget domaintarget moduletrigger_eventtransitionpayloadintegrationfrictiondescription
ATS-BACKGROUND-CHECKSHRSDHRSD-CASE-MGMTbackground_check.flagged(lifecycle)background_checksmanual_handoffhighAdverse-action workflow requires HR-legal review; manual escalation common. Friction shape: alert/escalation without feedback loop.
ATS-CANDIDATE-CRMHCMHCM-LIFECYCLE-WORKFLOWScandidate.hiredhired (lifecycle)candidatesevent_streamhighHired-candidate event publishes the hiring outcome to HCM, which must create the employee record. Identifier mapping (candidate_id -> employee_id) is the canonical reconciliation gap.
ATS-OFFERSHCMHCM-LIFECYCLE-WORKFLOWSjob_offer.acceptedaccepted (state_change)job_offersevent_streammediumOffer acceptance signals firm hiring intent; HCM creates pending-employee record.
ATS-BACKGROUND-CHECKSPAYROLLPAYROLL-RUNbackground_check.cleared(lifecycle)background_checksapi_callmediumCleared background check unblocks final pay setup at start date; PAYROLL setup proceeds.
ATS-BACKGROUND-CHECKSATSATS-OFFERSbackground_check.flagged(lifecycle)job_offerslifecycle_progressionmedium-
ATS-OFFERSCOMP-MGMTCOMP-STATEMENTSjob_offer.signedsigned (lifecycle)job_offersevent_streamlowSigned offer establishes the comp baseline; COMP-MGMT incorporates into cycle history.
ATS-CANDIDATE-CRMBEN-ADMINBEN-ENROLLMENTcandidate.hiredhired (lifecycle)candidatesevent_streamlowHired candidate triggers eligibility window in BEN-ADMIN.
ATS-CANDIDATE-CRMONBOARDINGONB-JOURNEY-MGMTcandidate.hiredhired (lifecycle)candidatesevent_streammediumHired candidate drives onboarding-plan kickoff with role/location/manager context from ATS payload.

6.3 Inbound handoffs (events this scope reacts to)

target modulesource domainsource moduletrigger_eventtransitionpayloadintegrationfrictiondescription
ATS-CANDIDATE-CRMHCMHCM-CORE-WORKERemployee.applied_internallyactiveactive (signal)candidatesapi_callmediumWhen an employee applies internally, HCM hands the worker context to the applicant tracker, which materializes an internal candidate record from the worker profile. Friction: reconciling the worker identity against the candidate identity space.
ATS-CANDIDATE-CRMATSATS-REFERRALScandidate_referral.submitted(lifecycle)candidateslifecycle_progressionlow-
ATS-OFFERSATSATS-RECRUITMENT-PIPELINEjob_application.advanced(state_change)job_offerslifecycle_progressionlow-
ATS-BACKGROUND-CHECKSATSATS-OFFERSjob_offer.acceptedaccepted (state_change)background_checkslifecycle_progressionlow-
ATS-BACKGROUND-CHECKSATSATS-OFFERSjob_offer.rescinded(state_change)background_checkslifecycle_progressionmedium-

6.4 Master providers (modules / domains that own masters this scope embeds)

data_objectrole herenecessitycanonical owner(s)slice notes
adverse_action_noticesembedded_masteroptionalBGV-ADJUDICATION-COMPLIANCE (BGV)-
background_check_adjudicationsembedded_masterrequiredBGV-ADJUDICATION-COMPLIANCE (BGV)-
background_check_componentsembedded_masterrequiredBGV-SCREENING-ORDERS (BGV)-
background_check_disputesembedded_masterrequiredBGV-ADJUDICATION-COMPLIANCE (BGV)-
background_check_packagesembedded_masterrequiredBGV-SCREENING-ORDERS (BGV)-
background_checksembedded_masterrequiredBGV-SCREENING-ORDERS (BGV)-
candidatesembedded_masterrequiredATS-CANDIDATE-CRM (ATS)-
drug_health_screeningsembedded_masteroptionalBGV-SCREENING-ORDERS (BGV)-
fcra_disclosuresembedded_masteroptionalBGV-ADJUDICATION-COMPLIANCE (BGV)-
fcra_summary_of_rights_acknowledgementsembedded_masteroptionalBGV-ADJUDICATION-COMPLIANCE (BGV)-
job_offersembedded_masterrequiredATS-OFFERS (ATS)-
pre_adverse_action_noticesembedded_masteroptionalBGV-ADJUDICATION-COMPLIANCE (BGV)-

7. Lifecycle states

adverse_action_notices (Adverse Action Notice)

This scope holds adverse_action_notices as embedded_master; the canonical state machine is owned by BGV-ADJUDICATION-COMPLIANCE.

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1pre_adverse_sent---Pre-adverse notice sent; candidate has dispute window to respond.
2dispute_filed----Candidate filed a dispute within the waiting window.
3waiting_period_elapsed----Dispute window passed without action.
4post_adverse_sent--Final adverse action notice issued; hiring decision final.
5rescinded---Adverse action process abandoned (dispute upheld, hire reinstated).

background_check_adjudications (Background Check Adjudication)

This scope holds background_check_adjudications as embedded_master; the canonical state machine is owned by BGV-ADJUDICATION-COMPLIANCE.

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1pending---Awaiting adjudicator review.
2clear--Decision: clear to hire.
3engaged---Decision: requires individualized assessment / candidate dialog per EEOC.
4declined--Decision: hire declined based on results; triggers adverse action process.

background_check_components (Background Check Component)

This scope holds background_check_components as embedded_master; the canonical state machine is owned by BGV-SCREENING-ORDERS.

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1ordered---Component requested from provider.
2in_progress----Provider actively researching.
3completed_clear---Component returned clear (no findings).
4completed_flagged---Component returned with findings requiring adjudication.
5unable_to_verify---Provider could not verify; component closed without result.

background_check_disputes (Background Check Dispute)

This scope holds background_check_disputes as embedded_master; the canonical state machine is owned by BGV-ADJUDICATION-COMPLIANCE.

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1filed---Candidate filed dispute.
2under_review----Provider re-investigating disputed component.
3upheld---Dispute upheld; component result corrected.
4denied---Dispute denied; original result stands.

background_checks (Background Check)

This scope holds background_checks as embedded_master; the canonical state machine is owned by BGV-SCREENING-ORDERS.

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1requested---Check ordered from the provider for a candidate.
2in_progress----Provider is running verification (criminal, employment, education, identity).
3completed_clear-ats-background-checks:clear_background_checkProvider returned a clear result; no adverse findings.
4completed_consider-ats-background-checks:adjudicate_background_checkProvider returned adverse findings; gated review required before adjudication.
5canceled---Check withdrawn before the provider returned a result.

candidates (Candidate)

This scope holds candidates as embedded_master; the canonical state machine is owned by ATS-CANDIDATE-CRM.

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1prospect---Person known to the recruiting org with no active application.
2active----Candidate has at least one open application or is actively engaged.
3hired-ats-background-checks:hire_candidateCandidate accepted an offer and converted to employee.
4do_not_hire-ats-background-checks:flag_do_not_hireCandidate flagged as ineligible for future consideration; gated decision.
5archived---Candidate kept in the database but not active in any pipeline.

drug_health_screenings (Drug and Health Screening)

This scope holds drug_health_screenings as embedded_master; the canonical state machine is owned by BGV-SCREENING-ORDERS.

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1ordered----
2in_progress-----
3passed----
4failed-ats-background-checks:review_failed_screening-
5canceled----

fcra_disclosures (FCRA Disclosure)

This scope holds fcra_disclosures as embedded_master; the canonical state machine is owned by BGV-ADJUDICATION-COMPLIANCE.

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1presented---Disclosure shown to candidate; awaiting acknowledgment.
2acknowledged----Candidate signed acknowledgment; check may proceed.
3refused---Candidate declined to sign; cannot run check.
4expired---Authorization aged out of validity window.

job_offers (Offer)

This scope holds job_offers as embedded_master; the canonical state machine is owned by ATS-OFFERS.

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1draft---Recruiter is composing offer terms and compensation components.
2pending_approval----Offer routed to the designated approver for sign-off.
3approved--ats-background-checks:approve_offerApprover signed off; offer is ready to send.
4sent----Offer delivered to the candidate.
5accepted---Candidate accepted the offer.
6declined---Candidate declined the offer.
7rescinded-ats-background-checks:rescind_offerOffer withdrawn by the employer after being sent; gated action.

pre_adverse_action_notices (Pre-Adverse Action Notice)

This scope holds pre_adverse_action_notices as embedded_master; the canonical state machine is owned by BGV-ADJUDICATION-COMPLIANCE.

orderstate_nameinitial?terminal?requires_permission?derived gatedescription
1sent---Pre-adverse-action notice issued to the candidate. Opens the FCRA waiting period during which the candidate may dispute findings in the consumer report.
2waiting_period_active----Waiting period in progress. FCRA requires a reasonable opportunity to dispute, typically interpreted as at least 5 business days.
3waiting_period_elapsed----Waiting period expired with no dispute filed. Eligible to escalate to a final adverse-action notice or to clear the pre-adverse step.
4under_dispute--ats-background-checks:mark_pre_adverse_dispute_filedCandidate filed a dispute against findings in the consumer report. Investigation underway; the waiting clock is paused.
5cleared-ats-background-checks:clear_pre_adverse_noticePre-adverse notice withdrawn after candidate clarification or a successful dispute. The candidate proceeds in the hiring workflow.
6escalated-ats-background-checks:escalate_to_final_adverse_actionProceeding to the final FCRA adverse-action step. A downstream adverse_action_notices row is created with post_adverse_sent firing on issue.

8. Permissions and business rules (derived)

8.1 Permissions

permissiontierdescriptionincluded in :admin?
ats-background-checks:readbaseline-readRead access to every entity in the module
ats-background-checks:managebaseline-manageEdit operational records
ats-background-checks:adminbaseline-adminEdit reference data and inherit every workflow gate below-
ats-background-checks:hire_candidateworkflow-gate (lifecycle)Transition candidates into state hired
ats-background-checks:flag_do_not_hireworkflow-gate (lifecycle)Transition candidates into state do_not_hire
ats-background-checks:approve_offerworkflow-gate (lifecycle)Transition job_offers into state approved
ats-background-checks:rescind_offerworkflow-gate (lifecycle)Transition job_offers into state rescinded
ats-background-checks:clear_background_checkworkflow-gate (lifecycle)Transition background_checks into state completed_clear
ats-background-checks:adjudicate_background_checkworkflow-gate (lifecycle)Transition background_checks into state completed_consider
ats-background-checks:mark_pre_adverse_dispute_filedworkflow-gate (lifecycle)Transition pre_adverse_action_notices into state under_dispute
ats-background-checks:clear_pre_adverse_noticeworkflow-gate (lifecycle)Transition pre_adverse_action_notices into state cleared
ats-background-checks:escalate_to_final_adverse_actionworkflow-gate (lifecycle)Transition pre_adverse_action_notices into state escalated
ats-background-checks:review_failed_screeningworkflow-gate (lifecycle)Transition drug_health_screenings into state failed
ats-background-checks:view_all_candidatesoverride (personal_content)View all candidates rows beyond row-scope
ats-background-checks:manage_all_candidatesoverride (personal_content)Manage all candidates rows beyond row-scope
ats-background-checks:view_all_offersoverride (personal_content)View all job_offers rows beyond row-scope
ats-background-checks:manage_all_offersoverride (personal_content)Manage all job_offers rows beyond row-scope
ats-background-checks:view_all_background_check_componentsoverride (personal_content)View all background_check_components rows beyond row-scope
ats-background-checks:manage_all_background_check_componentsoverride (personal_content)Manage all background_check_components rows beyond row-scope
ats-background-checks:view_all_background_check_disputesoverride (personal_content)View all background_check_disputes rows beyond row-scope
ats-background-checks:manage_all_background_check_disputesoverride (personal_content)Manage all background_check_disputes rows beyond row-scope
ats-background-checks:view_all_background_check_adjudicationsoverride (personal_content)View all background_check_adjudications rows beyond row-scope
ats-background-checks:manage_all_background_check_adjudicationsoverride (personal_content)Manage all background_check_adjudications rows beyond row-scope
ats-background-checks:view_all_fcra_disclosuresoverride (personal_content)View all fcra_disclosures rows beyond row-scope
ats-background-checks:manage_all_fcra_disclosuresoverride (personal_content)Manage all fcra_disclosures rows beyond row-scope
ats-background-checks:view_all_adverse_action_noticesoverride (personal_content)View all adverse_action_notices rows beyond row-scope
ats-background-checks:manage_all_adverse_action_noticesoverride (personal_content)Manage all adverse_action_notices rows beyond row-scope
ats-background-checks:view_all_fcra_summary_of_rights_acknowledgmentsoverride (personal_content)View all fcra_summary_of_rights_acknowledgements rows beyond row-scope
ats-background-checks:manage_all_fcra_summary_of_rights_acknowledgmentsoverride (personal_content)Manage all fcra_summary_of_rights_acknowledgements rows beyond row-scope
ats-background-checks:view_all_background_checksoverride (personal_content)View all background_checks rows beyond row-scope
ats-background-checks:manage_all_background_checksoverride (personal_content)Manage all background_checks rows beyond row-scope
ats-background-checks:view_all_drug_and_health_screeningsoverride (personal_content)View all drug_health_screenings rows beyond row-scope
ats-background-checks:manage_all_drug_and_health_screeningsoverride (personal_content)Manage all drug_health_screenings rows beyond row-scope
ats-background-checks:view_all_pre-adverse_action_noticesoverride (personal_content)View all pre_adverse_action_notices rows beyond row-scope
ats-background-checks:manage_all_pre-adverse_action_noticesoverride (personal_content)Manage all pre_adverse_action_notices rows beyond row-scope

8.2 Business rules

rule_namedata_objectsource flagintent
candidate_edit_scopecandidateshas_personal_contentRow-scope by default; override via ats-background-checks:view_all_candidates / ats-background-checks:manage_all_candidates
offer_edit_scopejob_offershas_personal_contentRow-scope by default; override via ats-background-checks:view_all_offers / ats-background-checks:manage_all_offers
background_check_component_edit_scopebackground_check_componentshas_personal_contentRow-scope by default; override via ats-background-checks:view_all_background_check_components / ats-background-checks:manage_all_background_check_components
background_check_dispute_edit_scopebackground_check_disputeshas_personal_contentRow-scope by default; override via ats-background-checks:view_all_background_check_disputes / ats-background-checks:manage_all_background_check_disputes
background_check_adjudication_edit_scopebackground_check_adjudicationshas_personal_contentRow-scope by default; override via ats-background-checks:view_all_background_check_adjudications / ats-background-checks:manage_all_background_check_adjudications
fcra_disclosure_edit_scopefcra_disclosureshas_personal_contentRow-scope by default; override via ats-background-checks:view_all_fcra_disclosures / ats-background-checks:manage_all_fcra_disclosures
adverse_action_notice_edit_scopeadverse_action_noticeshas_personal_contentRow-scope by default; override via ats-background-checks:view_all_adverse_action_notices / ats-background-checks:manage_all_adverse_action_notices
fcra_summary_of_rights_acknowledgment_edit_scopefcra_summary_of_rights_acknowledgementshas_personal_contentRow-scope by default; override via ats-background-checks:view_all_fcra_summary_of_rights_acknowledgments / ats-background-checks:manage_all_fcra_summary_of_rights_acknowledgments
background_check_edit_scopebackground_checkshas_personal_contentRow-scope by default; override via ats-background-checks:view_all_background_checks / ats-background-checks:manage_all_background_checks
drug_and_health_screening_edit_scopedrug_health_screeningshas_personal_contentRow-scope by default; override via ats-background-checks:view_all_drug_and_health_screenings / ats-background-checks:manage_all_drug_and_health_screenings
pre-adverse_action_notice_edit_scopepre_adverse_action_noticeshas_personal_contentRow-scope by default; override via ats-background-checks:view_all_pre-adverse_action_notices / ats-background-checks:manage_all_pre-adverse_action_notices

9. Roles, RACI, and responsibilities (derived)

Baseline roles, the permission hierarchy, and RACI realization are DERIVED from this scope’s entity-type write tiers + process_raci; none of it is stored in the catalog (the deployer provisions it from this blueprint).

9.1 ATS-BACKGROUND-CHECKS

Baseline roles:

rolebaseline grant
ats-background-checks_viewerats-background-checks:read
ats-background-checks_managerats-background-checks:manage

Permission hierarchy:

permissionincludes
ats-background-checks:adminats-background-checks:manage
ats-background-checks:manageats-background-checks:read
ats-background-checks:adminats-background-checks:hire_candidate
ats-background-checks:adminats-background-checks:flag_do_not_hire
ats-background-checks:adminats-background-checks:approve_offer
ats-background-checks:adminats-background-checks:rescind_offer
ats-background-checks:adminats-background-checks:clear_background_check
ats-background-checks:adminats-background-checks:adjudicate_background_check
ats-background-checks:adminats-background-checks:mark_pre_adverse_dispute_filed
ats-background-checks:adminats-background-checks:clear_pre_adverse_notice
ats-background-checks:adminats-background-checks:escalate_to_final_adverse_action
ats-background-checks:adminats-background-checks:review_failed_screening
ats-background-checks:adminats-background-checks:view_all_candidates
ats-background-checks:adminats-background-checks:manage_all_candidates
ats-background-checks:adminats-background-checks:view_all_offers
ats-background-checks:adminats-background-checks:manage_all_offers
ats-background-checks:adminats-background-checks:view_all_background_check_components
ats-background-checks:adminats-background-checks:manage_all_background_check_components
ats-background-checks:adminats-background-checks:view_all_background_check_disputes
ats-background-checks:adminats-background-checks:manage_all_background_check_disputes
ats-background-checks:adminats-background-checks:view_all_background_check_adjudications
ats-background-checks:adminats-background-checks:manage_all_background_check_adjudications
ats-background-checks:adminats-background-checks:view_all_fcra_disclosures
ats-background-checks:adminats-background-checks:manage_all_fcra_disclosures
ats-background-checks:adminats-background-checks:view_all_adverse_action_notices
ats-background-checks:adminats-background-checks:manage_all_adverse_action_notices
ats-background-checks:adminats-background-checks:view_all_fcra_summary_of_rights_acknowledgments
ats-background-checks:adminats-background-checks:manage_all_fcra_summary_of_rights_acknowledgments
ats-background-checks:adminats-background-checks:view_all_background_checks
ats-background-checks:adminats-background-checks:manage_all_background_checks
ats-background-checks:adminats-background-checks:view_all_drug_and_health_screenings
ats-background-checks:adminats-background-checks:manage_all_drug_and_health_screenings
ats-background-checks:adminats-background-checks:view_all_pre-adverse_action_notices
ats-background-checks:adminats-background-checks:manage_all_pre-adverse_action_notices

Processes wired:

process_keyprocess_namePCF codePCF IDleveldescription
hire_candidateHire candidate7.2.4.3104654Wrapping up the process for hiring candidates. Agree to all hiring terms and conditions. Have the candidate accept and sign the job offer.
draw_up_make_offerDraw up and make offer7.2.4.1104634Compiling job-related information for the selected candidates in order to make up a job. Include information about the job description, reporting relationship, salary, bonus potential, benefits, and vacation allotment.
obtain_candidate_backgroundObtain candidate background information7.2.5.1104604Conducting a background investigation on the candidates with the objective of gathering and compiling criminal, commercial, medical, and financial information.
manage_new_hire_re_hireManage new hire/re-hire7.2.4104433Creating and making job offers to the selected candidates. Fairly negotiate the job offers. Agree on terms with the candidate to complete the hiring process.

RACI realization:

actorkindraciprocess_keyrealization
RECRUITING-RECRUITERpersonaresponsiblehire_candidategrant gates [ats-background-checks:hire_candidate] + the gated entities’ write tier
HIRING-MANAGERpersonaaccountablehire_candidateapproval gate
LEGAL-COMPLIANCE-SPECIALISTpersonainformedhire_candidatenotification side effect (trigger_event / webhook_receiver)
RECRUITING-RECRUITERpersonaresponsibledraw_up_make_offergrant gates [ats-background-checks:approve_offer] + the gated entities’ write tier
HIRING-MANAGERpersonaaccountabledraw_up_make_offerapproval gate
RECRUITING-MANAGERpersonaconsulteddraw_up_make_offeradvisory read grant
RECRUITING-RECRUITERpersonaresponsibleobtain_candidate_backgroundgrant gates [ats-background-checks:clear_background_check] + the gated entities’ write tier
RECRUITING-MANAGERpersonaaccountableobtain_candidate_backgroundapproval gate
LEGAL-COMPLIANCE-SPECIALISTpersonaresponsiblemanage_new_hire_re_hiregrant gates [ats-background-checks:adjudicate_background_check] + the gated entities’ write tier
RECRUITING-MANAGERpersonaaccountablemanage_new_hire_re_hireapproval gate
RECRUITING-COORDINATORpersonaconsultedmanage_new_hire_re_hireblocking consultation state

9.2 Functional ownership and default grants

responsibilitybusiness functiondefault roledefault tier
ownerRecruitingadmin:admin
contributorHuman Resourcesmanage:manage
contributorLegalmanage:manage
consumerFinanceread:read