Meta: Learn how to add a new vertical to QAtrial by creating vertical templates, mapping the domain in the registry, and selecting the right risk taxonomy.


Why Verticals Matter

A pharmaceutical company validating a manufacturing execution system and a medical device company performing design verification are both doing regulated quality work. They may even use the same terminology — requirements, tests, risk assessments, CAPA. But the regulatory frameworks they operate under are fundamentally different.

QAtrial – How to Add a New Vertical
QAtrial · Developer Guide
How to Add a
New Vertical
Each vertical encodes the regulatory reality of a specific GxP domain — the applicable standards, risk taxonomy, template requirements and tests, and terminology. Adding a vertical means your domain expertise becomes a reusable asset for every QAtrial user in that industry, automatically composing with all 37 countries, 15 modules, and 7 project types.
10
Industry verticals defined — 8 with full templates
5
Risk taxonomies: ISO 14971, ICH Q9, GAMP 5, FMEA, Generic
7
Steps: common.ts → registry → taxonomy → sub-templates → overlays → i18n → test
Current Verticals
10 Defined — Status, Risk Taxonomy, Primary Standards
Vertical ID Display Name Risk Taxonomy Primary Standards Templates
pharma Pharmaceuticals ICH Q9 21 CFR 210/211 · ICH Q7/Q10 · EU GMP Annex 11 ✓ Done
biotech Biotechnology ICH Q9 21 CFR Part 600 · ICH Q5A–Q5E ✓ Done
medical_devices Medical Devices ISO 14971 QMSR/21 CFR 820 · ISO 13485 · IEC 62304 · ISO 14971 ✓ Done
cro CRO / Clinical Research ICH Q9 ICH E6(R3) · 21 CFR Part 58 ✓ Done
clinical_lab Clinical Laboratories FMEA CLIA · CAP · ISO 15189 ✓ Done
software_it Software & IT (GAMP/CSV) GAMP 5 21 CFR Part 11 · EU Annex 11 · GAMP 5 2nd Ed ✓ Done
aerospace Aerospace FMEA AS9100D · DO-178C · DO-254 · EASA Part 21 ✓ Done
logistics Logistics / GDP FMEA WHO GDP · EU GDP · FDA DSCSA ✓ Done
cosmetics Cosmetics / Chemical Generic ISO 22716 · OECD GLP · REACH Open →
chemical_env Chemical / Environmental FMEA REACH · CLP · TSCA · ISO 14001 · ISO 45001 Open →
The Process
Seven Steps to Add a Vertical
1
Create Common Template
verticals/{id}/common.ts
2
Register the Vertical
templates/registry.ts
3
Choose Risk Taxonomy
registry.ts riskTaxonomy field
4
Add Sub-Templates
software.ts · quality-system.ts
Optional
5
Country Overlays
regions/us/overlays/{id}.ts
Optional
6
Add Translations
locales/{lang}/common.json
7
Test with Wizard
npm run dev → Step 2 → Preview
Directory Structure — Vertical Templates vs Country Overlays
src/templates/verticals/ — domain-agnostic content
pharma/
common.ts # core pharma reqs + tests
software.ts # pharma + software type
quality-system.ts
medical_devices/
common.ts
food/ # ← new vertical example
common.ts # HACCP, ISO 22000, FSSC
quality-system.ts # FSMS documentation
software.ts # traceability sys validation
src/templates/regions/ — country-specific depth
us/overlays/
pharma.ts # 21 CFR 210/211
food.ts # FDA FSMA, HARPC, produce
eu/overlays/
food.ts # EU Reg 852/2004, 178/2002
jp/overlays/
food.ts # Japan Food Sanitation Act
Step 1 Deep Dive
VerticalTemplateSet Structure — Food Safety Example
src/templates/verticals/food/common.ts
import type { VerticalTemplateSet } from ‘../../types’;
 
