Skip to content

Business Continuity Plan

Document ID: PROC-002 Document owner: Jan Marc Castlunger (ISO) Classification: Confidential Version: 1.0 Approved: March 2026 Next review: March 2027 Frameworks: ISO 27001 (A.5.29, A.5.30) | SOC 2 (A1.1, A1.2, A1.3)


1. Purpose

This plan ensures CTW Data Solutions GmbH can continue critical business operations during and after a significant disruption, and recover services within defined timeframes.


2. Scope

All critical services and systems including:

  • Quick-ID API and document verification services (50+ API customers, 99.9% uptime SLA)
  • Azure cloud infrastructure (AKS on Germany West Central; multi-region for non-DACH/non-Italian EU customers)
  • GitHub development platform
  • Google Workspace (email, communications) — including error-image handling (max 7-day retention)
  • Customer-facing support channels
  • Status page: https://app.quick-id.com/health/

3. Business Impact Analysis

Service Criticality RTO RPO Impact of Outage
Quick-ID API (AKS) Critical 4 hours 1 hour Direct revenue loss; 99.9% SLA breach; customer churn
Azure Key Vault Critical 2 hours 0 (no data loss) API authentication failure; service outage
GitHub (source code) High 24 hours 0 (distributed repos) Development halted; no deployments possible
Google Workspace Medium 48 hours 24 hours Internal communication disrupted
ISMS documentation Low 72 hours 24 hours Audit compliance risk

RTO = Recovery Time Objective (max acceptable downtime) RPO = Recovery Point Objective (max acceptable data loss)


4. Disaster Recovery Procedures

4.1 Azure Infrastructure Failure

Step Action Owner Timeline
1 Detect via Azure Monitor / Status page alerts Auto / Jan Marc Castlunger (ISO) Immediate
2 Assess scope: single AKS resource vs region-wide Jan Marc Castlunger (ISO) < 30 min
3 Failover to paired Azure region if region-wide Sebastian Windeck (CTO) < 2 hours
4 Restore from geo-redundant backups if data loss Sebastian Windeck (CTO) < 4 hours
5 Verify service integrity and API functionality Sebastian Windeck (CTO) < 1 hour post-restore
6 Notify affected customers via status page Jan Marc Castlunger (ISO) Ongoing

4.2 Data Loss / Corruption

Step Action Owner Timeline
1 Identify scope of data loss Jan Marc Castlunger (ISO) + Sebastian Windeck (CTO) < 1 hour
2 Stop writes to affected systems Sebastian Windeck (CTO) Immediate
3 Restore from most recent verified backup Sebastian Windeck (CTO) < 4 hours
4 Validate data integrity post-restore Sebastian Windeck (CTO) < 2 hours
5 Document incident and update risk register Jan Marc Castlunger (ISO) < 24 hours

4.3 Complete Service Outage (Catastrophic)

Step Action Owner Timeline
1 Activate emergency communication channel (personal mobile) Jan Marc Castlunger (ISO) Immediate
2 Assess scope and declare disaster Jan Marc Castlunger (ISO) < 1 hour
3 Notify all customers via email and status page Jan Marc Castlunger (ISO) < 2 hours
4 Re-deploy AKS cluster from GitHub via Terraform to new Azure subscription if needed Sebastian Windeck (CTO) < 8 hours
5 Restore data from geo-redundant backups Sebastian Windeck (CTO) < 12 hours
6 Full service validation before resuming production Sebastian Windeck (CTO) + Jan Marc Castlunger (ISO) < 24 hours

5. Backup Strategy

Asset Backup Method Frequency Retention Location Tested
Azure Database for PostgreSQL Automated Azure managed backups Continuous 30 days Geo-redundant (paired region) Semi-annually
AKS + Caddy application logs Rolling log retention Continuous 30 days rolling (extension to 90+ days planned Q2 2026) AKS cluster + Azure File Blob Semi-annually
Azure Key Vault Soft-delete + purge protection Continuous 90 days Geo-redundant Quarterly
Infrastructure config (Terraform) Git version-controlled IaC Every push Indefinite GitHub + local clones Continuous
Source code Git distributed repos Every push Indefinite GitHub + local clones Continuous
Google Workspace Google Vault Continuous 1 year Google Cloud EU Annually
ISMS documentation Git + Cloudflare Pages Every push Indefinite GitHub + Cloudflare Continuous

6. Testing Schedule

Test Frequency Next Date Owner
Backup restore test (Azure) Semi-annually September 2026 Jan Marc Castlunger (ISO)
Failover test (Azure region) Annually March 2027 Sebastian Windeck (CTO)
Communication tree test Annually December 2026 Jan Marc Castlunger (ISO)
Full DR simulation Annually June 2027 Jan Marc Castlunger (ISO)

7. Communication During Disruption

Audience Channel Responsibility Timing
Internal team Mobile phone, personal email Jan Marc Castlunger (ISO) Immediate
API customers Email + API status page Jan Marc Castlunger (ISO) < 2 hours
Regulators (if personal data) Official notification Sebastian Windeck (DPO) Within 72 hours
General public Website status page Jan Marc Castlunger (ISO) As appropriate

8. Review

This plan is reviewed annually, after any significant disruption, or when material changes to infrastructure occur.


Approved by: Jan Marc Castlunger (CEO / ISO), CTW Data Solutions GmbH Date: March 2026