Skip to main content

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