export const templateSet: VerticalTemplateSet = {
verticalId: ‘food’,
requirements: [
{
templateId: ‘food-haccp-plan’,
source: ‘verticals/food/common’,
title: ‘HACCP Plan Implementation’,
description: ‘A documented HACCP plan shall be established per Codex Alimentarius HACCP principles, including hazard analysis, CCPs, critical limits, monitoring, and corrective actions.’,
category: ‘Food Safety’,
tags: [‘haccp’, ‘food-safety’, ‘ccp’],
riskLevel: ‘critical’,
regulatoryRef: ‘Codex Alimentarius HACCP / ISO 22000 §7’,
},
// food-iso22000-fsms, food-traceability-recall,
// food-allergen-management, food-fssc-certification…
],
tests: [
{
templateId: ‘food-test-haccp-ccp-monitoring’,
linkedReqTags: [‘haccp’, ‘ccp’],
},
],
};
Interface: VerticalTemplateSet is identical in structure to CountryTemplateSet — same requirement and test fields, same tag-based linking mechanism.
templateId
Pattern: {vertical}-{topic}. Stable ID for deduplication when vertical + country templates compose together.
source
Origin for tracing. verticals/food/common or verticals/food/software.
tags + linkedReqTags
Tags on requirements and linkedReqTags on tests must match for auto-linking. Plan your tag taxonomy across all requirements and tests before writing.
riskLevel
critical · high · medium · low. Not everything is critical — risk inflation reduces signal value. Allergen = high. FSMS documentation = medium.
regulatoryRef
Specific clause citation. ISO 22000 §7.4 — not “applicable food safety standard.”
Scale
Write 5–8 requirements and 3–5 tests per common.ts. Enough to be useful; not so many that the project is overwhelmed with template content.
Step 2 + 3
Registry Entry — verticalId, riskTaxonomy, primaryStandards
verticalId
Lowercase, underscore-separated. Must match the directory name: foodverticals/food/
nameKey
i18n key. Pattern: verticals.food.name
focusKey
Short description shown in the wizard. verticals.food.focus
riskTaxonomy
One of: iso14971 · ichQ9 · fmea · gamp5 · generic. Food = fmea
icon
Emoji displayed in the wizard Step 2. Food: 🍽️ or 🌾
primaryStandards
String array. Used as context for AI features and displayed in wizard.
VERTICAL_REGISTRY entry — food
{
verticalId: ‘food’,
nameKey: ‘verticals.food.name’,
focusKey: ‘verticals.food.focus’,
riskTaxonomy: ‘fmea’,
icon: ‘🍽️’,
primaryStandards: [
‘ISO 22000:2018’,
‘FSSC 22000 v6’,
‘HACCP (Codex Alimentarius)’,
‘FDA FSMA’
],
}
Step 3 — Risk Taxonomy Selection
Five Taxonomies — Choose Based on Domain
iso14971
ISO 14971
Patient safety focus. Severity: negligible injury → death. Risk = severity × likelihood.
→ medical_devices · diagnostics
ichQ9
ICH Q9
Product quality and patient safety. Severity rated by impact on quality outcomes.
→ pharma · biotech · cro
fmea
FMEA
Three-factor: severity × occurrence × detectability = RPN. Standard for process failure analysis.
→ aerospace · logistics · clinical_lab · food
gamp5
GAMP 5
Software impact on GxP processes. Categories 1/3/4/5 by system complexity and risk.
→ software_it · computerized systems
generic
Generic
Basic severity × likelihood. No domain-specific severity categories. Fallback for any vertical without a specific framework.
→ cosmetics · chemical_env
Food vertical → FMEA. HACCP hazard analysis is structurally identical to FMEA: assess severity (severity of harm if hazard occurs), occurrence (probability that hazard will occur), and detectability (likelihood hazard will be caught before it causes harm). The three-factor FMEA model maps directly to food safety risk assessment practice.
Template Composition
How Vertical Templates Compose with Country + Module Templates
Country
Country Base + Overlay
US base.ts + US/food.ts
+
Vertical
Vertical Common + Sub-type
food/common.ts + food/software.ts
+
Modules
Selected Quality Modules
HACCP · CAPA · Traceability
+
Project Type
Type-specific content
Software / QMS / Validation
Result
Project pre-populated with correct templates
Auto-deduplicated via templateId
Your vertical automatically works with all 37 countries, all 15 quality modules, and all 7 project types. The template composition system handles deduplication using templateId — if the same requirement would be added twice (from country + vertical overlap), the duplicate is silently dropped.
Template Quality
Four Rules for Useful Vertical Templates
📌 Cite clause numbers — not just standard names
“The system shall comply with ISO 22000”
“The system shall implement hazard analysis procedures per ISO 22000 §7.4, including hazard identification, assessment, and selection of control measures”
🔗 Plan your tag taxonomy before writing
tags: [“food”, “safety”, “compliance”] — too generic to create meaningful test-to-req linkages
tags: [“haccp”, “ccp”] on requirement; linkedReqTags: [“haccp”, “ccp”] on tests — specific enough to auto-link
⚠️ Set realistic risk levels — not everything is critical
All 8 requirements tagged “critical” — risk inflation reduces signal value of the risk matrix
Allergen failures → high · HACCP plan missing → critical · FSMS documentation → medium · audit scheduling → low
Write testable requirements — not vague obligations
Requirement: “HACCP compliance.” Test: “Verify HACCP.”
Requirement: “System shall record CCP monitoring results with timestamp, operator ID, and measured value.” Test: “Confirm all three fields present in CCP log for each batch.”
“Adding a vertical means your domain expertise becomes a reusable asset for every QAtrial user in that industry. The template composition system ensures it works with all 37 countries, all 15 modules, and all 7 project types automatically.”
💡
Open an issue first. Describe the vertical you want to add — community can confirm it’s not already in progress.
🔀
Highest-impact contribution. One vertical implementation unlocks an entire industry domain for all QAtrial users worldwide.
$ git clone github.com/MeyerThorsten/QAtrial
$ npm install && npm run dev
$ mkdir src/templates/verticals/food
$ # create common.ts → submit PR

