Imports
Getting a ledger in
VLDTION reads delimited text, Excel workbooks and BKMVDATA uniform-structure files. The format is detected from the file content itself, and every file is treated as untrusted input from the first byte.
Supported files
- .csv, .tsv and .txt. Delimiter, encoding and header row are detected. UTF-8 first, then windows-1255 for older Hebrew exports.
- .xlsx and .xlsm. Sheets, shared strings and date formats are read directly from the file.
- Up to 250,000 rows and 64 MB. Larger exports should be split by period.
Formulas are not evaluated
Column mapping
Suggestions come from a fixed dictionary of English and Hebrew header spellings. Matching folds case, strips punctuation and whitespace, and prefers exact matches over partial ones , so מע"מ, מע מ and מעמ all resolve to the same field. Nothing is inferred by a model, and every suggestion can be overridden.
| Field | Requirement | Recognised headers (extract) |
|---|---|---|
| Document date | Required | date, document date, doc date, transaction date |
| Posting date | Optional | posting date, entry date, booked, תאריך רישום |
| Document number | Required | document number, doc no, docno, document no |
| Journal / batch | Optional | journal, journal id, batch, batch no |
| Document type | Optional | document type, doc type, type, סוג מסמך |
| Account | Required | account, account code, account no, gl account |
| Account name | Optional | account name, account description, שם חשבון, שם כרטיס |
| Counterparty ID | Optional | supplier id, customer id, vendor id, party id |
| Counterparty name | Optional | supplier, supplier name, customer, customer name |
| Counterparty type | Optional | party type, counterparty type, supplier or customer, סוג כרטיס |
| Narrative | Optional | description, details, narrative, memo |
| Net amount | Amount | net, net amount, amount, sum |
| Debit | Amount | debit, dr, חובה |
| Credit | Amount | credit, cr, זכות |
| VAT | Optional | vat, vat amount, tax, tax amount |
| VAT rate | Optional | vat rate, tax rate, rate, אחוז מעמ |
| Allocation number | Optional | allocation, allocation number, allocation no, מספר הקצאה |
| Posted by | Optional | user, posted by, operator, created by |
An amount is required, but it can come either from a single net column or from a debit and credit pair, in which case the net amount is debit minus credit.
What happens to rows it cannot read
Nothing is discarded silently. Before anything is stored, VLDTION reports how many rows it can normalise and groups what it could not read by reason, naming the row and the column. Rejected rows are counted against the dataset permanently, so the difference between the file and the analysis is always visible.
- A missing or unreadable document date, document number, account or amount rejects the row.
- An unreadable VAT value is a warning: the row is imported with zero VAT and the issue is reported.
- Blank rows are skipped and counted in the import notes.
Dates and amounts
- Dates: ISO (2026-06-12) is honoured first; ambiguous numeric dates are read day-first, matching Israeli convention. Excel serial numbers are converted using the workbook's date system.
- Amounts: thousands separators, currency symbols, trailing minus signs and accounting parentheses are handled. Anything else is an error, not a guess.
- VAT rate: a value above 1 is read as a percentage. With no rate column, the rate is derived from the recorded VAT and net.