.. _changes: TODO: for invoice importing using AI: 1. my address data should be editable because import is not perfect 4. find billing item tax rate based on paid tax vs total 6. set document original and copy path (save file to zip first) 7. create a new invoice ID - retrieve available balance from AI api & show in settings/services. - let user choose the model to use in settings/services/ai - real error logging for OpenAI and importing in general - when importing an invoice: do not accept invoices for unsupported countries (yet) - write tests for strops.hpp - log_set_depth function so data can be grouped - log elapsed time for ai requests - refactor _add functions to use _import functions - _import functions should not check for validity and should never fail because of invalid data - invalid invoices should be marked in the UI - write tests that check error handling for corrupt files. (e.g. references to tax rates, project and cost center that failed to load) - it is possible a referenced tax rate is loaded after an invoice is loaded. This means all invoices need to be recalculated after file load. (try to write a test for this). - invoice sequential number should be modifyable & checked for uniqueness (for external invoices being imported) - allow cost centers to be deleted that have 0 references - Send invoice by email - create invoice from PDF file - create invoice from image of receipt - create invoice from UBL file - read invoice from Holodeck instance - send invoice via Holodeck instance - View invoice history for contacts - View invoice history for projects - Create quarterly tax reports for NL. - validate data within administration on save to make sure it is valid for transmissions. (e.g. rules of https://docs.peppol.eu/poacc/billing/3.0/syntax/ubl-invoice/cac-AccountingSupplierParty/cac-Party/cbc-EndpointID/) - View local business number / vat number naming on contact form. e.g. when country is austria: "Österreichische Umsatzsteuer-Identifikationsnummer" - ICP reports v0.1 (master) - Create/read/update contacts - Create/read/update projects - Create/read/update invoices & expenses - Create/read/update VAT rates - Create/read/update cost centers - Generate default VAT rates - Generate default cost centers - Reading & writing administration files - Archive invoices in Peppol BIS 3.0 format - Quarterly income statement reports