This documentation describes the data export format for loading into your data platform. The export includes portfolio snapshots and all financial activities for each export date.
Overview
The data export provides a comprehensive snapshot of user portfolios and all financial activities that occurred on a specific date. This data is designed for data platform integration and enables you to:- Track portfolio valuations over time
- Analyse user financial activity patterns
- Generate reports and analytics
- Build dashboards and visualizations
Export Structure
Each export contains three main sections:Metadata
The metadata section contains export timing and version information:initiatedAt: When the export process started (ISO 8601 timestamp)exportedAt: When the export was completed (ISO 8601 timestamp)schemaVersion: Schema version for compatibility tracking (semantic versioning)
Snapshots
The snapshots array contains end-of-day portfolio state for each user. Each snapshot includes:- User identification:
userIdandemail - Valuation: Portfolio components (cash, savings, holdings, total) with values and currencies
- Portfolio: Individual asset holdings with quantities, prices, and performance metrics
Activity
The activity section contains all financial activities that occurred on the export date, organized by type:- Transactions: All transaction activities (investments, deposits, withdrawals, savings)
- Investment Orders: Buy/sell orders for investment assets
- Savings Orders: Top-ups and withdrawals for savings products
- Automations: Recurring investment and savings automations
- Bank Accounts: Bank account registrations and updates
Data Model
Snapshot Structure
Each snapshot represents a user’s portfolio state at end-of-day:User Information
User Information
Each snapshot includes minimal user identification:
userId: Unique user identifieremail: User’s email address
Valuation Components
Valuation Components
The valuation object contains four portfolio components:
cash: Available cash balance (value + currency)savings: Money Market Funds balance with interest details (value + currency + unrealisedMonthlyInterest + dailyInterest)holdings: Investment holdings value with daily performance (value + currency + upBy/downBy)total: Total portfolio value with daily performance (value + currency + upBy/downBy)
Portfolio Holdings
Portfolio Holdings
The portfolio array contains individual asset holdings:
assetId: Asset identifier (e.g., ‘equities_apple’, ‘etf_vwce’)isin: International Securities Identification Numberquantity: Number of shares/units heldlatestPrice: Price per unit (amount + currency)holdingWeightPercentage: Percentage weight in portfoliodailyReturnPercentage: Daily return percentage for the asset
Activity Structure
All activity items include anowner field (user identifier) to link them to users in snapshots.
Transactions
Transactions
Transaction activities represent all financial movements:Activity Types:
- Investment:
Buy,Sell,Rebalance,Dividends - Cash:
Deposit,Withdraw - Savings:
CashToSavings,SavingsToCash,SavingsInterest
owner: User identifieractivityType: Type of activitycreatedAt,updatedAt: Timestampsstatus: Transaction statuscurrency: ISO 4217 currency codeamount: Amount in eurosbankAccount: Bank account ID (only for Deposit/Withdraw)details: Optional details (savingsProductId, orders array)
Investment Orders
Investment Orders
Investment orders represent buy/sell orders for investment assets:Fields:
id,owner,transactionIdisin,assetId: Asset identificationside: Buy or Sellstatus: Pending, Matched, Rejected, Settled, Cancelledquantity: Number of shares/unitsconsideration: Amounts (amount, amountSubmitted, originalAmount)fees: Fee breakdown (fx, commission, executionSpread, realtimeExecution)unitPrice: Price per unit at settlementexchangeRate: Exchange rate used (if applicable)createdAt,updatedAt,filledAt,marketSettledAt: Timestamps
Savings Orders
Savings Orders
Savings orders represent top-ups and withdrawals for savings products:Fields:
id,ownerside: “buy” (top-up) or “sell” (withdrawal)status: Pending, Matched, Rejected, Settled, Cancelledcurrency: ISO 4217 currency codeamount: Amount in eurossavingsProductId: Savings product identifier (e.g., ‘mmf_dist_eur’)createdAt,updatedAt,settledAt: Timestamps
Automations
Automations
Automations represent recurring investment or savings top-ups:Fields:
id,ownercategory: TopUpAutomation or SavingsTopUpAutomationstatus: Active, Inactive, Pendingfrequency: Monthly (currently only option)dayOfMonth: Day of month for executioncurrency,amount: Recurring amountallocationMethod: Holdings allocation (for TopUpAutomation)savingsProduct: Savings product (for SavingsTopUpAutomation)mandate: Direct debit mandate detailscreatedAt,updatedAt: Timestamps
Bank Accounts
Bank Accounts
Bank accounts represent registered bank accounts:Fields:
id,owneraccountName: Account label/nameaccountNumber: IBAN format account numberbankName: Bank name (optional)holderName: Account holder name (optional)status: pending_verification, active, disabledcreatedAt,updatedAt: Timestamps
Data Formats
Amounts
All monetary amounts are stored in euros (major currency units), not cents. Examples:- €500.00 is represented as
500.00 - €1,250.50 is represented as
1250.50
Currency Codes
All currencies use ISO 4217 three-letter codes:EUR- EuroGBP- British PoundUSD- US Dollar
Dates and Timestamps
- Dates: ISO 8601 date format (
YYYY-MM-DD) - Timestamps: ISO 8601 datetime format (
YYYY-MM-DDTHH:mm:ss.sssZ)
Status Values
Transaction Status
Transaction Status
PendingTopUp- Waiting for top-up to settlePendingReinvestment- Waiting for reinvestmentPendingDeposit- Waiting for depositPending- Transaction pendingCancelled- Transaction cancelledRejected- Transaction rejectedSettled- Transaction settled
Order Status
Order Status
Pending- Order created but not matchedMatched- Order matched but not settledSettled- Order fully settledRejected- Order rejectedCancelled- Order cancelled
Bank Account Status
Bank Account Status
pending_verification- Account pending verificationactive- Account active and verifieddisabled- Account disabled
Automation Status
Automation Status
Active- Automation is activeInactive- Automation is inactivePending- Automation is pending activation
Example Export
View Complete Export Example
View Complete Export Example
JSON Schema
The complete JSON Schema definition is available for download and validation:Download Schema
Download the complete JSON Schema file for data exports. Use this schema to validate exported data or integrate with your data platform tools.
Schema Versioning
Schema versions follow semantic versioning (MAJOR.MINOR.PATCH):- MAJOR: Breaking changes (structure changes, removed fields)
- MINOR: New optional fields added
- PATCH: Documentation updates, clarifications
metadata.schemaVersion field indicates the schema version used for each export. Monitor this field to handle schema evolution in your data platform.