Expensify App is a cross-platform collaborative expense management platform that combines receipt capture, expense tracking, and shared bill splitting for groups and teams. Designed as an offline-first application, it applies user actions optimistically to local state and queues them for server synchronization, with automatic rollback if the server rejects an operation.
The application is built on a reactive client-side key-value store called Onyx that broadcasts changes to subscribed components and persists data to disk for offline access. Its cross-platform TypeScript and React codebase compiles for web and mobile using platform-specific build configurations, while page layouts and form fields are defined by JSON schemas fetched from the backend, enabling dynamic UI updates without app store releases.
The platform covers expense management across personal and business contexts, including business expense reporting with policy compliance checks, expense reimbursement workflows, personal expense tracking and categorization, receipt capture and digitization via mobile camera, and shared expense splitting among groups. Expenses, messages, and metadata are nested under report objects that define participant context and state machine transitions, providing a unified document hierarchy for all financial interactions.