Brown Industries Treasury
operator luxury
Household Finance OS
ModeMar 22, 2026
Flagship shelllive preview
Operator session
household finance os · imports

Bring raw transaction history into the house ledger.

Run intake two ways: connect an institution for Plaid-backed sync when the backend is ready, or upload a Rocket-style CSV today for manual backfill. Either way, the goal is one canonical house ledger.

Import totals
Rows seen
16
Transactions created
13
Duplicates
3
Rejected
0
Connect institution
Needs config

Connect with Plaid

Best for ongoing sync. This lane now talks to the real household Plaid endpoints and reports honest backend status instead of shipping a fake happy path.

Config
Missing env: PLAID_CLIENT_ID, PLAID_SECRET, PLAID_ENV, PLAID_PRODUCTS, PLAID_COUNTRY_CODES, PLAID_ACCESS_TOKEN_ENCRYPTION_KEY.
Link token
CTA calls the live /plaid/link-token route for this household, then opens Plaid Link in-browser if the backend returns a real token.
Exchange + sync
On successful Link completion, the UI posts the public token to /plaid/exchange-public-token, stores the connected institution, then immediately kicks /plaid/sync for the first pull.
Plaid items
0
Linked accounts
0
Needs attention
0
Keep Rocket CSV alive as the fallback rail for backfill, unsupported institutions, and one-off cleanup imports.
Upload import batch
Live today

Upload Rocket CSV

Best for manual imports and historical backfill. This endpoint is live and writes real import batches now.

Choose a Rocket CSV to begin
Accepted format: one transaction per row with date, description, amount, and an optional category column.
Ledger account state

What the ledger knows about accounts

Accounts stored
2
Linked accounts
0
Rows linked to accounts
0
Import-only rows
13
Last sync: · Every linked account has a sync timestamp recorded.
Expected shape

Accepted CSV skeleton

The parser looks for date, description, amount, and category-like columns. This sample is enough to get the intake engine moving.

Date,Description,Amount,Category
2026-03-01,NETFLIX,-14.99,Streaming
2026-03-02,STARBUCKS #1234,-6.75,Coffee
2026-03-03,PAYROLL,2800.00,Income
Recommended use

Which rail to use

Plaid
Use for ongoing account sync, and keep linking additional institutions here as needed instead of treating the first bank connection like a one-and-done gate.
Rocket CSV
Use today for one-off uploads, backfill, migration, and any institution you do not want to connect directly.
Batch history
Keep both rails feeding the same import ledger so ops, review queue, and downstream rules stay source-aware without fragmenting the product.
Batch history

Recent import batches

Track what entered the ledger, when it landed, and whether Plaid removals were applied or deferred.
tmpyfm_30rq.csv
Started Mar 22, 4:19 AM · Finished Mar 22, 4:19 AM
Rocket CSV
completed
Import result
1 created · 0 dupes · 0 rejected
Rows scanned
1 rows scanned
tmpp22baeqh.csv
Started Mar 22, 4:19 AM · Finished Mar 22, 4:19 AM
Rocket CSV
completed
Import result
1 created · 0 dupes · 0 rejected
Rows scanned
1 rows scanned
tmp.Oftv7ElglI
Started Mar 22, 3:44 AM · Finished Mar 22, 3:44 AM
Rocket CSV
completed
Import result
2 created · 0 dupes · 0 rejected
Rows scanned
2 rows scanned
tmp.zJ8ZyuLCuz
Started Mar 22, 3:42 AM · Finished Mar 22, 3:42 AM
Rocket CSV
completed
Import result
0 created · 3 dupes · 0 rejected
Rows scanned
3 rows scanned
tmp.Nw5bqbeIx4
Started Mar 20, 6:13 AM · Finished Mar 20, 6:13 AM
Rocket CSV
completed
Import result
3 created · 0 dupes · 0 rejected
Rows scanned
3 rows scanned
tmp.5pygWcMpuE
Started Mar 20, 6:13 AM · Finished Mar 20, 6:13 AM
Rocket CSV
completed
Import result
3 created · 0 dupes · 0 rejected
Rows scanned
3 rows scanned
tmp.Uk3KqN50rA
Started Mar 20, 5:56 AM · Finished Mar 20, 5:56 AM
Rocket CSV
completed
Import result
3 created · 0 dupes · 0 rejected
Rows scanned
3 rows scanned