Part 1: Security & NC3 Compliance

PSI-LU, GOVCERT.LU, vulnerability management, encryption, incident response

Q1 Describe your vulnerability management program, including tools, frequency of scans, and remediation timelines.
PSI-LU Compliant NC3 Aligned

Our vulnerability management program implements continuous automated scanning using industry-standard tools integrated into our CI/CD pipeline:

  • Tools: OWASP ZAP, Snyk, npm audit
  • Frequency: Every code commit triggers dependency vulnerability checks against the National Vulnerability Database
  • Penetration Testing: Quarterly by independent certified testers

Remediation Timelines (CVSS v4 scoring):

SeverityCVSS ScoreRemediation
Critical≥9.024 hours
High7.0-8.97 days
Medium4.0-6.930 days
Low<4.090 days

Results documented in Security Register, available for GOVCERT.LU audit. Coordinated Vulnerability Disclosure policy aligned with NC3 guidelines.

Q2 How does your Next.js/Payload CMS stack handle known framework vulnerabilities?

Next.js and Payload CMS are actively maintained open-source projects with transparent security advisories:

  • Subscribed to security bulletins from Vercel (Next.js) and Payload CMS GitHub
  • package-lock.json ensures reproducible builds
  • Dependabot automatically creates PRs for security patches
  • Payload CMS 3.x TypeScript-first architecture eliminates vulnerability classes:
    • SQL injection prevented through Drizzle ORM parameterized queries
    • XSS prevented through React's automatic escaping
  • Weekly npm audit with zero tolerance for high/critical findings in production
Q3 Define your patching policy for operating systems, frameworks, and dependencies.
ISO 27001 A.12.6.1
CategoryTimelineProcess
Critical security (zero-day)24-48 hoursEmergency change procedure
OS security updates7 daysStaged rollout: dev→staging→production
Framework updates (Next.js, Node.js)14 daysFull regression testing
Non-security dependencies30 daysMonthly maintenance window

All patches tested in isolated staging environment mirroring production. Dedicated patch management log compliant with ISO 27001, available for ANSSI review.

Q4 Describe authentication mechanisms for administrators and end-users, including 2FA implementation.
PSI-LU Compliant eIDAS Ready

Administrator Access (Payload CMS admin panel):

  • Mandatory TOTP-based 2FA (RFC 6238) compatible with Google Authenticator, Authy, Microsoft Authenticator
  • QR code setup for easy onboarding
  • Session timeout: 15 minutes idle, 8 hours maximum
  • IP allowlisting for admin panel access (optional)
  • Failed login lockout after 5 attempts with exponential backoff
  • All admin actions logged with immutable audit trail

End-User Access (BusinessTransfer.lu users):

  • LuxTrust Mobile integration as primary authentication (eIDAS-compliant QES capability)
  • GouvID support for Luxembourg electronic identity card authentication
  • eIDAS cross-border support for EU citizens with national eID
  • Fallback: email/password with optional TOTP 2FA for users without LuxTrust

Note: LuxTrust integration requires signing a contract with LuxTrust S.A. - we will assist in the onboarding process.

Q5 How will you integrate with LuxTrust and Luxembourg national authentication systems?

We implement LuxTrust integration via official SAML 2.0/OIDC Connect protocols following eIDAS Regulation (EU) No. 910/2014:

  • LuxTrust Mobile authentication with QES (Qualified Electronic Signature)
  • eID card authentication via LuxTrust middleware
  • GouvID mobile authentication for PC/tablet sessions
  • Token lifecycle management respecting LuxTrust certificate validity periods

Security: Only authenticated user reference (matricule hash) stored in PostgreSQL, never raw credentials. Session tokens are JWT-based with RS256 signing, 1-hour expiry, and secure HttpOnly cookies.

Q6 Describe your logging infrastructure, log retention policies, and SIEM capabilities.
PSI-LU Chapter 8 NCSS IV