Pharmaceutical GMP requires ICH Q7 compliance, process validation under 21 CFR 211, and quality risk management per ICH Q9. Medical device quality systems require ISO 13485 compliance, design controls under the QMSR (formerly 21 CFR 820), and risk management per ISO 14971. The risk taxonomies differ. The submission formats differ. The audit expectations differ.

QAtrial handles this through industry verticals. Each vertical encodes the regulatory reality of a specific GxP domain: the applicable standards, the risk taxonomy, the template requirements and tests, and the terminology. The same platform serves all verticals, but the content adapts to the domain.

This means the pharma team sees requirements referencing ICH Q7 and 21 CFR 211, while the device team sees requirements referencing ISO 13485 and ISO 14971 — all within the same application, using the same dashboard, audit trail, and reporting engine.


Rapidesign Electro-Logic Symbol Template, 1 Each (R308)

Rapidesign Electro-Logic Symbol Template, 1 Each (R308)

Features various sizes of AND/OR gate and inverter symbols

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Current Verticals

QAtrial defines 10 industry verticals:

Vertical IDDisplay NameRisk TaxonomyPrimary Standards
pharmaPharmaceuticalsICH Q9FDA 21 CFR 210/211, ICH Q7/Q10, EU GMP Annex 11
biotechBiotechnologyICH Q921 CFR Part 600, ICH Q5A-E
medical_devicesMedical DevicesISO 14971QMSR/21 CFR 820, ISO 13485, IEC 62304, ISO 14971
croCRO / Clinical ResearchICH Q9ICH E6(R3), 21 CFR Part 58
clinical_labClinical LaboratoriesFMEACLIA, CAP, ISO 15189
logisticsLogistics / GDPFMEAWHO GDP, EU GDP, FDA DSCSA
software_itSoftware & IT (GAMP/CSV)GAMP 521 CFR Part 11, EU Annex 11, GAMP 5 2nd Ed
cosmeticsCosmetics / ChemicalGenericISO 22716, OECD GLP, REACH
aerospaceAerospaceFMEAAS9100D, DO-178C, DO-254, EASA Part 21
chemical_envChemical / EnvironmentalFMEAREACH, CLP, TSCA, ISO 14001, ISO 45001

