Use TruvOrder to embed an Order, a multi-connection verification workflow that supports multiple data sources and product types.
import 'package:flutter/widgets.dart';import 'package:truv_flutter/truv_event.dart';import 'package:truv_flutter/truv_flutter.dart';class OrderScreen extends StatelessWidget { final String bridgeToken; const OrderScreen({super.key, required this.bridgeToken}); @override Widget build(BuildContext context) { return TruvOrder( bridgeToken: bridgeToken, onOrderEvent: (TruvOrderBridgeEvent event) { switch (event) { case TruvOrderBridgeLoad(): // Order page finished loading break; case TruvOrderBridgeClose(): // User closed the Order break; case TruvOrderBridgeSuccess(): // A task within the Order completed successfully. // The Order is still open at this point — it may show // a success screen or a self-certification screen // depending on the configuration. break; case TruvOrderBridgeCompleted(): // The entire Order is complete (all tasks finished) break; } }, onBridgeEvent: (TruvEventEvent event) { // Fired when the user interacts with the Bridge for a // sub-order (task) within the Order. // Equivalent to TruvBridge onEvent. }, ); }}
Use TruvBridge for single-connection flows like Direct Deposit Switch and Paycheck Linked Lending.
import 'package:flutter/widgets.dart';import 'package:truv_flutter/truv_event.dart';import 'package:truv_flutter/truv_flutter.dart';class BridgeScreen extends StatelessWidget { final String bridgeToken; const BridgeScreen({super.key, required this.bridgeToken}); @override Widget build(BuildContext context) { return TruvBridge( bridgeToken: bridgeToken, onEvent: (TruvEvent event) { switch (event) { case TruvEventLoad(): // Bridge finished loading break; case TruvEventClose(): // User closed the Bridge break; case TruvEventSuccess(:final publicToken, :final metadata): // Called when the Bridge closes after a successful task. // publicToken — use this to retrieve data server-side. // metadata.taskId — the task identifier. break; case TruvEventEvent(:final eventType, :final payload): // Lifecycle event — see Bridge Events for all types. break; case TruvEventError(): // An error occurred in the Bridge break; } }, ); }}
See Bridge Events for all event types, payloads, and error codes.