Log Categories Captured:

  • Security events: Authentication attempts, authorization failures, privilege escalations
  • Administrative actions: All CRUD operations with actor identification
  • User activity: Listing creation, contact exchanges, profile modifications
  • System events: Application errors, performance metrics, infrastructure health

Technical Implementation:

  • Structured JSON logging with correlation IDs
  • PostgreSQL audit tables with updated_by, created_at timestamps
  • Tamper-evident storage
  • Retention: Security logs 5 years (CNPD aligned), operational logs 1 year

SIEM Readiness:

  • CEF (Common Event Format) export for government SIEM integration
  • Real-time alerting on suspicious patterns
  • Log format compliant with NCSS IV requirements
Q8 Specify encryption standards for data at rest and in transit.

Data in Transit:

  • TLS 1.3 mandatory (TLS 1.2 minimum with forward secrecy)
  • HSTS enforced with 2-year max-age
  • Certificate: ECDSA P-384 or RSA 4096-bit from EU-qualified CA
  • Perfect Forward Secrecy using ECDHE
  • OCSP stapling enabled

Data at Rest (PostgreSQL):

  • AES-256-GCM transparent data encryption
  • Application-layer encryption for sensitive fields using libsodium (XChaCha20-Poly1305)
  • Encryption keys stored in HSM or dedicated secrets manager
  • Key rotation: annual, immediate upon suspected compromise

Backup Encryption:

  • AES-256 with separate key from production
  • Backup keys in geographically separate location within Luxembourg
Q10 Describe your incident response plan, including notification timelines to GOVCERT.LU.
NCSS IV Framework NIS2 Ready

Phase 1 - Detection & Triage (0-4 hours):

  • Automated alerting triggers incident assessment
  • Severity classification: Critical, High, Medium, Low
  • Incident commander appointed

Phase 2 - Containment & Notification (4-24 hours):

  • GOVCERT.LU notified within 24 hours for Critical/High incidents (NIS2)
  • Evidence preservation initiated
  • Affected systems isolated if necessary

Phase 3 - Eradication & Recovery (24-72 hours):

  • Root cause analysis
  • System restoration from verified clean state

Phase 4 - Post-Incident (72+ hours):

  • Lessons learned documentation
  • Final report to GOVCERT.LU

GDPR: CNPD notified within 72 hours for personal data breaches (Article 33).

Part 2: Data Sovereignty & Infrastructure

Hosting, backups, GDPR, CNPD compliance, subprocessors

Q12 Specify exact hosting locations, including production, staging, and disaster recovery environments.
100% Luxembourg Tier IV Certified

All infrastructure hosted exclusively within Luxembourg:

EnvironmentProviderLocationCertification
ProductionLuxConnect S.A.Bettembourg DC1Tier IV
StagingLuxConnect S.A.Bettembourg DC1Tier IV
Disaster RecoveryLuxConnect S.A.Bissen DC2Tier IV
BackupsLuxConnect S.A.Roost DC3Tier III+

Why LuxConnect:

  • Government preferred: Manages infrastructure for CTIE (Centre des Technologies de l'Information de l'État)
  • Tier IV certified: 99.995% uptime guarantee, fully redundant
  • 100% Luxembourg owned: State-backed company, no foreign shareholders
  • ISO 27001 certified for information security management
  • Green energy: 100% renewable energy powered

Legal jurisdiction: All hosting agreements subject exclusively to Luxembourg law, courts of Luxembourg City as exclusive venue. No data leaves Luxembourg territory at any point in processing, backup, or disaster recovery.

Q14 How does your PostgreSQL self-hosted architecture ensure data never leaves Luxembourg?