Of these 10, 8 have base templates with requirements and tests. Adding templates for the remaining verticals — or adding an entirely new vertical — is a valuable contribution.


Executive Regulatory & Compliance Dashboards: Templates, Scorecards & Workbooks for Regulatory Compliance Program Management: Templates, Scorecards & ... (Executive Project Governance Series)

Executive Regulatory & Compliance Dashboards: Templates, Scorecards & Workbooks for Regulatory Compliance Program Management: Templates, Scorecards & … (Executive Project Governance Series)

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Where Vertical Templates Live

Vertical templates are TypeScript files organized under src/templates/verticals/:

src/templates/verticals/
  pharma/
    common.ts          # Core pharma requirements and tests
    software.ts        # Pharma + software project type specifics
    quality-system.ts  # Pharma + QMS project type specifics
  medical_devices/
    common.ts          # Core device requirements and tests
  software_it/
    common.ts          # GAMP 5 / CSV requirements and tests
  ...

Each vertical has a common.ts file that contains the core requirements and tests for that domain. Optional additional files provide project-type-specific content (e.g., software.ts adds requirements specific to software projects within that vertical).


Computer Systems Validation: Quality Assurance, Risk Management, and Regulatory Compliance for Pharmaceutical and Healthcare Companies

Computer Systems Validation: Quality Assurance, Risk Management, and Regulatory Compliance for Pharmaceutical and Healthcare Companies

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Step 1: Create the Vertical Common Template

Create a new directory and file at src/templates/verticals/{id}/common.ts.

Real example: Adding a “food” vertical for food safety

The food industry operates under standards including ISO 22000 (Food Safety Management Systems), HACCP (Hazard Analysis and Critical Control Points), FSSC 22000 (Food Safety System Certification), and FSMA (FDA Food Safety Modernization Act for US-based operations).

// src/templates/verticals/food/common.ts

import type { VerticalTemplateSet } from '../../types';

