Legacy cron entry points and processors
Legacy entry points called by the framework's cron dispatcher or over HTTP, their processors, the tables they write to, and the absence of permission checks.
The legacy entry points are called by the framework's own cron dispatcher with required, typed arguments (cron_id, code, cycle, date_added, date_modified), so they cannot be called from outside; a few argument-free entry points can also be called over HTTP. None of them checks permissions or the cron secret.
Entry points and processors
Table names carry the installation's own prefix in the database.
| Entry point | What it calls or does |
|---|---|
cron/cronqueue | masterdata/cronqueue.run, with the cron secret injected from the configuration |
cron/taxaccount, cron/missingtaxreturn | nav/taxaccount.run, nav/missingtaxreturn.run |
cron/invoice, cron/invoicedigest, cron/invoicedigestresponse, cron/company | finance/invoice.addInvoice, task/navtask.addTaskInvoiceDigest, .addTaskInvoiceDigestResponse, .addTaskCompanyAddress |
cron/task | the legacy 8-step tax authority chain (digest and response, finance/invoice.addInvoice, taxpayer response, masterdata/company.addCompany, invoice data and response, finance/invoice.addInvoiceData) on the nav_task table |
cron/contir | task/contir.contir (legacy posting); alongside task/contir_net_vat_gross |
cron/checksite | task/checksite.checkurl: HEAD request to the configured URL, response time into site_status |
cron/email, cron/emailduplicate, cron/emailproc, cron/emailred, cron/emailredinvoice | legacy IMAP-based mail processors (task/email, task/emailduplicate, task/emailproc, task/emailred, task/emailredinvoice); accounts from the tenant JSON settings; helpers of emailproc: invoice matching, saving and linking documents, mail status |
cron/gdriverefresh | task/gdriverefresh: token refresh for every row of gdrive_token (Google client, Microsoft Graph token endpoint, rotated refresh token) |
cron/mbvk | task/mbvk.run, runDetail: list, details and bids of bailiff auctions (auction/mbvk model, auction tables) |
cron/navosa | per minute at most 10 unprocessed invoices: queryInvoiceData additional data into line_additional_data, marked with nav_osa_at |
cron/foxpost | daily the 7-day cash-on-delivery settlement of every active FoxPost account into cod_settlement, linked to invoices (bank/foxpost); without API only existing CSV rows are linked |
cron/gptworker | starts the worker slots of the AI workflow |
cron/partnercheck | log only; according to the code the partner check is not implemented |
cron/auctionquery, cron/cmsquery | only log a cron run event (event/event::addCronRunEvent) |
Entry points callable over HTTP
cron/baserate: central bank (MNB) or ECB base rate series (bank,from,toparameters), for an empty series 10 years back, intobase_rate.cron/kshfetch: downloads statistical office datasets intostorage/tmp_ksh/, processes them intoksh_dataset_row, deletes the files;datasetparameter.cron/kshmatch: matches addresses to the statistical settlement master in batches of 500 (address_ksh).cron/signupsweep:dlbtsignup->sweep(), expiry of unpaid registrations — subscriptionexpired, company and membersstatus = 0, without deletion.
Known limitations
None of the legacy processors' public methods (finance/invoice::addInvoice, ::addInvoiceData, masterdata/company::addCompany, task/navtask::*, task/email::run, task/emailred::run and logMessage, task/emailredinvoice::run and logMessage, task/emailduplicate::run and logMessage, task/emailproc::run and helpers, task/mbvk::run and runDetail, task/contir::contir, task/contir_net_vat_gross::contir, task/gdriverefresh::run, task/checksite::checkurl, nav/taxdebt::run, nav/taxaccount::generateTaxaccountPdf) checks permissions or the cron secret. The arguments of cron/foxpost have default values.