1C-Bitrix Website for Accounting Firms with Calculator

An accounting company with 500 active clients was losing 40% of leads at the first call stage. The reason: clients couldn't see tariffs and feared hidden fees. Managers spent up to 2 hours per day manually preparing commercial proposals. The solution: a website on 1C-Bitrix with a public cost calcul

Our competencies:

Frequently Asked Questions

An accounting company with 500 active clients was losing 40% of leads at the first call stage. The reason: clients couldn't see tariffs and feared hidden fees. Managers spent up to 2 hours per day manually preparing commercial proposals. The solution: a website on 1C-Bitrix with a public cost calculator, personal account, and integration with 1C via CommerceML. In the first month after launch, the number of requests grew by 60%, and processing time was cut by three times. The platform was chosen not by chance: native integration with 1C:Accounting via CommerceML and the built-in Highload-infoblock mechanism for tariff reference books allow handling up to 10,000 calculator requests per day. Manager time savings reach 40%, and the average client acquisition cost decreases by 25% after implementation.

We don't just layout templates — we design a data architecture that scales with the growing client base. At the core: Highload-infoblocks for tariffs, ORM queries without unnecessary overhead, and caching via \Bitrix\Main\Data\Cache. The client portal is built on standard Bitrix components with group-based document filtering, ensuring data security. Integration with 1C is configured via REST API — report statuses updates occur every hour without manual intervention. Contact us to discuss your project.

How to Increase Conversion on an Accounting Company Website?

The calculator is the main conversion element. An entrepreneur inputs parameters and gets an estimated cost without calling. This removes a barrier and generates qualified leads: a manager receives a request with already filled data. But for the calculator to work fast and accurately, proper data architecture is needed.

Tariff structure in Highload-infoblock

The tariff grid is stored in the Highload-infoblock TariffAccounting. Fields: UF_TAX_SYSTEM (list: OSNO, USN 6%, USN 15%, patent, AUSN), UF_OPERATIONS_FROM/TO (operation range), UF_EMPLOYEES_FROM/TO (employee range), UF_BASE_PRICE (base cost), UF_PRICE_PER_OPERATION (surcharge for excess operations), UF_PRICE_PER_EMPLOYEE, UF_VAT_MULTIPLIER (coefficient for VAT), UF_FOREIGN_TRADE (surcharge for foreign trade). Selection of ranges via ORM TariffAccountingTable::getList() with filters.

Field Type Description
UF_TAX_SYSTEM list Tax system: OSNO, USN 6%, USN 15%, patent, AUSN
UF_OPERATIONS_FROM number Lower bound of monthly operations range
UF_OPERATIONS_TO number Upper bound
UF_EMPLOYEES_FROM number Lower bound of employee count
UF_EMPLOYEES_TO number Upper bound
UF_BASE_PRICE number Base monthly service cost
UF_PRICE_PER_OPERATION number Additional charge per excess operation
UF_PRICE_PER_EMPLOYEE number Additional charge per excess employee
UF_VAT_MULTIPLIER float Coefficient for VAT payers
UF_FOREIGN_TRADE number Surcharge for foreign trade operations

Calculation logic Algorithm of the handler /ajax/calc_accounting.php:

  1. Get parameters: tax system, monthly operations count, employee count, presence of foreign trade and VAT.
  2. Select tariff via TariffAccountingTable::getList() with filter by system and ranges.
  3. Calculate: base cost + (operations above norm × UF_PRICE_PER_OPERATION) + (employees above norm × UF_PRICE_PER_EMPLOYEE) + UF_FOREIGN_TRADE; result multiplied by UF_VAT_MULTIPLIER if client is a VAT payer.
  4. Return JSON with total and breakdown.

Interface and caching

The form is a step-by-step wizard with 4 steps: choose tax system (radio buttons with explanations), sliders for operations and employees, checkboxes for additional parameters, result with request button. All parameters are passed to CRM via a web form, creating a lead with full context.

Tariffs are cached for 24 hours via \Bitrix\Main\Data\Cache. When updated in the admin panel, the cache is cleared via OnAfterUpdate of the Highload entity. This ensures response times under 0.05 seconds with 500+ records.

How is the architecture of Highload-infoblocks set up? Highload-infoblocks are entities stored in separate tables and accessible via ORM DataManager. Their key advantage is direct SQL without extra joins typical of regular infoblocks. In the project, a high-load table with hundreds of thousands of records is used, but range queries are executed in milliseconds thanks to indexes on numeric fields.

Service Catalog and Client Portal

Service Catalog. Infoblock with sections by areas: accounting, tax reporting, audit, business registration, HR accounting. Each service contains a detailed description, document list, and linkage to tariffs.

Client portal. Authentication via bitrix:system.auth.form. Document workflow: a manager uploads documents with user group binding — the client sees only their own. Report status with color indication. An agent daily checks the tax calendar and sends emails 10 and 3 days before deadlines.

Blog with legislative changes. Articles with Article microdata, properties: 'Author' (link to specialist infoblock), 'Regulatory act', 'Effective date'. Automatic suggestion of related changes and a CTA for consultation.

Integration with 1C:Accounting. Custom exchange via REST API: from 1C, completed work certificates are uploaded to the 'Client Documents' infoblock, report statuses are updated hourly, new clients from Bitrix24 are uploaded to 1C as counterparties.

Why are Highload-infoblocks critical for the calculator?

Selecting a tariff by a combination of parameters requires precise SQL queries with ranges. Highload-infoblock provides direct ORM DataManager access without the overhead of regular infoblocks, which yields a 10x performance boost. This is confirmed on projects with 1000+ tariff records. If we used regular infoblocks, the calculator response time would increase from 0.02 to 0.3 seconds — critical for user experience.

What integrations do we set up?

Besides 1C, we integrate the website with CRM and payment systems. YooKassa and Sber allow online payments, while ATOL Online and OFD automate fiscalization. This gives the client a unified personal account for managing orders and reports.

What is included in development and timelines

We provide a full package: architectural technical specification and database schema (infoblocks, HL-blocks, migrations), component templates (catalog, calculator, client portal), documentation for REST API and 1C integration, content filling instructions, repository access, editor training (2 hours online), and 3-month warranty support.

Stages and timelines

Stage Content Duration
Analysis Tariff audit, service structure, calculator technical specification 1.5 weeks
Design Prototypes, calculator logic, HL-block schema 1 week
Design Mockups, responsiveness, calculator components 1.5 weeks
Core development Infoblocks, templates, client portal 3 weeks
Calculator Backend and frontend, testing 1.5 weeks
1C integration Exchange setup, synchronization testing 1.5 weeks
Content and testing Filling, testing, SEO 1 week
Launch Deployment, monitoring, documentation handover 3 days

Total duration from 10 to 12 weeks depending on integration complexity. Cost is calculated individually. Order website development with a calculator and get a precise estimate. Get a consultation on your project — we will be happy to answer your questions.