export const templateSet: VerticalTemplateSet = {
  verticalId: 'food',
  requirements: [
    {
      templateId: 'food-haccp-plan',
      source: 'verticals/food/common',
      title: 'HACCP Plan Implementation',
      description: 'A documented HACCP plan shall be established, implemented, and maintained in accordance with Codex Alimentarius HACCP principles. The plan shall include hazard analysis, identification of critical control points (CCPs), establishment of critical limits, monitoring procedures, corrective actions, verification procedures, and record-keeping.',
      category: 'Food Safety',
      tags: ['haccp', 'food-safety', 'hazard-analysis', 'ccp'],
      riskLevel: 'critical',
      regulatoryRef: 'Codex Alimentarius HACCP / ISO 22000 §7',
    },
    {
      templateId: 'food-iso22000-fsms',
      source: 'verticals/food/common',
      title: 'ISO 22000 Food Safety Management System',
      description: 'The organization shall establish, implement, maintain, and update a food safety management system (FSMS) in accordance with ISO 22000:2018. The FSMS shall address organizational context, leadership, planning, support, operation, performance evaluation, and improvement.',
      category: 'Management System',
      tags: ['iso-22000', 'fsms', 'food-safety-management'],
      riskLevel: 'high',
      regulatoryRef: 'ISO 22000:2018',
    },
    {
      templateId: 'food-prerequisite-programs',
      source: 'verticals/food/common',
      title: 'Prerequisite Programs (PRPs)',
      description: 'Prerequisite programs shall be established to maintain the hygienic conditions necessary for food safety. PRPs shall address facility layout, equipment maintenance, pest control, cleaning and sanitation, personnel hygiene, water and air quality, waste management, and supplier control, in accordance with ISO/TS 22002-1.',
      category: 'Food Safety',
      tags: ['prp', 'prerequisite-programs', 'hygiene', 'sanitation'],
      riskLevel: 'high',
      regulatoryRef: 'ISO/TS 22002-1',
    },
    {
      templateId: 'food-traceability-recall',
      source: 'verticals/food/common',
      title: 'Traceability and Recall Procedures',
      description: 'The organization shall establish and maintain a traceability system that enables identification of incoming materials, processing steps, and distribution of finished products. A documented recall procedure shall enable effective withdrawal of products from the market within regulatory timeframes.',
      category: 'Traceability',
      tags: ['traceability', 'recall', 'withdrawal', 'lot-tracking'],
      riskLevel: 'critical',
      regulatoryRef: 'ISO 22000 §8.3 / EU Regulation 178/2002 Art. 18',
    },
    {
      templateId: 'food-allergen-management',
      source: 'verticals/food/common',
      title: 'Allergen Management Program',
      description: 'An allergen management program shall be established to prevent unintended allergen presence in food products. The program shall address allergen identification, segregation, cleaning validation, labeling verification, and cross-contact prevention.',
      category: 'Food Safety',
      tags: ['allergen', 'allergen-management', 'cross-contact', 'labeling'],
      riskLevel: 'high',
      regulatoryRef: 'FSSC 22000 Additional Requirement 2.5.6',
    },
    {
      templateId: 'food-fssc-certification',
      source: 'verticals/food/common',
      title: 'FSSC 22000 Certification Requirements',
      description: 'The food safety management system shall meet FSSC 22000 certification requirements, including ISO 22000, sector-specific PRPs (ISO/TS 22002-1 or equivalent), and FSSC additional requirements covering food defense, food fraud prevention, allergen management, and environmental monitoring.',
      category: 'Certification',
      tags: ['fssc-22000', 'certification', 'food-defense', 'food-fraud'],
      riskLevel: 'medium',
      regulatoryRef: 'FSSC 22000 v6',
    },
  ],
  tests: [
    {
      templateId: 'food-test-haccp-ccp-monitoring',
      source: 'verticals/food/common',
      title: 'Verify HACCP Critical Control Point Monitoring',
      description: 'Confirm that all identified critical control points (CCPs) have defined critical limits, monitoring procedures at prescribed frequencies, and documented corrective actions when critical limits are exceeded. Verify monitoring records are complete and current.',
      category: 'Food Safety',
      tags: ['haccp', 'ccp', 'monitoring'],
      linkedReqTags: ['haccp', 'ccp'],
    },
    {
      templateId: 'food-test-traceability-exercise',
      source: 'verticals/food/common',
      title: 'Verify Traceability System Effectiveness',
      description: 'Conduct a mock traceability exercise: select a finished product lot, trace backward to all incoming materials and processing steps, and trace forward to all distribution points. Confirm the exercise can be completed within the regulatory timeframe (typically 4 hours).',
      category: 'Traceability',
      tags: ['traceability', 'recall', 'mock-recall'],
      linkedReqTags: ['traceability', 'recall'],
    },
    {
      templateId: 'food-test-allergen-controls',
      source: 'verticals/food/common',
      title: 'Verify Allergen Control Measures',
      description: 'Confirm that allergen segregation controls are in place, cleaning validation for allergen removal has been performed and documented, and product labels accurately reflect allergen content including precautionary statements.',
      category: 'Food Safety',
      tags: ['allergen', 'cleaning-validation'],
      linkedReqTags: ['allergen', 'allergen-management'],
    },
    {
      templateId: 'food-test-prp-implementation',
      source: 'verticals/food/common',
      title: 'Verify Prerequisite Program Implementation',
      description: 'Audit a sample of prerequisite programs (pest control, sanitation, personnel hygiene) to confirm they are documented, implemented, monitored, and verified. Check records for the past 90 days.',
      category: 'Food Safety',
      tags: ['prp', 'sanitation', 'hygiene'],
      linkedReqTags: ['prp', 'prerequisite-programs'],
    },
  ],
};

export default templateSet;

Pharmaceutical Computer Systems Validation: Quality Assurance, Risk Management and Regulatory Compliance (Drugs and the Pharmaceutical Sciences)

Pharmaceutical Computer Systems Validation: Quality Assurance, Risk Management and Regulatory Compliance (Drugs and the Pharmaceutical Sciences)

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Step 2: Add to VERTICAL_DEFINITIONS

