Benefits
GSE Compatible
Reports in Fannie Mae and Freddie Mac formats
Major Institutions
Chase, Bank of America, Wells Fargo, and thousands more
Instant Verification
Real-time account balances and transaction history
Up to 2 Years
30-730 days of transaction history, configurable per request
What you get
Account Information
- Account type (checking, savings, money market, CD, investment)
- Verified account holder name and ownership
- Current and available balances
- Routing number and masked account number
Transaction History
- Up to 2 years of transaction history (30-730 days via
days_requested) - Date, description, amount, and type (DEBIT/CREDIT/MEMO)
- Direct deposit identification
- Large deposit threshold flagging at the report level
Summary & Analytics
- 30/60/90-day average balances
- Balance history over time
- Currency and account metadata
Documents
- Bank statements (PDF)
- Account verification letter
- GSE-formatted PDF report
Data coverage
Financial Institutions
Truv connects to major banks and credit unions:| Institution Type | Examples |
|---|---|
| National banks | Chase, Bank of America, Wells Fargo, Citi |
| Regional banks | PNC, US Bank, TD Bank |
| Credit unions | Navy Federal, State Employees CU |
| Online banks | Ally, Marcus, Discover |
| Investment | Fidelity, Charles Schwab, Vanguard |
How to implement
Choose your integration path based on your tech stack:| Path | Code Required | Best For |
|---|---|---|
| LOS/POS Integration | None | Encompass, nCino, Floify, BeSmartee users |
| Truv Dashboard | None | Manual orders, pilot testing |
| Custom Integration | Custom | Full API control, custom borrower portal |
Report structure
When you retrieve VOA data via the API, the response follows the VOA Report schema. Reports are structured withlinks containing accounts, each with balances and transactions.
| Field | Path | Example |
|---|---|---|
| Account type | links[].accounts[].type | CHECKING, SAVINGS |
| Masked number | links[].accounts[].mask | "1234" |
| Account holder | links[].accounts[].owners[].full_name | "John Smith" |
| Current balance | links[].accounts[].balances.current | "15420.50" |
| Available balance | links[].accounts[].balances.available | "15000.00" |
| Direct deposit | links[].accounts[].transactions[].is_direct_deposit | true |
| 30-day avg balance | summary.avg_30 | "14500.00" |
| Deposit threshold | large_deposit_threshold | "1000.00" |
View full response example
View full response example
Large deposit threshold is set at the report level via the
large_deposit_threshold field when creating the VOA report request. Transactions exceeding this threshold are identified for underwriting review. The is_direct_deposit field on transactions helps distinguish payroll deposits from other large transfers.API reference
Orders
Create and manage verification orders
Assets Report
Retrieve asset verification data
Accounts
Financial account details
Bridge Token
Create tokens for Truv Bridge
Best practices
Combine income and assets in one order
Combine income and assets in one order
For purchase loans, request both
income and assets products in a single order. The borrower completes both verifications in one Bridge session, improving completion rates.Handle multiple financial institutions
Handle multiple financial institutions
Borrowers may have accounts at multiple banks. Each institution creates a separate connection (link). Process each connection’s data as it completes via webhooks rather than waiting for all to finish.
Review large deposits for underwriting
Review large deposits for underwriting
The VOA report flags the
large_deposit_threshold at the report level. Review transactions with is_direct_deposit: false that exceed this threshold. These typically require additional documentation for underwriting.Next steps
POS Application
Embed verification in a borrower-facing portal
GSE Testing
Validate Fannie Mae and Freddie Mac compliance
Sample Reports
View example VOA report output
Testing
Test with sample borrower data