PostgreSQL runs on dedicated virtual machines within Luxembourg datacenter with strict controls:

  • Network isolation: Database servers on private VLAN with no public IP addresses
  • Firewall rules: Ingress allowed only from application servers within same datacenter
  • Connection encryption: SSL/TLS required for all database connections
  • No cloud-managed databases: We explicitly avoid AWS RDS, Azure SQL, Google Cloud SQL to prevent any data routing through non-Luxembourg infrastructure
  • Replication: PostgreSQL streaming replication to DR site uses encrypted private network links entirely within Luxembourg
  • Backup destination: pg_dump outputs encrypted and stored only on Luxembourg-based storage

Technical architecture diagram available demonstrating complete data flow containment.

Q15 Describe backup strategy, including locations, frequencies, and tested recovery procedures.

Backup Strategy (3-2-1-1 rule):

  • 3 copies of data (production + 2 backups)
  • 2 different media types (SSD production, HDD backup archive)
  • 1 offsite (within Luxembourg, different datacenter)
  • 1 immutable (write-once storage for ransomware protection)
Data TypeFrequencyRetention
Full databaseDaily 02:00 CET30 days
Incremental/WALContinuous (streaming)7 days
Weekly archivesSunday 03:00 CET12 months
Monthly archives1st of month7 years

Recovery Testing:

  • Monthly automated restoration to test environment
  • Quarterly full DR failover exercise
  • RTO: 4 hours (production restoration)
  • RPO: 1 hour (maximum data loss)
Q17 How do you prevent vendor lock-in, and what is the exit strategy?

No Vendor Lock-in by Design:

  • Payload CMS: Open-source (MIT license), self-hosted, no SaaS dependency
  • Next.js: Open-source (MIT license), standard Node.js deployment
  • PostgreSQL: Open-source, industry-standard SQL
  • Local-First: Data sync based on open CRDTs, not proprietary services

Exit Strategy Documentation:

  1. Complete database schema export (pg_dump, SQL standard)
  2. All CMS content exportable as JSON/Markdown
  3. Media assets as standard files (no proprietary format)
  4. Full source code handover (TypeScript, documented)
  5. Infrastructure-as-Code (Terraform/Ansible)
  6. 30-day transition support included in contract

Data portability guarantee: Successor vendor can replicate complete system within 10 business days.

Q19 Confirm appointment of Data Protection Officer and describe data protection governance.
GDPR Article 37 CNPD Registered

DPO Appointment:

  • DPO appointed and contactable at dpo@[contractor].lu
  • DPO registered with CNPD as required
  • DPO independence guaranteed per Article 38
  • Annual data protection training for all team members

Data Protection Governance:

  • Privacy by Design implemented per Article 25
  • DPIA completed for BusinessTransfer.lu operations
  • ROPA maintained per Article 30
  • Data Subject Rights procedures documented
Q22 List all third-party services and subprocessors with data access.

Minimal subprocessor footprint by design:

SubprocessorServiceData AccessLocation
LuxConnect S.A.Infrastructure / HostingFull (encrypted at rest)Luxembourg
LuxTrust S.A.User AuthenticationAuth tokens onlyLuxembourg
POST Luxembourg / Mailjet EUTransactional emailName, email addressLuxembourg / EU

No US-based subprocessors. No data processing outside EU. Self-hosted analytics via Matomo (Luxembourg instance) or Plausible EU.

Part 3: Accessibility & Standards

RAWeb 1, WCAG 2.1 AA, Renow compliance, multilingual support

Q24 Demonstrate familiarity with Renow framework and compliance approach.
Renow Compliant 136 Criteria

Our development process fully integrates Renow methodology (renow.public.lu):

Renow Phases Adopted:

  1. Vision: Stakeholder alignment, strategic fit with government web ecosystem
  2. Information Architecture: Card sorting, user journey mapping, content audit
  3. Prototyping: Figma wireframes tested with real users
  4. Final Product: Accessibility built-in, not bolted-on

Quality Gates:

  • Design mockups: Accessibility review before development
  • Pre-launch: Full RAWeb audit by certified auditor
  • Post-launch: Each new feature audited before publication