In src/templates/registry.ts, add an entry to the VERTICAL_DEFINITIONS array:

{
  id: 'food',
  name: 'verticals.food.name',
  focusKey: 'verticals.food.focus',
  icon: 'UtensilsCrossed',  // Lucide icon name
  riskTaxonomy: 'fmea',
  primaryStandards: [
    'ISO 22000:2018 (FSMS)',
    'Codex Alimentarius HACCP',
    'FSSC 22000',
    'ISO/TS 22002-1 (PRPs)',
  ],
},

Fields explained:

  • id: A unique lowercase identifier. This is used in file paths, code references, and the IndustryVertical type.
  • name: The i18n translation key for the vertical’s display name.
  • focusKey: The i18n key for a short description of the vertical’s regulatory focus (shown in the wizard).
  • icon: A Lucide React icon name displayed next to the vertical in the wizard. Browse available icons at lucide.dev.
  • riskTaxonomy: Which risk taxonomy to use for this vertical (see Step 3).
  • primaryStandards: The main regulatory standards for this vertical. Displayed in the wizard and used as context for AI features.

Step 3: Choose the Right Risk Taxonomy

The risk taxonomy determines how risk assessments are framed — the labels for severity levels, the scoring approach, and the regulatory context for AI risk classification. Choose the taxonomy that best matches your vertical’s domain:

TaxonomyIDBest ForSeverity Focus
ISO 14971iso14971Medical devices, diagnosticsPatient safety: negligible injury through death
ICH Q9ichQ9Pharmaceuticals, biotech, clinical researchProduct quality and patient safety
FMEAfmeaAerospace, manufacturing, food, logisticsProcess failure: severity x occurrence x detectability
GAMP 5gamp5Software, computerized systemsSystem impact on GxP processes
GenericgenericGeneral quality management, cosmeticsBasic severity x likelihood

For the food vertical example, FMEA is the appropriate choice because food safety risk assessment traditionally uses severity, occurrence, and detectability — the same three factors used in FMEA. HACCP hazard analysis is structurally similar to FMEA.

The taxonomy affects:

  • How the risk matrix displays severity and likelihood labels
  • What context the AI uses when performing risk classification
  • What safety classes are available (ISO 14971 has Class I/II/III; GAMP 5 has Categories 1/3/4/5)

Step 4: Add Project-Type Sub-Templates (Optional)

If the vertical has meaningfully different requirements for different project types, create additional template files:

src/templates/verticals/food/quality-system.ts   # QMS project: food safety manual, FSMS documentation
src/templates/verticals/food/compliance.ts        # Compliance/audit project: GFSI benchmarking, audit prep
src/templates/verticals/food/software.ts          # Software project: food traceability system validation

Each sub-template follows the same VerticalTemplateSet interface. The template composer loads the common.ts file for every project in the vertical, plus the project-type-specific file if the user selects that project type in the wizard (Step 4).

Sub-templates are optional. For many verticals, the common.ts file provides sufficient coverage. Add sub-templates only when the project type introduces genuinely different regulatory requirements (not just slightly different emphasis).


Step 5: Add Country Overlays Where Needed

If the vertical has country-specific regulatory requirements, add overlay files in the country template directories:

src/templates/regions/us/overlays/food.ts    # FDA FSMA specifics for US food safety
src/templates/regions/eu/overlays/food.ts    # EU Regulation 852/2004, 178/2002
src/templates/regions/jp/overlays/food.ts    # Japan Food Sanitation Act

For the food vertical:

  • The US overlay would include FDA Food Safety Modernization Act (FSMA) requirements: preventive controls, HARPC (Hazard Analysis and Risk-Based Preventive Controls), supply chain program, and FSMA produce safety rule.
  • The EU overlay would include EU Regulation 852/2004 (General hygiene), Regulation 178/2002 (General food law), and EFSA guidance.
  • The Japan overlay would include the Food Sanitation Act and MHLW food safety requirements.

