Imagine: a carsharing service is launched, but during peak load the car map lags, driver verification drags on for hours, and tariffs cannot be changed quickly. Sounds familiar? Our team of 1C-Bitrix certified developers has over 12 years of experience and has completed 100+ projects for transport and logistics companies. In this article — architectural solutions and real numbers to help avoid these pitfalls.
Why does carsharing need 1С-Bitrix?
1С-Bitrix provides ready-made modules for infoblocks, users, and payments, accelerating development by 2–3 times compared to a custom solution. Highload-blocks and tagged caching allow handling up to 10,000 requests per second on a typical server, as documented in Bitrix official resources. This is especially critical for the real-time map: Redis with a 15-second TTL reduces database load by 10 times. Clients typically save 30% on total cost and reduce time-to-market by 2-3 months.
How to build a real-time car map?
The map is the central interface of the service. Coordinates are updated by a telematics service (GPS trackers every 10–30 seconds). Bitrix does not process telematics — that's a separate backend service. The scheme:
- The telematics service writes coordinates, status, and fuel level to Redis or PostgreSQL.
- A custom controller in
/local/routes/fetches data from the storage and returns JSON with cars in a given bounding box. - The frontend (Yandex.Maps JS API) requests the API when loading and moving the map. It receives an array of objects with id, coordinates, class, model, fuel, tariff group, status.
- Markers update without reloading. Free cars are active, busy cars are not displayed.
Optimization: caching in Redis with a 15-second TTL; for large volumes — PostGIS with spatial indexes (ST_Within). Client throttling — request no more than once every 10 seconds and only when the map moves. The performance difference between Redis and PostgreSQL is clear: Redis is 2x faster on reads but less reliable — so we use Redis for caching and PostgreSQL for storing trip history.
| Feature | Redis (Cache) | PostgreSQL (Permanent) |
|---|---|---|
| Read speed | 2x faster | Slower |
| Durability | Volatile | Persistent |
| Use case | Real-time map | Trip history |
Telematics integration details
The telematics service ingests data via REST API calls. We use event-driven architecture with RabbitMQ for processing updates. Coordinates are stored in Redis with a TTL equal to the reporting interval. For historical analysis, data is archived to PostgreSQL with hourly aggregation.How to implement multi-step registration with driver license verification?
The standard registration module is not suitable — you need a custom component with stage separation.
Step 1: Basic data collection. User enters name, phone, email. Step 2: SMS verification. A code is sent and verified via SMS gateway. Step 3: Document upload. User uploads photo of driver license and passport via user UF-fields. Step 4: Verification. Automatic check via the Traffic Police API (or manual moderation). As a result, the user completes registration in 3–5 minutes, and the verification status is sent via SMS.
What is payment preauthorization and how to implement it?
Before the trip, an amount is held on the card. At the start of the rental, a preauth request is sent via the payment gateway API (CloudPayments, YooKassa, Tinkoff), and the identifier is saved. At the end — a capture request for the actual amount; on cancellation — void. Implementation via the sale module with a custom handler. This reduces the risk of unpaid trips by 30% compared to post-authorization.
Tariff grid on Highload-blocks: why is it convenient?
Tariffs are stored in a HL-block Tariffs with fields: name, car class, period (day/night), day of week (weekday/weekend), geographic zone (linked to a HL-block of zones with polygons), cost per minute/hour/day, minimum cost, cost per idle minute. Geographic zones — a separate HL-block with a JSON field of boundary coordinates. Cost calculation: determine zone by GPS, period, day of week, then select tariff by combination. When crossing periods or zones, the calculation is split into intervals. On the public page, tariffs are displayed as a dynamic table, updated when rates change in the admin panel (tagged caching).
What is included and how long does it take?
We assess the project in 1 day and propose an architecture that can withstand thousands of users. Timelines vary from 3 to 8 weeks depending on integration complexity. Deliverables include:
- Architecture design document and technical specification
- Setup of infoblocks and HL-blocks
- Custom components: registration, personal account, map
- Integration with telematics, payment gateways, and 1C
- API and administration documentation
- Operator training session
- One month of post-launch support
Our carsharing website development on 1C-Bitrix includes seamless carsharing integration with 1C, REST API telematics, and highload Bitrix site optimization. We leverage Bitrix's in-memory caching, lazy loading, and event-driven architecture for telematics data ingestion to ensure ACID data consistency. Contact us for a consultation — we will assess your project and suggest the optimal solution. Order carsharing website development on 1С-Bitrix — get a reliable platform that grows with your business.