Q26 Confirm target accessibility compliance level and testing methodology.

Compliance target: Full RAWeb 1 compliance (136 criteria), which includes and exceeds WCAG 2.1 Level AA.

PhaseTesting TypeTools/Method
DevelopmentAutomatedaxe-core, WAVE, Lighthouse CI
IntegrationSemi-automatedPa11y CI in deployment pipeline
Pre-launchManual expert auditThird-party (Idéance, Atalan)
Post-launchContinuous monitoringAutomated weekly scans
User testingReal usersScreen reader users, mobility impaired

Screen readers tested: NVDA (Windows), VoiceOver (macOS/iOS), TalkBack (Android)

Browsers tested: Chrome, Firefox, Safari, Edge (2 most recent versions per Renow)

Q29 What is your remediation plan if post-launch audits identify accessibility issues?
Law of 28 May 2019
Issue SeverityTimelineProcess
Blocker (prevents task completion)48 hoursEmergency fix
Critical (major functionality impact)5 business daysPriority sprint
Major (significant inconvenience)15 business daysScheduled fix
Minor (cosmetic, workaround exists)30 business daysMaintenance window

Accessibility declaration: Updated within 5 business days of any compliance status change, listing non-accessible content with explanations per legal requirements.

Q30 Confirm multilingual support and implementation approach.

Full multilingual support per Luxembourg administrative language law (24 February 1984):

Languages Supported:

  1. French - Primary administrative language (default)
  2. German - Full translation
  3. Luxembourgish (Lëtzebuergesch) - Full translation
  4. English - Full translation (international business users)

Technical Implementation:

  • Next.js internationalized routing (App Router i18n)
  • Payload CMS localized fields for all content
  • URL structure: /fr/, /de/, /lb/, /en/
  • HTML lang attribute correctly set per page
  • hreflang meta tags for SEO

Part 4: Technical Architecture & Interoperability

NIF compliance, API design, performance SLAs, technology stack

Q33 Demonstrate alignment with the National Interoperability Framework (NIF) 48 recommendations.
NIF PrincipleImplementation
OpennessOpen-source stack (Next.js MIT, Payload MIT, PostgreSQL)
TransparencyOpen API specification, published data schemas
ReuseComponent library shareable, API for ecosystem integration
Technical neutralityStandard formats (JSON, REST), no proprietary dependencies
User-centredUX research-driven design, user testing throughout
AccessibilityRAWeb compliance
Security/PrivacyGDPR by design, encryption, audit trails
MultilingualismFour-language support

Interoperability layer: REST API with OpenAPI 3.0 enables future integration with MyGuichet.lu, Luxembourg Business Registers, and other government systems.

Q35 What are your committed SLA metrics for availability and performance?

Availability Commitment:

MetricTarget
Uptime99.9% (max ~8.7 hours downtime/year)
Planned maintenanceSunday 02:00-06:00 CET (excluded from SLA)
Unplanned downtime notificationWithin 15 minutes

Performance Targets:

MetricTarget
Time to First Byte (TTFB)< 200ms (95th percentile)
Largest Contentful Paint (LCP)< 2.5s
First Input Delay (FID)< 100ms
Cumulative Layout Shift (CLS)< 0.1
API response time< 500ms (95th percentile)
Q37 Justify the selection of Next.js, Payload CMS, and PostgreSQL for this government project.

Next.js Selection:

  • Enterprise adoption: Used by governments worldwide (Netherlands, UK)
  • Security: Active security team at Vercel, rapid CVE response
  • Accessibility: Built-in a11y linting, React ecosystem tools
  • Performance: Static generation for government performance requirements

Payload CMS Selection:

  • Open-source: MIT license, no vendor lock-in
  • Self-hosted: Complete data sovereignty
  • TypeScript: Type-safe codebase reduces bugs
  • Active development: Regular releases, growing community

