Overview
The ICSR (Individual Case Safety Report) module is the core of VIGIA’s pharmacovigilance platform, enabling complete management of adverse event reports from initial intake through regulatory submission.Full Lifecycle Tracking
Track cases from intake → evaluation → submission → follow-up
Duplicate Detection
AI-powered duplicate detection with configurable matching algorithms
Multi-Product Support
Manage suspect products, concomitant medications, and product details
Regulatory Export
Generate DIGEMID-compliant reports and E2B XML exports
Key Features
Case Creation and Data Entry
Create comprehensive case reports with structured data collection:Patient Information
Record patient demographics, initials (anonymized), age, sex, weight, and medical history
Product Details
Add suspect products and concomitant medications with complete pharmaceutical data
- Product name, active ingredient (IFA), pharmaceutical form
- Registration number, batch number, administration route
- Dosage, frequency, start/end dates
- Re-challenge and de-challenge information
Adverse Event Description
Document the adverse event with narrative description, dates, severity, and outcome
ICSR Workflow States
Cases progress through defined workflow states:| Estado | Description | Actions Available |
|---|---|---|
| Pendiente | Initial intake, awaiting review | Edit, Assign |
| En progreso | Under evaluation | Add follow-up, Request info |
| Completado | Evaluation complete | Export, Submit |
| Enviado | Submitted to regulatory authority | Track submission |
Duplicate Detection
VIGIA uses advanced algorithms to detect potential duplicate cases:- Patient initials + Date of birth + Event start date + Product (90% match)
- Individual criteria weighted:
- Same initials: +20%
- Same date of birth: +25%
- Same event start date: +20%
- Same suspect product: +20%
- Narrative similarity (NLP): up to +25%
- Score ≥ 80%: Duplicate (red flag)
- Score 45-79%: Review required (yellow flag)
- Score < 45%: Unique (green)
Users can manually override duplicate detection decisions. All overrides are audited.
Product Registry Integration
Automatic enrichment from product catalog:Multi-Event Support
Each ICSR can track multiple adverse events with individual MedDRA coding:API Endpoints
List and Search
q: Search across patient initials, products, reporter namefecha_desde/fecha_hasta: Filter by event start dateorder_by: Sort field (default:id)order_dir:ascordesc
Get Single ICSR
- All related products (suspect + concomitant)
- All follow-up records
- All adverse events with MedDRA coding
- Product catalog enrichment data
Create ICSR
Auto-notifications: When a new ICSR is created, VIGIA automatically sends email notifications to configured stakeholders (Pharmacovigilance team, QA, etc.) based on environment variables:
ICSR_NOTIFY_CARGOS: Job positions to notifyICSR_NOTIFY_AREAS: Departments to notifyICSR_NOTIFY_EMAILS: Additional email addresses
Update ICSR
Export to PDF
backend/app/templates/docs/INFORME_CAUSALIDAD.docx
Delete ICSR (Secure)
- Follow-up messages
- Detail snapshots
- Related records
Follow-up Management
Automatic follow-up for missing information:- Patient: Date of birth, diagnostic, outcome
- Product: Batch number, dates, re-challenge info
- Event: Detailed narrative, lab results
Code References
| Feature | Implementation |
|---|---|
| ICSR Model | backend/app/models/icsr.py:14-254 |
| Router (CRUD) | backend/app/routers/icsr.py:629-1073 |
| Duplicate Detection | backend/app/routers/icsr.py:389-480 |
| Product Enrichment | backend/app/routers/icsr.py:271-302 |
| Auto Follow-up | backend/app/routers/icsr.py:305-358 |
| Notifications | backend/app/routers/icsr.py:213-270 |
Best Practices
Data Quality
- Always provide patient initials (anonymized)
- Use standardized product names
- Include registration numbers when available
- Document narrative in detail
Workflow Management
- Review duplicate alerts before saving
- Complete causality assessment promptly
- Use follow-up system for missing data
- Export to PDF before submission
Related Features
- Adverse Event Reporting - MedDRA coding and causality assessment
- Document Management - Attach supporting documents
- Surveillance - Monitor for signals across cases