We develop taxi websites on 1C-Bitrix — not a business card with a phone number, but a full-fledged tool for order intake, cost calculation, and dispatcher communication. A typical problem with custom solutions is slow loading under peak loads and difficulties with 1C integration: data doesn't sync in time, orders get lost. 1C-Bitrix solves this with built-in tagged caching and ready-made CommerceML connectors.
The platform provides ready-made modules for information blocks, highload blocks, and user management, covering 70% of typical taxi tasks. We configure a route calculator with tariffs, integrate Yandex.Maps API for geocoding, and ensure dynamic pricing through system agents. As a result, a taxi website on 1C-Bitrix runs faster and is cheaper to maintain than custom development.
We evaluate your project and propose end-to-end timelines. In a typical project, we design the calculator architecture in a Highload block TaxiTariffs, configure agents to check order status every 30 seconds, and connect the dispatch system via an abstract class DispatchConnector. Average order processing time — 500 ms. We work with any scale — from 5 to 500 cars. As stated in the official 1C-Bitrix documentation, "CommerceML is a standard for data exchange between 1C and the site, supported by the platform kernel."
How We Configure the Route Calculator with Tarification
The cost calculator is the central element. The user enters two points, the system shows distance, time, and price by tariff. Internally, it's a chain of several components.
Geocoding and route building. On the frontend, we integrate Yandex.Maps JavaScript API or Google Maps JavaScript API. After selecting points A and B, a request goes to the Router API to get the route. The choice between Yandex and Google depends on geography: Yandex is more accurate for Russia, Google for international routes.
The tariff matrix is stored in the Highload block TaxiTariffs with the structure:
| Field |
Type |
Purpose |
| UF_TARIFF_CODE |
String |
Tariff code |
| UF_BASE_PRICE |
Number |
Base fare |
| UF_PRICE_PER_KM |
Number |
Price per km |
| UF_PRICE_PER_MIN |
Number |
Price per minute |
| UF_MIN_ORDER |
Number |
Minimum order cost |
| UF_NIGHT_COEFF |
Number |
Night coefficient |
| UF_ZONE_ID |
Bind |
Zone of operation |
Formula: max(UF_MIN_ORDER, UF_BASE_PRICE + distance_km × UF_PRICE_PER_KM + time_min × UF_PRICE_PER_MIN) × coefficient. The coefficient is pulled from a separate HL-block of zones.
Server-side validation is mandatory: the AJAX controller re-requests the distance via a server-side call to the Router API and calculates the price based on current data. This prevents parameter manipulation on the client.
Dynamic pricing is implemented via the HL-block TaxiSurge with increasing coefficients for time slots. The handler OnBeforeOrderAdd applies the coefficient — e.g., New Year's Eve, rush hour. The content manager configures this without a developer.
Example cost calculation
For a trip during rush hour, the cost is calculated using the formula with applicable coefficients. The final amount is determined by the system based on real-time data.
Why a Taxi Website on 1C-Bitrix Is Better Than Custom Development
Development on Bitrix takes 2–3 times less time than from scratch. Ready-made modules for information blocks, highload blocks, and user management cover 70% of typical tasks. Integration with 1C via CommerceML (according to documentation) is built into the kernel — no need to write custom connectors for directory and order exchange. Our project experience shows that maintaining such a site has lower total cost of ownership thanks to built-in caching and agent orchestration. If you want to quickly launch a taxi website, order development from us.
How We Integrate the Site with Dispatch Systems and Aggregators
The order form collects the route, tariff, pickup time, and notes. After submission:
- An information block element
Orders is created with status "New".
- Simultaneously, a POST request is sent to the dispatch system API (Taxi-Master, Maxoptra).
- An agent
CAgent runs, checking status every 30 seconds.
- The client receives a push update via SSE.
Integration with the dispatch system is implemented via an abstract class DispatchConnector with methods sendOrder(), getStatus(), cancelOrder(). An adapter is written for each system — switching dispatch software only requires changing the adapter.
For aggregators (Yandex.Taxi, Uber), orders via their Partner API fall into the information block with a source marker. The dispatcher sees a unified list of both direct orders and aggregator orders. API requests are cached in CStackCacheManager for 60 seconds.
Process, Timeline, and What's Included
We follow these stages:
| Stage |
What We Do |
Approximate Time |
| Analysis |
Identify integrations, zones, tariffs |
1–3 days |
| Design |
Calculator architecture, data schema |
2–4 days |
| Implementation |
Calculator, ordering, admin panel |
1–3 weeks |
| Integration |
1C, dispatch, aggregators |
1–2 weeks |
| Testing |
Validation, load testing, usability |
3–7 days |
| Launch & Training |
Deployment, hosting setup, documentation handover |
1–2 days |
Timelines — from 2 to 6 weeks depending on complexity. Cost is calculated individually.
Work scope:
- Technical specification describing integrations
- Deployment on hosting (recommended VPS: 4 vCPU, 8 GB RAM, SSD, PHP 8.1+, Redis for caching)
- Mobile-first responsive design (75–85% of orders from smartphones)
- PWA manifest configuration for adding to home screen
- Schema.org
TaxiService microdata and landing pages for routes
- 6-month warranty and technical support after launch
Contact us to evaluate your project — we'll prepare a commercial proposal and precise timelines.
How to properly design infoblocks?
When developing a 1C-Bitrix website, we see dozens of projects where poor infoblock structure slows down the site. Typical scenario: the client asks for a "product catalog." The developer creates one infoblock catalog, puts 15 properties in it. Six months later – 40 properties, 8 of which are used only for one category. The filter lags, the b_iblock_element_property table grows to millions of rows, CIBlockElement::GetList runs for 3 seconds. Consequences – conversion drop, loss of customers, additional optimization costs. In one project after catalog refactoring, page generation time dropped from 4.2 to 0.8 seconds, and annual support costs were reduced by over $10,000 through eliminated redundant queries and agents.
Our approach: design infoblocks before writing a single line of code. Separate infoblocks for entities (products, categories, brands), dictionary properties via highload blocks, trade offers for SKUs. This builds performance for years. If you want a preliminary audit of your infoblock schema, contact us for a free review of common mistakes and recommendations.
Why 1C-Bitrix outperforms most CMS for business
The choice of CMS is dictated by business needs, not preferences. Native 1C exchange via catalog.import.1c provides two-way synchronization of products, prices, balances, and orders through CommerceML without third-party modules — five times faster than developing custom exchange on OpenCart or WordPress, saving hundreds of thousands of rubles. Proactive security module includes WAF, file integrity control, SQL injection protection, and two-factor authentication; it's certified for FSTEK requirements. Modular architecture lets you enable only needed modules — iblock, catalog, sale, search — reducing DB queries per hit. Regular patches close vulnerabilities faster than open-source projects (average CVE fix time two weeks). Official documentation is maintained on the vendor's site.
What highload blocks are and how they speed up the catalog
Highload blocks are an alternative to extended infoblock properties when the list of values can grow to thousands of entries. Typical example: manufacturers, countries, colors. If stored as list properties in an infoblock, each filter triggers a full scan of b_iblock_property_enum table. With HL-blocks, selection uses indexes – filter response time drops from 1–2 seconds to 50 ms. We use HLB component and custom queries via Bitrix\Highloadblock\DataManager. This is critical for catalogs with 100,000+ items.
From our practice: an online store with 500,000 items. Standard filter by brand took 4 seconds. The server couldn't handle 50 concurrent requests – pages crashed. We moved the brand directory to an HL-block, added tagged caching for 15 minutes, and set up an agent to clear cache on change. After optimization, filter time was 120 ms, average LCP was 1.8 seconds. The project runs stable without failures.
What integrations are critical for 1C-Bitrix stores
Each e‑commerce project requires reliable connections with payments, fiscalization, logistics, and CRM. We integrate YooKassa, CloudPayments, Tinkoff, Apple Pay, Google Pay for payments; ATOL and OrangeData for 54-FZ compliance via sale.cashbox; CDEK, Boxberry, PEC, Russian Post, Yandex.Delivery for logistics; Bitrix24, amoCRM, Roistat, Calltouch, Mindbox for analytics and CRM. All integrations are configured with proper error handling and fallback logic.
What's included in 1C-Bitrix website development
Each project includes a full set of documentation and artifacts to prevent knowledge loss after handover.
- Technical specification – user stories, infoblock diagrams, integration schemas.
- Source code in Git – with commit history, release tags, branching rules.
- Administrative documentation – description of custom components, deployment instructions, list of agents and events.
- Staff training – up to a 3-hour webinar: admin panel, order management, price settings. Recorded for later review.
- Access to staging during development – test before production deployment.
- Warranty support – bug fixes for 30 days after launch. Post-warranty support packages with SLA (response 2 hours, resolution 8 hours).
Our process and technologies
| Project type |
Timeline |
Complexity |
Key features |
| Corporate website |
from 1 month |
Medium |
Catalog, news, forms, CRM integration |
| Online store |
from 2 months |
High |
54-FZ, marketplaces, 1C exchange, SKU |
| B2B portal |
from 3 months |
Very high |
Personal prices, document flow, Bizproc |
| Landing page |
from 2 weeks |
Low |
LCP < 2s, composite cache, static |
| Multisite structure |
from 1.5 months |
High |
Separate content, shared catalog, hreflang |
Tech stack: mobile-first markup, tested on physical devices (iPhone, iPad, Android). Use BrowserStack for Safari on iOS. Performance goals: LCP < 2.5 s, FID < 100 ms, CLS < 0.1. Enable composite site (composite module), CDN, tagged caching, WebP/AVIF, lazy loading. SEO: Schema.org via JSON-LD, auto-generation of sitemap.xml via seo module, canonical and hreflang for multilingual versions. robots.txt blocks /bitrix/ from indexing. CI/CD: Git, auto-deploy via GitLab CI, staging. DB migrations: sprint.migration module with versioning.
Process:
-
Analytics – study competitors, gather requirements, create prototypes in Figma. Output: technical specification with user stories.
-
Design – UI/UX with design system. Components are reusable.
-
Development – write components with custom templates in
local/templates/. Business logic in local/modules/.
-
Testing – functional, cross-browser, load testing (up to 1000 requests). Critical bugs fixed before launch.
-
Launch – deploy to production, monitoring via UptimeRobot, alerts in Telegram. Fixes for first 48 hours.
Multilingual support and redesign
Full localization via language files lang/ and SITE_ID mechanism. hreflang for each version. Regional versions with different prices and content – IP detection (main.geo) or manual selection. Multidomain – unified management of multiple domains.
Redesign without losing rankings: performance audit (PageSpeed, WebPageTest), SEO (Screaming Frog). New template in local/templates/ with preserved URL structure. 301 redirects only if URL changes significantly. Kernel update, migration to D7 ORM, infoblock restructuring, migration via sprint.migration with Git.
Guarantee and support
We have been working with 1C-Bitrix for 12+ years, completed 500+ projects. Certified developers on staff. Fixed price in contract – no surprises. Warranty period covers code errors. After warranty, subscription packages with SLA (response time 2 hours, resolution 8 hours). 24/7 availability monitoring, alerts in Telegram. Get a consultation and preliminary estimate: contact us via the form on the website or chat – we'll respond within an hour. Order turnkey development – we'll design infoblocks, integrate 1C, and speed up the catalog. If you already have a site on another CMS, order a performance audit and migration to Bitrix.