PostgreSQL Selection:

  • Government standard: Used by Luxembourg government systems
  • Mature: 25+ years production use, proven reliability
  • Compliance: Extensive audit logging capabilities

Local-First Architecture:

  • Offline capability for connectivity issues
  • Data sovereignty: processed locally before sync
  • Resilience: graceful degradation if server unavailable

Infrastructure & Third-Party Costs

Estimated annual costs for hosting, authentication, and services

COSTS What are the estimated infrastructure and third-party service costs?

Note: These are estimates based on market research. Final costs require direct quotes from providers.

1. Hosting - LuxConnect S.A. (Luxembourg)

OptionSpecsEst. MonthlyEst. Annual
Option A: Managed VPS8 vCPU, 32GB RAM, 500GB NVMe€200-350€2,400-4,200
Option B: Dedicated ServerXeon, 64GB RAM, 1TB NVMe€400-600€4,800-7,200
Option C: Half Rack ColocationOwn hardware, 3kW power€800-1,200€9,600-14,400

Recommendation: Option A or B sufficient for initial launch. Contact: luxconnect.lu

2. LuxTrust Integration (Authentication)

ItemCost TypeEstimated Cost
Integration SetupOne-time€5,000 - €15,000
Annual License/SubscriptionPer year€2,000 - €5,000
Per Authentication (if volume-based)Per auth€0.05 - €0.15

Note: Pricing not public - requires direct contact with LuxTrust S.A. at questions@luxtrust.lu or +352 24 550 550

3. SMS for OTP Fallback (Twilio)

DestinationCost per SMS1,000 SMS/month5,000 SMS/month
Luxembourg€0.068 ($0.074)€68/month€340/month
EU Average€0.05-0.08€50-80/month€250-400/month

Alternative: POST Luxembourg SMS Gateway (contact for business rates)

4. Transactional Email (Mailjet EU)

PlanEmails/monthMonthly Cost
Free6,000€0
Essential15,000€16
Premium50,000€25-50

GDPR compliant, EU-hosted. mailjet.com/pricing

5. Domain & SSL

ItemAnnual Cost
Domain businesstransfer.lu€30-50 (via DNS.lu)
SSL Certificate (EV/OV)€100-300 (DigiCert, GlobalSign)
SSL Certificate (Let's Encrypt)€0 (free, automated)

Total Estimated Annual Costs

ScenarioAnnual Estimate
Minimum (VPS + basic services)€5,000 - €8,000
Recommended (Dedicated + LuxTrust)€12,000 - €20,000
Enterprise (Full redundancy)€25,000 - €40,000

Note: These costs are for infrastructure only. Does not include development, maintenance, or support contracts.

Part 5: Project Management & Documentation

Methodology, QA process, deliverables

Q39 Describe your project methodology and quality assurance process.

Methodology: Agile/Scrum adapted for government requirements:

  • 2-week sprints with defined deliverables
  • Sprint reviews with government stakeholders
  • Definition of Done includes accessibility check, security review, documentation update
  • Change control board for scope changes

Quality Assurance:

  • Code review required for all changes (minimum 2 reviewers)
  • Automated testing: unit tests (>80% coverage), integration tests, E2E tests (Playwright)
  • Accessibility testing at each sprint
  • Security testing before each release
  • Performance regression testing
Q40 What documentation will you deliver?
DocumentContent
Technical Architecture DocumentSystem design, data flows, integrations
API SpecificationOpenAPI 3.0 + interactive docs
Operations ManualDeployment, monitoring, troubleshooting
Security DocumentationControls, procedures, incident response
User ManualEnd-user guide (multilingual)
Admin ManualPayload CMS administration guide
Accessibility Conformance ReportRAWeb audit results + VPAT
Source CodeFully commented, TypeScript
Infrastructure-as-CodeTerraform/Ansible for reproducible deployment
Data ModelERD + field-level documentation

All documentation in French with English technical appendices; delivered in editable formats (Markdown/DOCX).