Security

How we protect your data

AuditPlatform handles sensitive participant and staff records on behalf of NDIS providers. This page describes our current security practices honestly — including what we do well and where the responsibilities lie with our subprocessors.

Questions? Email hello@auditplatform.app

Encryption

In transit: All connections to AuditPlatform are encrypted using TLS. HTTPS is enforced on all endpoints — plain HTTP connections are automatically redirected.

At rest: Data stored in our database is encrypted at rest by Neon, our database provider. Encryption is managed at the infrastructure level and is not dependent on application-layer configuration.

Authentication & access control

Authentication is handled by Clerk, a dedicated identity provider. We do not store passwords. Clerk manages credential hashing, session tokens, device tracking, and brute-force protection.

Multi-factor authentication (MFA): Supported for all accounts via authenticator app or SMS. We encourage coordinators and administrators to enable MFA.

Role-based access:AuditPlatform enforces role separation between support staff, coordinators, and administrators. Staff can only access their own assigned shifts and submit notes — they cannot view other participants' records or organisation-wide data.

Organisation isolation:All database queries are scoped to an organisation ID. It is not possible for one organisation's users to access another organisation's data through the application.

Audit logging

Every change to participant records, staff records, rosters, incidents, and shift notes is written to an immutable audit log. Each entry captures:

  • The user who made the change (Clerk user ID)
  • A precise timestamp
  • The action type (create, update, delete)
  • The before and after values of changed fields

Audit log entries cannot be modified or deleted through the application interface. This log is the primary evidence source for NDIS auditors.

Application security

SQL injection: All database queries are executed via Drizzle ORM with parameterised queries. Raw SQL execution from user input is not used.

CSRF protection: Session validation is managed by Clerk on all authenticated API routes.

Rate limiting:Authentication endpoints are rate-limited by Clerk. API routes operate within Vercel's infrastructure-level protections.

Dependencies: We keep third-party dependencies up to date and monitor for known vulnerabilities.

AuditPlatform Intelligence

Optional AuditPlatform Intelligence features — shift-note drafting, note quality scoring, policy narrative polishing, compliance insights, and the in-app assistant — send the text you provide (and, for the assistant, retrieved knowledge snippets) to a language model. Voice sessions also send audio to a speech provider.

Text generation is routed through Vercel AI Gateway. The active model is one of Anthropic Claude, OpenAI GPT, or xAI Grok, configured for the platform rather than per organisation. Knowledge search uses Voyage embeddings. Voice uses Deepgram for speech-to-text and text-to-speech (Cartesia may be used for speech synthesis instead).

That data is processed under the relevant provider's API data processing agreement and is not used to train their models. Original staff observations and any Intelligence-generated draft remain stored in AuditPlatform for audit transparency.

Do not put sensitive personal information in Intelligence inputs beyond what is needed for the note, policy, or question.

Subprocessors

We use the following third-party services to operate the platform. Each operates under its own security programme and data processing agreements.

ProviderPurposeRegionSecurity info
NeonPostgreSQL database hostingap-southeast-2 (Sydney)neon.tech/security
VercelApplication hosting, CDN, Blob, and AI GatewayCompute may be multi-region; Blob and CDN run at the edgevercel.com/security
ClerkUser authentication and session managementSee Clerk DPA; AU and US options. Sessions are globally distributedclerk.com/security
AnthropicAI text generation (Claude models)Inference in transit; not stored for traininganthropic.com/security
OpenAIAI text generation (GPT models)Inference in transit; not stored for trainingopenai.com/security
xAIAI text generation (Grok models)Inference in transit; not stored for trainingx.ai/security
Voyage AIKnowledge-base embeddings for the in-app assistantInference in transit; not stored for trainingwww.voyageai.com/privacy
DeepgramSpeech-to-text and text-to-speech for the voice assistantInference in transit; not stored for trainingdeepgram.com/data-security
StripePayment processing and billing — no participant PHIStripe's payment regions; card data is not participant recordsstripe.com/security
PendoIn-app guidance and product analyticsSee Pendo DPAwww.pendo.io/data-privacy-security/
SentryApplication error monitoringSee Sentry DPAsentry.io/security/

Data retention & deletion

Organisation data is retained for the duration of your active subscription. NDIS providers are generally required to keep participant and service records for seven years under the NDIS Practice Standards — your export includes everything needed to meet this obligation independently of your AuditPlatform subscription.

On account cancellation, data is retained for 30 days to allow export. After that period, data is scheduled for deletion unless retention is required by law.

You can export your complete data at any time from the dashboard — participants, staff, rosters, shift notes, incidents, and audit logs — in CSV and PDF formats.

Responsible disclosure

If you discover a security vulnerability in AuditPlatform, please report it to us privately before any public disclosure. We ask for reasonable time to investigate and remediate before the issue is made public.

Email: security@auditplatform.app

We will acknowledge receipt within two business days and keep you informed of our progress. We do not pursue legal action against researchers who act in good faith.

Residency, certifications, and Enterprise DPA

Participant and provider records in Postgres are stored on Neon in ap-southeast-2 (Sydney). Application compute on Vercel may run in more than one region; Blob storage and the CDN are edge-distributed. Clerk authentication offers AU and US residency options — see the Clerk DPA; sessions are globally distributed. Stripe processes payments only and does not receive participant PHI. Language-model and speech providers (Anthropic, OpenAI, xAI, Voyage, Deepgram) receive inference payloads in transit and do not store them for training under their API terms.

AuditPlatform is not ISO 27001 certified or SOC 2 attested. Both are on the procurement roadmap. We do not claim either today.

Enterprise customers can request a data processing agreement (DPA) and a security questionnaire. Email hello@auditplatform.app.

No internet-based system is completely secure. While we take reasonable steps to protect your data, you are responsible for maintaining appropriate access controls within your organisation — including offboarding departing staff promptly.