VirtualTransaction
One projected (not-yet-real) transaction derived from a recurring stream.
Virtual projections are computed on demand and never persisted, so id is synthetic — it
equals the stable natural key (RTS_{stream_id}_{date}_{sequence}) rather than a database PK.
type VirtualTransaction {
amount: Float!
category: Category
confidence: String
date: Date!
description: String
id: ID!
isRecurring: Boolean!
isVirtual: Boolean!
merchant: Merchant
naturalKey: String!
streamType: String
}
Fields
VirtualTransaction.amount ● Float! non-null scalar
VirtualTransaction.category ● Category object
VirtualTransaction.confidence ● String scalar
Confidence tier: "high", "medium", or "low".
VirtualTransaction.date ● Date! non-null scalar
VirtualTransaction.description ● String scalar
VirtualTransaction.id ● ID! non-null scalar
VirtualTransaction.isRecurring ● Boolean! non-null scalar
VirtualTransaction.isVirtual ● Boolean! non-null scalar
VirtualTransaction.merchant ● Merchant object
VirtualTransaction.naturalKey ● String! non-null scalar
VirtualTransaction.streamType ● String scalar
Stream classification: "merchant", "liability", or "paycheck".
Member Of
CashFlowProjectionResult object