Counterfactual Simulation for Financial Data
Run what-if scenarios on structurally coherent synthetic data. Intervene on any variable in a 23-node causal DAG and observe downstream effects across the financial process chain.
11 Scenario Packs
5 fraud, 2 control failure, 3 macro shock, and 1 operational scenario — each with configurable severity
Invoice Fraud Escalation
FraudDuplicate invoices, shell vendors, amount manipulation with progressive detection evasion
Payroll Ghost Employees
FraudPhantom employees, salary siphoning, and terminated-but-active payroll entries
Expense Reimbursement Abuse
FraudSplit transactions, fictitious receipts, and policy threshold gaming
Revenue Recognition Manipulation
FraudChannel stuffing, bill-and-hold, and premature cutoff scenarios
Related-Party Concealment
FraudHidden relationships, circular transactions, and beneficial ownership obfuscation
Segregation of Duties Failure
ControlSoD violations across approval chains with compensating control gaps
Access Control Breakdown
ControlPrivilege escalation, orphaned accounts, and emergency access abuse
Interest Rate Shock
MacroParallel shift, twist, and inversion scenarios propagated through asset valuations and cash flows
FX Volatility Spike
MacroCurrency pair dislocations with hedging ineffectiveness and translation exposure
Credit Spread Widening
MacroSector-specific spread blowouts with contagion to counterparty credit risk
System Migration Failure
OperationalData mapping errors, cutover timing mismatches, and reconciliation breaks during ERP migration
23-Node Financial Process DAG
Every intervention propagates through a directed acyclic graph with 25 causal edges across 6 categories
Revenue Chain
4 nodesSales orders, invoicing, revenue recognition, cash collection
Procurement Chain
4 nodesPurchase requisition, PO approval, goods receipt, invoice matching
Treasury Chain
4 nodesCash position, FX exposure, hedging, settlement
Credit Risk Chain
4 nodesCounterparty rating, exposure calculation, provision, write-off
Control Chain
4 nodesAuthorization, segregation, reconciliation, reporting
Macro Environment
3 nodesInterest rates, FX rates, credit spreads
Python SDK Example
import vynfi
client = vynfi.Client(api_key="vf_live_...")
# Define a counterfactual scenario
job = client.simulate(
scenario_pack="interest_rate_shock",
base_dataset="manufacturing_ledger",
interventions={
"interest_rate": {"shift": "+200bp", "curve": "parallel"},
"credit_spread": {"sector": "industrials", "widen": "+150bp"},
},
rows=50_000,
propagate=True, # Follow causal DAG
)
# Compare base vs counterfactual
diff = job.compare(metrics=["revenue", "provisions", "cash_flow"])
print(f"Revenue impact: {diff['revenue']['pct_change']:.1f}%")
print(f"Provision increase: {diff['provisions']['pct_change']:.1f}%")Stop guessing — start simulating
Run counterfactual scenarios on causal financial data. 5,000 free credits to start.