Bringing it with you
Your history arrives intact.
Years of numbers should not be the reason you stay where you are. Bring a file from your bank, or a whole budget from YNAB, and read what will happen before anything is written.

Upload, read, done.
Three moves, and the middle one is the point: nothing enters your household until you have seen it.
Upload the file
A CSV, OFX or JSON export from your bank, or your YNAB budget by file or by connecting the account.
Read what will happen
vokse prepares the import and shows it back: which accounts it found, which payees it recognised, what it will create and what it will skip.
Confirm, and it lands
Only then do the rows arrive, dated and categorised. Send the same file twice and the second one changes nothing.
The shop becomes a name you recognise.
A bank line reads like a receipt printer wrote it. On the way in, vokse turns it into the payee you already know, and remembers the spelling for next time.
One name, many spellings
Your rules start working
Written down, not guessed at

What each source can carry.
Different exports hold different things. This is what actually survives the trip, not what we wish it did.
YNAB
- Categories
- Comes across
- Payees
- Comes across
- Transfers
- Comes across
- Flags
- Comes across
- Receipts
- Does not come across
CSV file
- Categories
- Does not come across
- Payees
- Comes across
- Transfers
- Card payments pair up
- Flags
- Does not come across
- Receipts
- Does not come across
OFX file
- Categories
- Does not come across
- Payees
- Comes across
- Transfers
- Card payments pair up
- Flags
- Does not come across
- Receipts
- Does not come across
JSON file
- Categories
- Does not come across
- Payees
- Comes across
- Transfers
- Card payments pair up
- Flags
- Does not come across
- Receipts
- Does not come across
Bank connection
- Categories
- Through your rules
- Payees
- Comes across
- Transfers
- Card payments pair up
- Flags
- Does not come across
- Receipts
- Does not come across
Receipts are never in an export: you attach them afterwards, from a photo or from the tray.
Nothing lost, nothing doubled.
The awkward parts of a migration, handled before you notice them.
Nothing lands unread
The prepared import is a proposal. Until you accept it, your household is exactly as you left it.
The same file twice is still one import
Rows already in your household are recognised as such instead of arriving again.
Your own rows keep their place
When the bank later sends a payment you had already typed, the two become one row rather than two.
Old pending rows are swept up
A hand-typed row still waiting on a bank-fed account after two weeks is pointed out, not left to rot.
Bring the last few years with you.
Start with a file or a bank connection, read the proposal, and keep the history you already wrote.