Security & data protection

Your reservations. Locked down.

Aura holds your guests' personal data, your payment tokens, and your commercial relationship with every OTA. Below is exactly how that data is handled, where it lives, and what we do when something goes wrong.

Last updated: 2 May 2026. Questions? security@aurapms.io

Encryption everywhere

All traffic to Aura is served over TLS 1.2+ with HSTS enforced. Internal traffic between application servers and the database runs over private networks with TLS termination at the edge. Backups and database storage are encrypted at rest using AES-256.

User passwords are hashed with bcrypt (cost factor 12). API tokens are hashed with SHA-256 before storage — we never persist them in plaintext. Session cookies use the standard httpOnly, sameSite=lax, and secure flags.

Tenant data isolation

Aura is a multi-tenant SaaS, but every business table carries a tenantId column and every database query is scoped to the requesting tenant by a Prisma client extension that injects the filter at the ORM layer. Cross-tenant data leaks are blocked at the data access layer, not just at the route handler.

Aura platform staff (us) operate from a separate /platform route tree with explicit impersonation flows. Every impersonation session is recorded in the audit log with the staff member's identity, target tenant, and timestamp.

Hosting & data residency

Production runs on Hetzner dedicated infrastructure in the EU (Helsinki). Data stays within the EU unless your tenant explicitly opts into a region closer to your operations.

We use Hetzner because we wanted full control over the database, the backup schedule, and the network perimeter — not a black-box managed cloud. OS-level security patches are applied within 7 days of release; critical CVEs within 24 hours.

Audit log

Every state-changing action — login, reservation create/edit/cancel, payment recorded, rate change, user invited, permissions modified, statement generated — writes a row to a tamper-evident audit log with the actor, the timestamp, the before/after state, and any metadata about the request context.

Tenant operators see their own audit log at /[tenant]/audit. Aura platform staff see a separate cross-tenant view at /platform/audit.

Payments — PCI scope minimised

Aura never stores raw card numbers. Direct booking payments are tokenised via Stripe Elements (cards never touch our servers). OTA-channel virtual credit cards (Booking.com VCCs) are tokenised by the channel manager's PCI vault and passed to Stripe as PaymentMethod tokens. We hold pm_xxx identifiers, not PAN data.

This keeps Aura within PCI DSS SAQ-A scope: the simplest tier that applies to merchants who fully outsource cardholder data handling. We do not run a card vault.

Backups & recovery

Postgres is backed up nightly with on-site retention for 7 days and off-site retention for 30 days, both encrypted. Point-in-time recovery is available within the retention window. We test restore from backup quarterly.

If a backup needs to be restored to a tenant's account (e.g. operator accidentally deletes data), we can isolate that tenant's tables and restore without affecting other tenants.

GDPR & data subject rights

Your guests' rights, supported by the platform.

Aura is a data processor for guest data on behalf of you, the property operator (the data controller). The standard data-subject rights under GDPR — access, rectification, erasure, restriction, portability — are honoured operator-side: every guest record (reservations, communication, payments, check-in data) is queryable from the guest detail page, and ID-photo retention auto-purges per the property’s configured window.

In progress: one-click guest data export (JSON / CSV) and one-click anonymisation that scrubs PII while preserving aggregate financial records for tax retention. Until that ships, an operator handling a data-subject request can email hello@aurapms.io and we’ll run the export / scrub on the database directly within the GDPR 30-day response window.

A formal Data Processing Agreement (DPA) is available for tenants on request — email hello@aurapms.io.

Responsible disclosure

Found a vulnerability?

Email security@aurapms.io with details. Please don't post it publicly until we've had a chance to fix it. We aim to acknowledge within one working day and to remediate critical issues within seven days.

We don't currently run a paid bug bounty, but we credit researchers who follow responsible disclosure on this page.