Imports a file into the archive at archive_path, creating
the archive if it doesn’t exist yet.
parse decodes the raw bytes of the file into archive records
(e.g. parse_gls).
Entries whose fingerprint is already archived are skipped,
so overlapping export date ranges are safe.
Parses a CSV export of the Sparkasse / Kreissparkasse online
banking into archive records.
The export variant (CSV-CAMT with or without the “Kategorie”
column, e.g. CAMT-52 V8, or CSV-MT940) is detected by its
header line.
Verifies the archive at archive_path without modifying it:
every stored fingerprint must match its entry’s content, the
archive must hold a single account and currency with amounts
representable in two decimal places, and the day-by-day balance
chain must be gapless.
Entries without a fingerprint are legal and only counted.