Skip to content

Data Encryption Policy

This policy defines the encryption standards and practices used by XBert Pty Ltd to protect data at rest, in transit, and during processing. It ensures the confidentiality and integrity of customer financial data and personal information across all XBert systems.

This policy covers all data handled by XBert systems, classified per the XBert data classification scheme:

ClassificationExamplesEncryption Requirement
ConfidentialCustomer financial records, bank transactions, payroll dataEncrypted at rest (AES-256), in transit (TLS 1.3), tenant-isolated
InternalUser profiles, tenant configurations, audit logsEncrypted at rest and in transit, role-based access
PublicMarketing content, help documentationStandard web hosting security

This includes:

  • Customer accounting and financial data (Confidential)
  • User identity and authentication data (Internal)
  • Application secrets, keys, and certificates (Confidential)
  • Backup and disaster recovery data (inherits source classification)
  • Data transmitted to and from third-party services (encrypted per standards below)
  • Internal communications and operational data (Internal)
Protection LayerStandardImplementation
Data in transit (external)TLS 1.3, 256-bitSSL certificates on all public endpoints
Data in transit (internal)TLS 1.2+Azure service-to-service encryption
Data at rest (databases)AES-256Azure SQL Transparent Data Encryption (TDE)
Data at rest (storage)AES-256Azure Storage Service Encryption (SSE)
Data at rest (backups)AES-256Azure-managed encryption for all backup stores
Secrets and keysRSA-2048+ / AES-256Azure Key Vault
Password hashingbcryptVia Auth0 identity provider
  • All client-facing endpoints enforce TLS 1.3 with 256-bit encryption
  • SSL certificates are managed and auto-renewed via Azure App Service
  • SSL scanning tools are used to verify that only current recommended cipher suites are active
  • HTTP Strict Transport Security (HSTS) headers are enforced
  • Legacy protocols (TLS 1.0, TLS 1.1, SSL 3.0) are disabled
  • All Azure PaaS service-to-service communication uses TLS 1.2 or higher
  • Azure Virtual Network service endpoints are used where available to keep traffic within the Azure backbone
  • API calls between XBert microservices (App Service, Functions, SQL) are encrypted in transit
IntegrationProtocolNotes
Xero APIOAuth 2.0 over TLS 1.2+Read/write accounting data
QuickBooks APIOAuth 2.0 over TLS 1.2+Read/write accounting data
MYOB APIOAuth 2.0 over TLS 1.2+Read/write accounting data
FreeAgent APIOAuth 2.0 over TLS 1.2+Read/write accounting data
Xero Payroll APIOAuth 2.0 over TLS 1.2+Payroll data (Australia and New Zealand)
Employment Hero APIAPI over TLS 1.2+Payroll and HR data integration
XPM APIOAuth 2.0 over TLS 1.2+Practice management data
Auth0TLS 1.2+Identity and authentication
ChargebeeTLS 1.2+Subscription management
StripeTLS 1.2+Payment processing (PCI-DSS Level 1)
OpenAI APITLS 1.2+AI processing (ephemeral, per DPA)
Anthropic Claude APITLS 1.2+AI processing (ephemeral, per DPA)
  • Azure SQL Database: Transparent Data Encryption (TDE) enabled on all databases
    • Encryption algorithm: AES-256
    • Key management: Azure-managed service keys (with migration path to customer-managed keys via Azure Key Vault in progress)
    • Applies to: data files, log files, and temp databases
  • Azure Blob Storage: Storage Service Encryption (SSE) enabled
    • Encryption algorithm: AES-256
    • Applies to all blobs, queues, tables, and files
    • Includes backup storage and log archives
  • All Azure SQL backups (PITR and long-term retention) inherit TDE encryption
  • Azure Blob Storage backups are encrypted via SSE
  • Geo-replicated copies maintain the same encryption standard
  • All application secrets, connection strings, API keys, and certificates are stored in Azure Key Vault
  • Access to Key Vault is controlled via Azure Entra ID (formerly Azure AD) with RBAC
  • Key Vault access requires MFA and is restricted by Conditional Access policies
Key TypeRotation FrequencyMethod
SSL/TLS certificatesAuto-renewed before expiryAzure App Service managed
Application secretsAnnually or on compromiseManual rotation via Key Vault
Database encryption keysAzure-managed rotationAutomatic (TDE service-managed)
OAuth client secretsAnnuallyManual rotation with zero-downtime deployment
Auth0 signing keysPer Auth0 rotation scheduleAuth0 managed
  • Principle of least privilege applied to all key access
  • Key Vault access logged and auditable via Azure Monitor
  • Emergency access procedures documented for key recovery scenarios
  • No encryption keys are stored in source code, configuration files, or environment variables outside of Key Vault
  • User passwords are never stored by XBert directly
  • Auth0 handles password storage using bcrypt hashing with salt
  • OAuth 2.0 tokens are used for session management (JWT with RS256 signing)
  • Credit card details are never stored by XBert - transmitted directly to PCI-DSS Level 1 compliant providers (Chargebee/Stripe) over TLS
  • Financial data sent to OpenAI API and Anthropic Claude API for AI processing is transmitted over TLS 1.2+
  • Data is ephemeral and not persisted by AI providers per their respective Data Processing Agreements
  • AI memory data (Mem0 service) is encrypted at rest in Azure Container Apps storage
  • No customer financial data is used for AI model training
  • Storing encryption keys alongside encrypted data
  • Using deprecated algorithms (DES, 3DES, MD5, SHA-1 for security purposes, RC4)
  • Disabling TDE or SSE on any production data store
  • Transmitting sensitive data over unencrypted channels
  • Hard-coding secrets or keys in application source code
  • Storing customer data on local developer machines without encryption

This policy supports compliance with:

  • Privacy Act 1988 (Cth) - APP 11 (security of personal information)
  • PCI-DSS requirements (via compliant payment providers)
  • GDPR Article 32 (security of processing) where applicable
  • ISO 27001 Annex A.10 (cryptography)
  • Azure compliance certifications (ISO 20000-1:2011, CSA STAR)
  • SSL scanning tools continuously verify cipher suite compliance on public endpoints
  • Azure Security Centre monitors encryption posture across all resources
  • Key Vault access is logged and reviewed as part of security monitoring
  • Non-compliant resources are flagged and remediated within 48 hours
VersionDateChanges
1.0April 2026Initial creation