Skip to content
N1
CRM / Bitrix24 · BI dashboard

A custom BI dashboard on top of Bitrix24

Client: lada-dabracar.by Category: CRM / Bitrix24 Stack: PHP, Bitrix24 D7, SQL reports, TTL cache, whitelisted AJAX Timeline: 4–6 weeks
Problem

At the LADA dealership lada-dabracar.by, management and the call center needed a single "inquiry to visit to sale" funnel on top of Bitrix24 — the CRM's built-in reports did not cover that view.

Constraints

Some classic call-center metrics (SL/ASA/ATA) simply cannot be computed without telephony data; mixing different date sources (lead vs. visit) skews percentages unless kept separate.

What I did
  • 20 parameterized SQL reports on top of live CRM data with safely substituted filters
  • A "lead to visit to deal to sale" funnel with intermediate metrics (contact rate, occupancy, etc.)
  • A multi-level TTL cache with stale fallback and locks — the dashboard never hits the CRM with heavy queries directly
  • 33 whitelisted AJAX actions with permission and session checks
  • Honest documentation of the limitations of every disputable metric instead of dressing up the numbers
Screenshots
Screenshot coming soon Dashboard overview tab: the inquiry-to-visit-to-sale funnel
Screenshot coming soon Calls and agents tab
Screenshot coming soon Directions tab with a metrics breakdown

Architecture
Live Bitrix24 data SQL reports Cache layer (live/cached/pre-aggregated) Tabbed dashboard
Result

Management and the call center got a single tabbed funnel dashboard (overview/visits/calls/agents/directions) instead of Excel exports — with caching and clearly documented metric limitations.

What can be reused
Live/cached/pre-aggregated report provider layer TTL cache with stale fallback for heavy SQL reports Approach to honestly documenting metric limitations