Country overlays are loaded when the user selects both the country and the vertical. They add jurisdiction-specific depth on top of the vertical’s common template.


Step 6: Add Translation Keys

In public/locales/en/common.json and all other locale files, add the vertical’s display name and focus description:

{
  "verticals": {
    "food": {
      "name": "Food Safety",
      "focus": "HACCP, ISO 22000, FSSC 22000, FSMA"
    }
  }
}

For German (public/locales/de/common.json):

{
  "verticals": {
    "food": {
      "name": "Lebensmittelsicherheit",
      "focus": "HACCP, ISO 22000, FSSC 22000, FSMA"
    }
  }
}

At minimum, add the English translation. Other languages will fall back to English if a translation is missing.


Step 7: Test with the Wizard

After creating all files and updating the registry:

  1. Run npm run dev
  2. Click “New Project” to open the setup wizard
  3. Select any country — verify your new vertical appears in Step 2 if the country’s availableVerticals includes it
  4. Select the new vertical — verify the icon, name, and focus text display correctly
  5. Continue through the wizard to Step 6 (Preview)
  6. Verify that the vertical’s common requirements and tests appear
  7. If you selected a country with an overlay for this vertical, verify the overlay requirements also appear
  8. Create the project and verify all requirements have correct metadata: titles, descriptions, tags, risk levels, regulatory references

Also verify that:

  • The risk taxonomy is correct (check the Risk dashboard for proper severity/likelihood labels)
  • AI risk classification uses the right taxonomy context
  • Tags are creating proper test-to-requirement linkages

Tips for Writing Useful Templates

Be specific — cite clause numbers. “The system shall comply with ISO 22000” is not useful as a template requirement. “The system shall implement hazard analysis procedures per ISO 22000 §7.4, including hazard identification, hazard assessment, and selection of control measures” is useful.

Use proper tags for linking. Tags are the mechanism by which tests are automatically linked to requirements during project creation. A requirement tagged ['haccp', 'ccp'] will link to a test with linkedReqTags: ['haccp', 'ccp']. Plan your tag taxonomy before writing templates: use consistent, specific tags across requirements and tests.

Set realistic risk levels. Not everything is “critical.” A requirement about documenting allergen management is “high” risk because allergen failures can cause serious harm. A requirement about maintaining FSMS documentation is “medium” because it supports the system without directly preventing food safety incidents. Risk level inflation reduces the signal value of the risk matrix.

Write 5-8 requirements and 3-5 tests per common template. This provides enough substance to be useful without overwhelming a new project with template content. Users can always add more requirements manually.


Final Takeaway

Adding a vertical to QAtrial means encoding a regulated industry’s standards, risk approach, and quality expectations into reusable templates. The process involves creating a common.ts template with requirements and tests, registering the vertical with the appropriate risk taxonomy and primary standards, optionally adding project-type sub-templates and country overlays, and wiring translations.

The template composition system ensures your vertical works automatically with all 37 countries, all 15 quality modules, and all 7 project types. Your domain expertise becomes a reusable asset for every QAtrial user in that industry.


  • How to Add a New Country — How country templates compose with vertical templates
  • Risk Management — How risk taxonomies affect risk assessment, scoring, and AI classification
  • How to Contribute to QAtrial — Overview of all contribution types and where to start

Open a vertical proposal and implement it. Visit github.com/MeyerThorsten/QAtrial, open an issue describing the vertical you want to add, then implement it following the steps in this guide. Vertical templates are among the most impactful contributions because they unlock an entire industry domain for all QAtrial users.

You May Also Like

How QAtrial Supports Audit Readiness Every Day

Meta: Discover how QAtrial helps teams stay audit-ready every day through traceability,…

Connecting Quality Events to Your Workflow: QAtrial’s Webhook System

Quality events do not happen in isolation. A failed test needs to…

A Practical Guide to Electronic Signatures in QAtrial

Meta: Understand how electronic signatures work in QAtrial, including identity verification, review…

How to Validate QAtrial: A Guide to the Built-In IQ/OQ/PQ Package

Every regulated company that adopts a computerized system for quality management faces…