Why Flexprice collects this
Without this data, we can’t tell how many self-hosted installs exist, which versions they’re running, or whether a given release is stable in the wild. The data collected is scoped to answer those questions, not to track what any individual business or customer is doing. Flexprice does not collect financial information such as invoice amounts, wallet balances, or payment details.Telemetry is sent to a Flexprice-operated collector, not a third party. The app-side reporter’s source is open: internal/telemetry in the main repo.
What gets collected
There are two events.Install event
Sent once per process start (API, consumer, or worker). Identifies the deployment and its environment, not any tenant or customer.System event
Sent for a fixed set of activation/lifecycle events, listed below, not on every webhook event your instance emits.Webhook payloads vary by event type and some carry customer PII or financial amounts directly, for example
wallet.* events include the wallet’s full balance record. Before event_payload is sent, Flexprice strips the fields below by key name, at any nesting depth, regardless of which event produced them. Resource IDs, status enums, and timestamps are preserved. The redaction logic is open source: redact.go.PII: name, email, phone, address_line1, address_line2, address_city, address_state, address_postal_code, address_country, metadataFinancial amounts and balances: amount, amount_due, amount_paid, amount_remaining, subtotal, total, total_tax, total_discount, total_prepaid_credits_applied, settled_amount, total_amount, balance, credit_balance, credit_balance_before, credit_balance_after, credit_amount, current_balance, current_spend, threshold, conversion_rate, currency, value_at_timeOther: payment_gateway, gateway_refund_id, hosted_invoice_url, properties (freeform event properties), error (raw provider error text)install_init and system_event), there is no per-feature tracking plan. event_name on a system event is always one of:
Every other webhook event your instance can emit (checkout, feature, entitlement, the finer-grained invoice/payment/wallet/subscription states,
event.rejected, etc.) is dropped before ReportEvent does any work. See Webhooks for the full set of events your own webhook endpoints can subscribe to, independent of this list.
Opting out
SetFLEXPRICE_TELEMETRY_DISABLED to true on every process (API, consumer, worker) to stop telemetry entirely:
Related Articles
Configuration
The full list of environment variables for a self-hosted install.
Self-Hosting Guide
Deploying Flexprice on your own infrastructure.
Architecture
How the API, consumer, and worker processes fit together.

