Event catalog¶
This catalog lists the business events published on the logs topic, module by module. Any module adding one records it here — see Emit a business event.
By platform convention, the WARN level marks deletions and cancellations, the ERROR level the technical failures suffered, and the SECURITY level the uninstallation purge, exports and the life of machine identities.
Stocks¶
Inventories¶
| Type | Level | Subject | Emitted when | Data |
|---|---|---|---|---|
stocks.inventory.created |
INFO |
inventory |
An inventory is created | warehouse, type |
stocks.inventory.updated |
INFO |
inventory |
An inventory is modified, including its status changes and the bulk actions on its lines | lines_deleted, lines_treated, lines_untreated |
stocks.inventory.validated |
INFO |
inventory |
An inventory is validated and its variances are posted to stock | warehouse, lines |
stocks.inventory.finalized |
INFO |
inventory |
An inventory is closed | — |
stocks.inventory.adjusted |
INFO |
inventory |
An inventory is adjusted | — |
stocks.inventory.recalculated |
INFO |
inventory |
The theoretical quantities of an inventory are recalculated | — |
stocks.inventory.cancelled |
WARN |
inventory |
An inventory is cancelled | — |
stocks.inventory.restored |
INFO |
inventory |
A cancelled inventory is restored | — |
stocks.inventory.deleted |
WARN |
inventory |
An inventory is deleted | — |
stocks.inventory.imported |
INFO |
inventory |
The lines of an inventory are imported from a file | — |
Inventory lines are not journaled one by one
Modifying an inventory line emits no event: the journal aggregates those changes into stocks.inventory.updated, which carries the number of lines deleted, treated or put back on hold. An inventory of several thousand lines thus stays readable.
Operations and orders¶
| Type | Level | Subject | Emitted when | Data |
|---|---|---|---|---|
stocks.operation.created |
INFO |
operation |
A stock operation is created | type |
stocks.operation.validated |
INFO |
operation |
An operation is validated | type, lines |
stocks.operation.updated |
INFO |
operation |
An operation is modified | type, contact, date |
stocks.operation.executed |
INFO |
operation |
An operation goes from draft to execution | type, lines |
stocks.operation.deleted |
WARN |
operation |
An operation is deleted | type |
stocks.order.received |
INFO |
order |
A purchase order is received | — |
stocks.order.delivered |
INFO |
order |
A sales order is delivered | — |
stocks.order.reception_cancelled |
WARN |
order |
A reception is cancelled, including when the platform cancels the purchase order | — |
stocks.selling.cancelled |
WARN |
selling |
A sales issue is cancelled by the platform | — |
An executed operation is journaled only once
stocks.operation.executed is emitted once per operation, whatever the entry point: operation screen, order reception or a call from another module.
Reference data¶
| Type | Level | Subject | Emitted when | Data |
|---|---|---|---|---|
stocks.warehouse.created |
INFO |
warehouse |
A warehouse is created | — |
stocks.warehouse.updated |
INFO |
warehouse |
A warehouse is modified | — |
stocks.warehouse.deleted |
WARN |
warehouse |
A warehouse is deleted | — |
stocks.location.created |
INFO |
location |
A location is created | — |
stocks.location.updated |
INFO |
location |
A location is modified | — |
stocks.location.deleted |
WARN |
location |
A location is deleted | — |
stocks.location.activated |
INFO |
location |
A location is activated or deactivated | active |
stocks.family.created |
INFO |
family |
An item family is created | — |
stocks.family.updated |
INFO |
family |
An item family is modified | — |
stocks.family.deleted |
WARN |
family |
An item family is deleted | — |
stocks.subfamily.created |
INFO |
subfamily |
A subfamily is created | — |
stocks.subfamily.updated |
INFO |
subfamily |
A subfamily is modified | — |
stocks.subfamily.deleted |
WARN |
subfamily |
A subfamily is deleted | — |
stocks.operation_type.created |
INFO |
operation_type |
An operation type is created | — |
stocks.operation_type.updated |
INFO |
operation_type |
An operation type is modified | — |
stocks.operation_type.deleted |
WARN |
operation_type |
An operation type is deleted | — |
stocks.contact.created |
INFO |
contact |
A contact is created | kind (person or society) |
stocks.contact.updated |
INFO |
contact |
A contact is modified | kind |
stocks.contact.deleted |
WARN |
contact |
A contact is deleted | kind |
stocks.batch.cost_recorded |
INFO |
batch |
A batch cost is recorded | — |
stocks.article.converted |
INFO |
article |
An item is converted into another unit | — |
stocks.article.planned |
INFO |
article |
An item replenishment is planned | — |
stocks.settings.cost_method_configured |
INFO |
settings |
The stock costing method is configured | — |
Platform writes¶
These events are born outside a user request: they carry the system actor, identifier 00000000-0000-0000-0000-000000000000 and name stocks. The journal shows the fact, not a user.
| Type | Level | Subject | Emitted when | Data |
|---|---|---|---|---|
stocks.article.created |
INFO |
article |
An item is created by the platform | — |
stocks.article.updated |
INFO |
article |
An item is modified | — |
stocks.article.archived |
INFO |
article |
An item is archived | — |
stocks.family.synced |
INFO |
family |
An item family is synchronized from the platform | — |
stocks.family.deleted |
WARN |
family |
An item family is deleted by the platform | — |
stocks.subfamily.synced |
INFO |
subfamily |
A subfamily is synchronized from the platform | — |
stocks.subfamily.deleted |
WARN |
subfamily |
A subfamily is deleted by the platform | — |
stocks.stock.replenished |
INFO |
stock |
A stock is replenished | quantity |
stocks.alerts.synced |
INFO |
alerts |
The stock alerts are synchronized | — |
stocks.module.uninstalled |
SECURITY |
module |
The module is uninstalled and its data purged | — |
Fiscal invoicing¶
A fiscal document goes through two hands: the user who transmits it, the platform which collects the verdict of the FNE. The tables therefore carry an "Actor" column. system denotes the system actor of the module, identifier 00000000-0000-0000-0000-000000000000 and name fiscal-invoicing; agent denotes a collection agent, which signs under its own name.
Invoices and credit notes¶
| Type | Level | Actor | Subject | Emitted when | Data |
|---|---|---|---|---|---|
fiscal_invoicing.invoice.transmitted |
INFO |
user | invoice |
An invoice is transmitted to the FNE | reference, source, import_id |
fiscal_invoicing.invoice.transmission_retried |
INFO |
user | invoice |
A failed transmission is replayed | reference |
fiscal_invoicing.invoice.transmission_cancelled |
WARN |
user | invoice |
A transmission in progress or in failure is cancelled | reference |
fiscal_invoicing.invoice.details_updated |
INFO |
user | invoice |
The object or the payment conditions of an invoice are modified | reference, fields |
fiscal_invoicing.invoice.duplicated |
INFO |
user | invoice |
An invoice is duplicated into a new import | reference, original_id, original_reference, import_id |
fiscal_invoicing.invoice.certified |
INFO |
system | invoice |
The FNE certifies an invoice and returns its stamp | reference, fne_reference, fiscal_stamp, link |
fiscal_invoicing.invoice.certification_rejected |
WARN |
system | invoice |
The FNE refuses an invoice | reference, status_code, reason |
fiscal_invoicing.invoice.certification_failed |
ERROR |
system | invoice |
The certification fails for a technical reason | reference, status_code, reason |
fiscal_invoicing.invoice.certification_cancelled |
WARN |
system | invoice |
A certification in progress is abandoned | reference |
fiscal_invoicing.credit_note.created |
INFO |
user | credit_note |
A credit note is created by hand on a certified invoice | reference, initial_invoice_reference, import_id, source |
fiscal_invoicing.credit_note.transmitted |
INFO |
user | credit_note |
A credit note is transmitted to the FNE | reference, source, import_id |
fiscal_invoicing.credit_note.transmission_retried |
INFO |
user | credit_note |
A failed credit note transmission is replayed | reference |
fiscal_invoicing.credit_note.transmission_cancelled |
WARN |
user | credit_note |
A credit note transmission is cancelled | reference |
fiscal_invoicing.credit_note.details_updated |
INFO |
user | credit_note |
The description of a credit note is modified | reference, fields |
fiscal_invoicing.credit_note.certified |
INFO |
system | credit_note |
The FNE certifies a credit note | reference, fne_reference, link |
fiscal_invoicing.credit_note.certification_rejected |
WARN |
system | credit_note |
The FNE refuses a credit note | reference, status_code, reason |
fiscal_invoicing.credit_note.certification_failed |
ERROR |
system | credit_note |
The certification of a credit note fails for a technical reason | reference, status_code, reason |
fiscal_invoicing.credit_note.certification_cancelled |
WARN |
system | credit_note |
The certification of a credit note is abandoned | reference |
fiscal_invoicing.transmitted_item.archived |
WARN |
user | invoice or credit_note |
A transmitted document is archived and its external backups withdrawn | reference, item_type, sftp, google_drive, documents |
Transmission and certification are two distinct moments
fiscal_invoicing.invoice.transmitted says that a user sent the document; fiscal_invoicing.invoice.certified says what the FNE answered, sometimes several minutes later. The source datum separates an invoice keyed in by hand (manual) from an invoice coming from an import (import).
Imports and collections¶
| Type | Level | Actor | Subject | Emitted when | Data |
|---|---|---|---|---|---|
fiscal_invoicing.file_import.created |
INFO |
user | file_import |
An invoice file is imported | filename, model, invoices, credit_notes, failures |
fiscal_invoicing.file_import.reimported |
INFO |
user | file_import |
An import is replayed with a new file | filename, invoices, credit_notes, failures |
fiscal_invoicing.file_import.transmitted |
INFO |
user | file_import |
The documents of an import are transmitted to the FNE | invoices, credit_notes |
fiscal_invoicing.file_import.transmission_cancelled |
WARN |
user | file_import |
The transmission of an import is cancelled | items |
fiscal_invoicing.file_import.completed |
INFO |
user | file_import |
An import is closed | invoices, credit_notes, failures |
fiscal_invoicing.file_import.reopened |
WARN |
user | file_import |
A closed import is reopened | invoices, credit_notes, failures |
fiscal_invoicing.file_import.cancelled |
WARN |
user | file_import |
An import is cancelled | invoices, credit_notes, failures |
fiscal_invoicing.file_import.collected |
INFO |
system | file_import |
A file dropped on a collection channel is picked up by the platform | channel, filename, invoices, credit_notes, failures |
fiscal_invoicing.file_import.collection_failed |
ERROR |
system | file_import |
A collected file is refused or unreadable | channel, filename, reason |
fiscal_invoicing.model.restituted |
INFO |
system | file_import |
The verdict of an import is returned to the depositor on its collection channel | model_collect, filename, verdict |
A collection has no author
A file dropped on an SFTP or an Azure container arrives without a user. The channel datum says where it comes from — sftp, azure or model_sftp for the collection attached to a model.
Models, interfaces and documents¶
| Type | Level | Actor | Subject | Emitted when | Data |
|---|---|---|---|---|---|
fiscal_invoicing.model.created |
INFO |
user | model |
An import model is created | name, kind |
fiscal_invoicing.model.updated |
INFO |
user | model |
A model is renamed or reworked | name, fields |
fiscal_invoicing.model.deleted |
WARN |
user | model |
A model is deleted | name |
fiscal_invoicing.model.cloned |
INFO |
user | model |
A model is cloned from a standard model | name, origin |
fiscal_invoicing.model.imported |
INFO |
user | model |
A model is imported from a file | name |
fiscal_invoicing.model.mapping_updated |
INFO |
user | model |
The column mapping of a model is modified | name, fields |
fiscal_invoicing.model.document_updated |
INFO |
user | model |
The document a model produces is modified | name, flow |
fiscal_invoicing.model.collect_updated |
INFO |
user | model |
The collection attached to a model is configured | name, channel, host |
fiscal_invoicing.model.collect_activated |
INFO |
user | model |
The collection of a model is activated or deactivated | name, active |
fiscal_invoicing.interface.fiscal_updated |
INFO |
user | interface |
The settings of the FNE interface are modified | fields |
fiscal_invoicing.interface.sftp_activated |
INFO |
user | interface |
The SFTP backup is activated or deactivated | active, host, port, folder |
fiscal_invoicing.interface.azure_activated |
INFO |
user | interface |
The Azure backup is activated or deactivated | active, container |
fiscal_invoicing.interface.collect_sftp_activated |
INFO |
user | interface |
The SFTP collection is activated or deactivated | active, host, port, folder |
fiscal_invoicing.interface.collect_azure_activated |
INFO |
user | interface |
The Azure collection is activated or deactivated | active, container |
fiscal_invoicing.interface.gdrive_activated |
INFO |
user | interface |
The Google Drive backup is activated or deactivated | active |
fiscal_invoicing.interface.gdrive_connected |
INFO |
user | interface |
A Google Drive account is connected | connected, folder |
fiscal_invoicing.interface.gdrive_disconnected |
WARN |
user | interface |
The Google Drive account is unplugged | active |
fiscal_invoicing.general_terms.uploaded |
INFO |
user | general_terms |
The general terms PDF is uploaded | filename, size |
fiscal_invoicing.general_terms.activated |
INFO |
user | general_terms |
The general terms are activated or deactivated | active |
fiscal_invoicing.manual_templates.updated |
INFO |
user | manual_templates |
The manual entry templates are replaced | templates |
A secret never comes down into the journal
The interface events carry only the landmarks of a connection — host, port, folder, container. The API keys, passwords and tokens stay in the settings of the module. fields lists the fields filled in, never their value.
Agents¶
| Type | Level | Actor | Subject | Emitted when | Data |
|---|---|---|---|---|---|
fiscal_invoicing.agent.created |
SECURITY |
user | agent |
A collection agent is declared and receives its enrollment token | name |
fiscal_invoicing.agent.revoked |
SECURITY |
user | agent |
An agent is revoked | name |
fiscal_invoicing.agent.token_renewed |
SECURITY |
user | agent |
The enrollment token of a pending agent was regenerated | name |
fiscal_invoicing.agent.source_updated |
INFO |
user | agent |
The extraction source entrusted to an agent is modified | name, model |
fiscal_invoicing.agent.catalog_refreshed |
INFO |
user | agent |
A refresh of the catalog of an agent is requested | name |
fiscal_invoicing.agent.catalog_published |
INFO |
agent | agent |
An agent publishes the catalog of the objects it sees | name, objects |
Platform writes¶
| Type | Level | Actor | Subject | Emitted when | Data |
|---|---|---|---|---|---|
fiscal_invoicing.module.uninstalled |
SECURITY |
system | organization |
The module is uninstalled and its data purged | deleted_transmitted_item, deleted_item_transmission_request, deleted_item_transmission_request_failure, deleted_file_import, deleted_interface_settings, deleted_organization |
fiscal_invoicing.order_signed.purged |
WARN |
system | pos |
A point of sale is uninstalled and its signed documents erased | pos_id, deleted_order_signed |
What the module does not journal
Reading an invoice, an import or a dashboard emits nothing: the journal keeps decisions, not glances. The heartbeat of an agent, which marks only the hour of its last visit, stays out of the journal, as does the publication of the permission catalog at the startup of the module.
Event journal¶
| Type | Level | Subject | Emitted when | Data |
|---|---|---|---|---|
logs.events.exported |
SECURITY |
export |
A CSV export of the journal is produced | filters, limit |
Planned¶
These events are planned but not emitted yet. They are given here so that the modules expecting them know their final name.
| Type | Level | Subject | Emitted when | Status |
|---|---|---|---|---|
sales.cash_receipt.closed |
INFO |
cash_receipt |
A cash receipt is closed | Planned |
minlessika.user.signed_in |
SECURITY |
user |
A user signs in to the platform | Planned |
Changelog¶
- 1.2 (August 31, 2026): fiscal invoicing catalog.
- 1.1 (August 26, 2026): full stocks catalog.
- 1.0 (August 23, 2026): document created.