Skip to content

Architecture & Design

XBert is a cloud-native SaaS platform that provides AI-powered automation, compliance monitoring, and data quality analysis for accounting firms and their clients. The platform integrates with leading accounting and payroll/HR systems (Xero, QuickBooks, MYOB, FreeAgent, Xero Practice Manager, Xero Payroll, Employment Hero) to deliver automated insights, exception detection, and workflow management.

The platform is built entirely on Microsoft Azure PaaS services, hosted within Australian data centres, and developed and maintained by XBert Pty Ltd employees located in Australia.

A more detailed architecture description — including database topology, instance counts, and operational escalation procedures — is available behind the Full Trust Centre. Request access if you need that level of depth for due diligence.

┌──────────────────────────┐
│ End Users │
│ (Accounting firms & │
│ their clients) │
└────────────┬─────────────┘
│ HTTPS / TLS 1.3
┌─────────────────┴─────────────────┐
│ │
▼ ▼
┌──────────────────┐ ┌────────────────────┐
│ Web & Mobile │ │ Identity (Auth0) │
│ applications │ │ OAuth 2.0 / JWT │
└────────┬─────────┘ └────────────────────┘
┌────────────────────┐
│ Backend APIs │
│ & background │
│ processing │
└────────┬───────────┘
┌────────┴─────────────────┐
▼ ▼
┌──────────────────┐ ┌────────────────────┐
│ Azure SQL, │ │ AI / MCP / Memory │
│ Blob, Redis │ │ services │
│ (Australia) │ │ (Australia) │
└──────────────────┘ └────────────────────┘
AttributeDetail
TechnologyAngular, TypeScript
HostingAzure App Service
PurposePrimary web interface for accounting firms and practice managers
SecurityAuth0 SSO, role-based access, tenant isolation, security headers
Real-timeWebSocket for live notifications and updates
AttributeDetail
TechnologyC#, ASP.NET Core
HostingAzure App Service
AuthenticationJWT tokens issued by Auth0
AuthorisationRole-based access control with multi-tenant isolation
Real-timeAzure SignalR Service for WebSocket communication
API DocumentationAuto-generated Swagger / OpenAPI
AttributeDetail
TechnologyReact Native, TypeScript
PlatformsiOS, Android, web
PurposeClient communication, document capture, and receipt management
AuthenticationAuth0 OAuth 2.0
AttributeDetail
TechnologyC#, .NET, Azure Functions
PurposeBackground job processing, accounting-data ingestion and transformation, alert generation, reporting
ArchitectureQueue-based processing with Azure Service Bus
AttributeDetail
TechnologyC#, .NET, Microsoft Agent Framework
AI ProvidersOpenAI and Anthropic Claude, used under Data Processing Agreements (ephemeral processing, no training on customer data)
MCP GatewaySingle authenticated entry point through which AI agents access customer data via typed tools — see AI Governance & Data Processing
Memory (Mem0)Hosted in Azure Container Apps within Australia

All persistent customer data is held in Azure SQL Database and Azure Blob Storage, hosted in Australian Azure regions. Sub-systems are partitioned across multiple logical databases for separation of concerns (core application data, data warehouse, reporting, AI/intelligence state, billing) and to allow independent scaling and access control.

XBert uses a hierarchical multi-tenant architecture:

  • Connect (Portal): Top-level entity representing an accounting practice
  • Client Tenants: Child entities representing individual client businesses
  • All data queries are automatically filtered by tenant at the ORM level (Entity Framework)
  • Cross-tenant data access is prevented at the application and database layers
ClassificationExamplesProtection
ConfidentialFinancial records, bank transactions, payroll dataEncrypted at rest (AES-256), in transit (TLS 1.3), tenant-isolated
InternalUser profiles, tenant configurations, audit logsEncrypted, role-based access
PublicMarketing content, help documentationStandard web hosting security

XBert runs on Azure PaaS services hosted in Australia Southeast (primary) and Australia East (DR). The platform uses:

  • Azure App Service (web applications and APIs)
  • Azure Functions (background processing and data fabric)
  • Azure SQL Database (relational data)
  • Azure Cache for Redis (application caching and session)
  • Azure SignalR Service (real-time WebSockets)
  • Azure Container Apps (containerised services such as Mem0)
  • Azure Blob Storage (document and log storage)
  • Azure Key Vault (secrets, certificates, encryption keys)
  • Azure Service Bus (async messaging)
  • Azure Monitor, Application Insights, Microsoft Defender for Cloud (observability and security posture)
  • Primary: Australia Southeast (Melbourne)
  • DR: Australia East (Sydney)
  • All customer data remains within Australian Azure regions
  • Database geo-replication configured between primary and DR
