Telemetry

Storno.ro collects anonymous usage telemetry from mobile clients to improve the product. Telemetry is opt-out and never includes customer financial data, invoice contents, client details, or any personally identifiable information (PII).


What Data Is Collected

Each telemetry event contains:

FieldDescriptionExample
eventAction name (dot-separated)invoice.created
propertiesOptional metadata about the action{ "method": "email" }, { "refund": true }
platformClient platform identifiermobile, web
app_versionApp version string1.4.2
timestampISO 8601 timestamp of the event2026-03-05T14:30:00Z
user_idInternal user UUID
company_idActive company UUID (from X-Company header)

Events Tracked

Invoicing

EventPropertiesTriggered When
invoice.createdrefund (boolean)A new invoice is created
invoice.issuedAn invoice is finalized
invoice.sent_emailAn invoice is emailed to a client
invoice.payment_recordedA payment is recorded on an invoice
invoice.exported_pdfAn invoice PDF is downloaded
invoice.deletedAn invoice is deleted

Clients

EventPropertiesTriggered When
client.createdfromRegistry (boolean)A new client is created
client.updatedA client is updated
client.deletedA client is deleted

e-Factura

EventPropertiesTriggered When
efactura.submittedAn invoice is submitted to ANAF
efactura.token_connectedANAF OAuth token is connected
efactura.sync_triggerede-Factura sync is manually triggered

Documents

EventPropertiesTriggered When
document.proforma_createdA proforma invoice is created
document.receipt_createdA receipt is created
document.delivery_note_createdA delivery note is created

Account

EventPropertiesTriggered When
account.logged_inmethod (email, google, passkey)User logs in
account.registeredNew account is created
account.company_switchedUser switches active company
account.language_changedUser changes language
account.push_enabledPush notifications are enabled

What Is NOT Collected

  • Invoice amounts, line items, or totals
  • Client names, addresses, CUI/CIF, or bank accounts
  • Product names or prices
  • Email addresses or phone numbers
  • File contents (PDFs, XMLs)
  • IP addresses or geolocation
  • Device identifiers or advertising IDs

How Data Is Sent

Events are batched on the client and sent to POST /api/v1/telemetry in groups of up to 100 events. The mobile app flushes events every 30 seconds or when the batch reaches 10 events, whichever comes first.

Telemetry requests are fire-and-forget — failures are silently ignored and never block the user interface.


How Data Is Used

Telemetry helps us:

  • Identify popular features — prioritize improvements for the most-used workflows
  • Detect underused features — investigate whether features need better discoverability or UX
  • Monitor adoption — track platform usage (mobile vs. web) and app version distribution
  • Improve reliability — spot patterns in user workflows that may reveal edge cases

Telemetry data is only accessible to Storno.ro platform administrators via the admin dashboard.


Opting Out

Self-hosted instances

Telemetry is collected by the SaaS platform. Self-hosted instances do not send telemetry to Storno.ro — all data stays on your infrastructure.

If you run a self-hosted instance and want to disable telemetry collection entirely, set the environment variable:

TELEMETRY_ENABLED=false

This disables the POST /api/v1/telemetry endpoint. Events sent by clients will be silently discarded.

SaaS

Telemetry collection on the SaaS platform is enabled by default. If you would like your data excluded, contact [email protected].