System Log Codes Reference
Every operational log code emitted by the BizKitHub core — the identifiers you see in subject lines of technical-notification e-mails (such as TTL_003 or INTERNAL_FIO_API_UNAVAILABLE) and as code badges in the admin log viewer. Unlike API error codes, these never reach external clients; they describe background events, integrations, and cron-driven workflows.
They are registered automatically the first time the core emits one via writeLog(). The platform team curates each code with a human-readable title and a short description so operators can understand the e-mail subject at a glance.
Activity entry could not be saved
An activity timeline entry attached to an operation could not be persisted. The underlying operation is unaffected; only the audit row is missing.
AI routing failed
The AI-assisted classifier that routes inbound issues by intent failed to parse its response. The issue falls back to the generic "other" route.
Service API log forward
A managed internal service forwarded a log event via the service API. The level and component are supplied by the forwarding service.
Client-reported tracking event
An external client reported an event via the public tracking endpoint. The level (info / warning / error) is supplied by the client.
Uncaught exception on API surface
A request to a public or internal API surface raised an exception that bypassed the per-route handlers. The client received a generic 500 response.
Common (fallback) error
Fallback code assigned by the logging layer (`resolveLogMessage()`) when an entry is written without an explicit `code`. The actual root cause lives in the log message body; high counts here usually mean the caller should emit a specific dedicated code instead.
Fio bank token used by another organisation
The same Fio bank API token that already belongs to an organisation was offered for registration in a different organisation. The duplicate registration was blocked; rotate the token and review who has had access to it.
Fio bank token registered
A new Fio bank API token was attached to the organisation. The action is audited; deactivate the previous token if it is no longer used.
Branch settlement (deprecated)
Historical placeholder produced by an earlier code naming scheme that exceeded the 16-character storage limit and silently collided. Replaced by `BRN_RPT_FAIL` (attach failed) and `BRN_NTF_FAIL` (notification failed). New occurrences are no longer emitted.
Branch settlement notification failed
The notification that announces a completed settlement to the branch owner could not be sent. The settlement itself is unaffected.
Branch settlement report attach failed
The generated settlement report could not be attached to its parent settlement order. The settlement remains valid; the report can be re-attached manually.
Calendar event lock provisioning failed
A calendar event that requires a smart-lock access code could not be provisioned with one. Access for the affected slot may need to be granted manually.
Calendar event lock provisioning degraded
A calendar event lock access code fell back to a temporary substitute (e.g. a recyclable backup code). The slot remains usable but should be reconciled.
Calendar event access watchdog failed
The background watchdog that verifies lock access for upcoming calendar events raised an error. Inspect the affected events before they begin.
Credit write-off could not be scheduled
A scheduled write-off of customer credit failed to spawn its background task. Existing balances are unaffected; the write-off must be retriggered manually.
Ambiguous contact identity
A contact lookup matched more than one candidate using the supplied identifiers. The request was rejected to avoid silently merging distinct records.
Contact anonymised
A contact record has been anonymised on request. Personally identifiable fields are scrubbed and the contact remains only as a referential placeholder.
Contact registry sync failed
Enrichment of a contact from the public business registry could not complete. Stored details may be incomplete; retry once the registry is reachable.
Contact registry identifier changed
A registry identifier on an existing contact was changed during an update flow. The previous identifier is retained in the activity timeline.
Contact registration failed
The public registration flow could not create or attach a contact. The visitor was shown an error; no partial contact data was retained.
Organisation emoji sync failed
Refreshing the display emoji associated with an organisation failed. Cached representations may show a fallback symbol until the next run.
GeoIP enrichment failed
Reconciling DNS records against the GeoIP database could not complete. Stored geolocation hints may be stale until the next successful run.
Cron job failed
A registered cron job raised an exception. The remaining jobs in the same tier continue to run; the failed job will be retried on its next schedule.
Internal cron not running
The internal cron dispatcher has not executed within its expected window. Time-sensitive jobs (payments, reminders, syncs) are delayed.
Missing CMS route detected
A public route referenced by content was not present in the route table. Visitors were shown a 404 until the route was reconciled.
Cron job failure (legacy)
Legacy code from an earlier cron runner. No longer emitted by current source; historical entries are kept for audit purposes only.
Currency rate table empty
The currency rate table contains no entries. Conversions will fall back to a 1:1 ratio until rates are ingested.
Currency provider returned no data
A configured exchange rate provider returned an empty response. Other providers (if any) are unaffected; conversions use the most recent stored rate.
Currency rates are stale
The most recent rates for a provider are older than the freshness window. Conversions still run but may diverge from market rates.
DNS adaptive schedule write failed
The adaptive scheduler could not persist the next DNS refresh time for a domain. The domain will be picked up again on the next tick (past-due next_dns_check_at means "sync now"), so no work is lost.
Subdomain enumeration via Wayback failed
Fetching historical subdomain data from the public web archive failed. Other enumeration strategies are unaffected.
DKIM not configured for sender (deprecated)
Renamed during the 2026-06-28 code consolidation. The active code for the fallback-mailer event is `EML_FALLBACK`. Kept here so historical log rows still resolve.
Outbound e-mail re-routed via system mailer
An outbound e-mail could not be delivered through the organisation's configured SMTP, so the platform fallback mailer carried it. The message arrived; review and repair the organisation's SMTP configuration to stop relying on the fallback.
E-mail queue write failed
An outbound e-mail could not be appended to the delivery queue. The message will not be sent unless the caller retries.
Undocumented — no title set
Undocumented — no title set
Incoming e-mail could not be persisted
An incoming e-mail could not be stored after receipt from the provider. The provider may retry; otherwise the message is lost.
Incoming e-mail forward notification failed
The on-receipt notification that announces a new incoming e-mail to operators could not be dispatched. The e-mail itself is stored normally.
Incoming e-mail provider sync failed
The periodic poll that ingests messages from the inbound e-mail provider failed. The poll will retry on its next schedule.
E-mail delivery critical failure
A persistent or systemic outbound e-mail failure was detected (e.g. authentication or domain reputation). Customer-facing e-mails are affected until resolved.
E-mail delivery failed
An outbound e-mail was rejected by the upstream provider. Common causes: temporary recipient block, invalid address, or quota exhaustion.
Branch-manager notification for a pending writeoff failed
A pending writeoff expense was booked against a branch but the notification e-mail / complaint ticket could not be created. The ledger row is authoritative; an operator can approve it from the branch detail Oprávky tab and re-send the notification manually.
Manual e-mail has been sent
Audit entry written when an operator dispatches a manual e-mail (newsletter, segmented broadcast or one-off message) via `composeMail()`. Informational — no action required.
E-mail dispatch failed
An exception was raised during `composeMail()` while preparing or handing off the message to the SMTP/queue layer. The recipient was not reached; inspect the message body for the upstream error.
SMTP configuration test succeeded
Written after a successful test send through a newly-saved SMTP configuration. Confirms host, port and credentials are working.
SMTP configuration test failed
The saved SMTP configuration could not deliver the test message. Verify host/port, credentials and that the provider permits sending from the configured From address.
Fio bank sync warning (legacy)
Legacy Fio bank integration code. Replaced by the `INTERNAL_FIO_*` family; no longer emitted by current source.
Fio bank sync failure (legacy)
Legacy Fio bank integration code. Replaced by the `INTERNAL_FIO_*` family; no longer emitted by current source.
Branch geocoding failed
Resolving the geographic coordinates of a branch address from the geocoding provider failed. The branch is saved without precise coordinates.
No payment gateway configured
An order tried to create an online payment but no gateway (Comgate / Stripe / GoPay …) is configured for the organisation or its order group. The customer cannot pay online until a gateway is set up in the admin.
Online payment creation failed
The payment provider rejected the create-payment request (provider API error, wrong credentials or malformed payload). The customer was not redirected to the payment screen — inspect the message body for the provider response.
Payment gateway error (reserved)
Reserved gateway code from an earlier integration. Never emitted by current source.
Import could not be started
A queued data import could not be handed off to the background runner. The import remains in a pending state and can be retried.
Import processing failed
A running data import raised an exception before completion. Some rows may already have been imported; review the import detail before retrying.
Fio bank API unavailable
Stored as the 16-character truncation of `INTERNAL_FIO_API_UNAVAILABLE`. The Fio bank API did not respond in time or returned a malformed body during the periodic statement sync. Usually transient (Fio downtime or network blip) and resolves on the next cron tick; persistent occurrences indicate a real Fio outage.
Fio bank API token inactive
Stored as the 16-character truncation of `INTERNAL_FIO_TOKEN_INACTIVE`. Fio API returned a token-rejected error during statement sync — the configured API token has been revoked, expired or was never activated in Fio internet banking. Generate a fresh token and update the bank account configuration.
Log digest report failed
The periodic summary of system log activity for an organisation could not be generated or delivered. The next scheduled run will retry.
Member permission grant expiring
A time-bound permission grant for a member is about to expire. Renew the grant if the member should keep the access; otherwise it will lapse automatically.
Member mentioned in a note
A member was explicitly tagged in a free-form note left on their record. The mention is surfaced in the member activity timeline.
Newsletter delivery finished
A newsletter campaign finished dispatching. The notification contains delivery stats (sent, skipped, bounced) for the campaign.
Newsroom enrichment failed
Enriching a newly ingested RSS article with summary, tags or media failed. The raw article is retained; enrichment will be retried.
Newsroom daily pipeline failed
The daily ingestion + enrichment pipeline for a newsroom organisation could not finish. Today's feed may be partially populated.
Public order API rejected the request
The public order creation endpoint encountered an exception while persisting the submitted order. The client received a structured error response.
Order from a blocked customer
A new order was rejected because the customer is currently flagged as blocked. The order is not created; review the customer record if this should be allowed.
Critical order event escalated
A critical event was recorded against an order (failed payment, refused webhook, etc.). Operators receive a technical notification with the order number and details.
Order audit log could not be saved (deprecated)
Renamed during the 2026-06-28 code consolidation. The active code for an order critical-event escalation is `ORD_CRIT`. Kept here so historical log rows still resolve.
Internal new-order notification failed
The team notification that announces a newly created order could not be dispatched. The order itself was created normally.
Daily new-order notification limit reached
The internal notification for a freshly created order was suppressed because the per-day notification budget for the organisation has been exhausted.
Customer-facing order notification failed
An e-mail informing the customer about an order status transition could not be delivered. The order status itself has already been updated.
Automatic order redirect failed
An order configured to redirect to a downstream channel after creation could not be redirected automatically. Manual follow-up may be required.
Organisation registry sync failed
The organisation profile could not be enriched from the public business registry during an update. Stored details may be incomplete; retry once the registry is reachable.
Default currency change rejected
A request to change the organisation default currency was denied because it would compromise accounting consistency. Contact support for an audited migration path.
Comgate payment status check failed
The Comgate API could not be queried for the current status of a payment. The payment record was not updated in this cycle.
Comgate production probe
A pre-flight configuration check was sent to Comgate (prepareOnly=1, no customer charge) to verify the merchant is enabled for production before forwarding a real payer. Every fresh probe records one entry with the full outcome and the raw gateway response; cache hits within the TTL do not re-log. Existence of an entry does not imply a real payment attempt.
GoPay payment creation failed
The GoPay API rejected the request to create a new payment session. The customer cannot proceed via GoPay until the cause is resolved.
Payment redirect URL not available
Generating or refreshing the payment gateway redirect URL for an order failed. The customer was shown an error and asked to retry.
Stripe payment status check failed
The Stripe API could not be queried for the current status of a payment intent. The payment record was not updated in this cycle.
AI fact-check failed
The AI-assisted fact check of a post could not complete. No corrections were applied; retry once the AI provider is reachable.
AI fact-check fix application failed
Applying the suggested fact-check corrections to a post failed. The original content is unchanged.
AI thumbnail generation failed
An AI-generated cover image could not be produced for the post. The post was saved without an auto-generated thumbnail.
Post digest e-mail failed
The periodic digest of recently published posts could not be assembled or delivered. Subscribers will receive the next scheduled digest instead.
Post revision could not be saved
A new snapshot of post content failed to write to the revision log. The latest live content remains correct; the version history is incomplete.
Initial post revision missing
The first revision of a newly created post could not be persisted. Subsequent edits will still capture history starting from the next change.
Post metadata could not be saved
A secondary metadata write (slug history, SEO fields, taxonomy) failed while persisting a post. The primary post content is committed.
Post translation lookup failed
Resolving the translated title for a post in the requested locale failed. The post may be presented with a fallback locale instead.
robots.txt adaptive schedule write failed
The adaptive scheduler could not persist the next robots.txt refresh time for a domain. The domain will be picked up again on the next tick (past-due next_robots_check_at means "sync now"), so no work is lost.
Suspicious-login notification failed
A sign-in was blocked by the risk-score gate but the follow-up notification e-mail could not be queued. The block itself was applied normally; investigate mailer configuration only if the failure is recurring.
RSS feed sync failed
Polling a subscribed RSS feed failed (network error, malformed XML, or HTTP error). The feed will be retried on its next schedule.
Scheduler runner offline
The external scheduler runner that consumes queued background jobs is not reachable. Queued jobs are not progressing; investigate the runner.
Scheduler heartbeat stale
The scheduler runner is reachable but has not reported a recent heartbeat. Jobs may be stuck; restart the runner if the condition persists.
API key deactivated
An API key was deactivated. It remains stored but rejects new requests until reactivated. Useful when temporarily pausing an integration without discarding the credential.
API key deleted
An existing API key was permanently invalidated. All subsequent requests using this key are rejected. Review the audit timeline if the action was unexpected.
API key expiration extended
The expiration date of an API key was moved forward. Confirm the extension was intentional and that the key still serves an active integration.
Possible API key disclosure
A pattern consistent with a public API key being shared outside trusted channels was observed. Rotate the key and review recent usage.
New API key issued
A new API key has been generated for the organisation. The action is audited; rotate the previous key if it is no longer needed.
API key rate limit exceeded
An API key produced more requests than the per-window budget permits. Subsequent calls were rejected until the window resets.
API key reactivated
A previously deactivated API key was re-enabled and can now be used again for requests. Verify the reactivation was intended.
Undocumented — no title set
Root permission granted
A member was promoted to a role with unrestricted access. Verify the change was expected; root grants are visible in the audit timeline.
Spam detection internal failure
The spam classifier raised an internal error while scoring an incoming submission. The submission was accepted; the score may be missing.
SMS gateway refused delivery
The SMS provider rejected an outgoing message. Common causes: insufficient credit, invalid recipient format, or sender ID restrictions.
Tag assignment failed
Attaching one or more tags to an entity failed. The entity itself is saved; the tag assignment can be retried from the admin UI.
TTLock API: operation failed (code 1)
TTLock cloud API rejected the operation with the generic error code 1 ("failed / means no"). Often returned when the lock cannot acknowledge the request — check gateway connectivity and lock health.
TTLock API: error 10004
TTLock cloud API returned error 10004 (request validation failure). Inspect the message body for the offending parameter.
TTLock API: device not connected to a gateway
TTLock API reports that the lock has no associated gateway (code 2012). Either the gateway is unplugged/offline or the lock has been unpaired in the TTLock app.
TTLock API: gateway offline
TTLock API reports the gateway as offline (code 3002). Same condition as `TTL_003` but raised from a per-operation API call rather than the periodic healthcheck cron.
TTLock API: gateway busy
TTLock API reports the gateway as busy (code 3003) — another command is already in flight on the same gateway. Transient; the operation queue retries automatically.
Undocumented — no title set
TTLock API: remote command timed out
TTLock API code 3009 — the gateway acknowledged the request but did not confirm completion within the timeout window. Usually transient and retried by the queue.
TTLock API: unknown error
TTLock cloud API returned an error response without a recognised numeric code. Inspect the message body — most often a transport-level failure rather than a real lock issue.
TTLock passcode provisioning failed
Adding a passcode to a smart lock failed while provisioning access for a calendar event. If a backup code was used as fallback the entry is logged at `error`; if no usable backup exists the entry is `critical` with an e-mail — the guest cannot enter and an operator must intervene.
Unable to generate a unique passcode
After 50 attempts the password generator could not produce a code that does not collide with an existing active password on the lock. Indicates either DB drift or a lock with an unusually high number of active codes — investigate manually in the TTLock dashboard.
TTLock gateway is offline
The TTLock healthcheck detected that a lock's gateway transitioned from online to offline. The notification e-mail fires only when no working backup code is in place (or the backup expires within 3 days); otherwise the event is logged at `error` without notification.
TTLock gateway reconnected
A previously offline lock is reachable again and the rolling backup passcode has been refreshed. The recovery e-mail is sent only when the outage lasted at least 24 hours; shorter hiccups are logged at `info` without notification.
Lock battery level is critical
A lock reported its battery level at or below 25 %. Replace the batteries soon — once the lock loses power, all passcodes (including the backup) stop working until the batteries are replaced.
Common lock error (reserved)
Reserved generic lock-error code. Not currently emitted by any code path — kept for forward compatibility.
TTLock queue item exhausted retries
A queued lock operation has failed permanently after 10 retries (or was marked dead immediately for a non-retryable error). The API call will not be retried further; inspect the entry in the TTLock queue dashboard to see which operation was abandoned.
Domain uptime adaptive schedule write failed
The adaptive scheduler could not persist the next uptime probe time for a domain. The domain will be picked up again on the next tick (past-due next_uptime_check_at means "sync now"), so no work is lost.
Stock commit failed
Converting reservations into committed stock movements for a paid order failed. The order is marked as paid but the warehouse balance is stale.
Expired reservation release failed
Releasing an expired stock reservation back into available stock failed. The reservation continues to hold inventory until reconciled.
Expired reservations released
The periodic scan released a batch of expired stock reservations. The summary includes how many succeeded and how many failed.
Stock outbound for item failed
A single line item on an order could not produce an outbound stock movement. Other items in the order may have committed successfully.
Low stock threshold breached
A warehouse item dropped at or below its configured low-stock threshold. Reorder before the item runs out.
Low-stock scan finished
The periodic low-stock scan finished and produced a summary of detected breaches. Individual breaches are reported separately.
Stock movement missing source warehouse
A committed stock movement referenced by a return has no source warehouse, so it could not be reversed. Inspect and reconcile the affected movement.
Stock reservation failed
An order could not reserve stock from the warehouse. The order is created but inventory commitments are missing; reconcile manually.
Stock reservation skipped
A stock reservation hook was skipped because no active warehouse is configured for the organisation. Stock figures will not reflect the order.
Stock return failed
Reversing stock movements for a cancelled or refunded order failed. The warehouse balance may overstate available stock.
Stock return: nothing to reverse
A stock return hook ran but found no committed movements to reverse for the order. This is benign for orders that never committed stock.
Severity scale
Each code is emitted at one of five severity levels at runtime. A critical-level occurrence triggers a notification e-mail to the organisation's support address; lower levels are recorded in the admin log viewer but do not send mail.
Routine activity
Healthy outcome
Logged failure
Needs attention
Notification sent