User Login
┌─────────────────┐
│ Auth0 (Okta) │ ◄── OAuth 2.0 / OIDC
│ Identity │ MFA enforced
│ Provider │ Brute-force protection
└────────┬────────┘ Anomaly detection
JWT Token (signed)
┌─────────────────┐
│ Backend API │ ◄── Token validation
│ │ Claims-based authorisation
│ │ Tenant isolation filter
└────────┬────────┘
┌─────────────────┐
│ Azure SQL │ ◄── Tenant-scoped data access
│ │ Encrypted at rest (TDE)
└─────────────────┘ Audit logging enabled
LayerStandard
Data in transit (external)TLS 1.3
Data in transit (internal)TLS 1.2+
Data at rest (databases)AES-256 (Azure SQL Transparent Data Encryption)
Data at rest (storage)AES-256 (Azure Storage Service Encryption)
Secrets managementAzure Key Vault, HSM-backed where available
  • Azure Entra ID: Cloud identity for administrative access with MFA and Conditional Access
  • Role-Based Access Control (RBAC): Azure resource access based on job function
  • Principle of Least Privilege across all accounts and service identities
  • IP restrictions on administrative endpoints and database firewalls
  • Key Vault access policies scoped to specific service identities

XBert uses Azure Platform-as-a-Service exclusively. There are no virtual machines or operating systems to manage. Network security is provided by Azure platform controls: HTTPS enforcement, IP restrictions on administrative paths, SQL firewall rules, CORS policies, security headers (HSTS, CSP, X-Frame-Options, X-Content-Type-Options), OWASP-rule WAF, and Azure DDoS Protection.

StageToolPurpose
Source controlGitHub (private repositories)Version control, code ownership
CI/CD orchestrationAzure DevOps + GitHub ActionsBuild, test, deploy automation
Security scanningOWASP tools, DependabotStatic analysis, dependency vulnerabilities
TestingxUnit, Karma/Jasmine, PlaywrightUnit, integration, end-to-end tests
DeploymentAzure App Service deployment slotsZero-downtime slot-swap releases

Production releases use zero-downtime slot swaps, with immediate rollback capability. All production changes flow through automated CI/CD pipelines — no manual deployments.

XBert operates a layered monitoring stack across Azure Monitor, Application Insights, Microsoft Defender for Cloud, Sentry, and external uptime monitoring. Alerts are routed to the engineering team via real-time channels with defined response SLAs by severity. Operational escalation procedures, alert thresholds, and team channel details are documented in the Network Monitoring & Logging Policy (available behind the Full Trust Centre).

10. Business Continuity and Disaster Recovery

Section titled “10. Business Continuity and Disaster Recovery”
MetricTarget
Recovery Time Objective (RTO)< 24 hours
Recovery Point Objective (RPO)< 1 hour (database PITR)
  • Azure SQL geo-replication provides continuous database replication between Australian regions
  • Database backups: 28-day point-in-time recovery + 12-month long-term retention
  • Source code stored in GitHub enables rapid redeployment
  • Annual DR exercises with documented test results

XBert integrates with accounting and payroll systems (Xero, QuickBooks, MYOB, FreeAgent, Xero Payroll, Employment Hero, Xero Practice Manager) over OAuth 2.0 and HTTPS, and with AI providers (OpenAI, Anthropic) under Data Processing Agreements. Identity is provided by Auth0 (Okta); billing and payments are handled by Chargebee and Stripe (both PCI-DSS Level 1).

A full list of sub-processors is published on Sub-processors.

XBert’s architecture and security controls align with:

StandardAlignment
Privacy Act 1988 (Cth)Australian data residency; privacy-by-design; NDB scheme compliance
Australian Privacy PrinciplesData minimisation, purpose limitation, security safeguards
GDPR (where applicable)Data Processing Agreements; breach notification; data subject rights
ISO 27001Information security management practices aligned to Annex A controls
OWASPSecure development lifecycle; Top 10 vulnerability prevention
Essential EightApplication patching, MFA, application control alignment
PCI-DSSNo card data stored; compliant payment providers (Chargebee, Stripe)
VersionDateChanges
1.12026-06-04Public-grade summary; database topology, instance counts, and operational escalation moved behind Full Trust Centre
1.0April 2026Initial creation