Developing an Agricultural Enterprise Website on 1C-Bitrix
We build agricultural enterprise websites on 1C-Bitrix that combine a public storefront with certificates and a private B2B portal for wholesale buyers. When standard e-commerce fails to cover the specifics — GOST compliance, personalized pricing, 1C synchronization, and document management — we create a system where every element works for the business. On average, portal maintenance costs drop by 30% of the annual IT budget (from 300,000 to 500,000 RUB per year for a medium-sized enterprise), and clients reduce manual work by 250 hours per month. Below is an engineering focus on the B2B part and catalog.
Product Catalog: Infoblock with Industry-Specific Features
The catalog structure for an agricultural enterprise differs from typical e-commerce. Categories are formed not by marketing but by OKPD-2 product groups: grains (wheat, barley, rye, oats, corn), oilseeds (sunflower, rapeseed, soybean, flax), dairy and meat products. Each infoblock element includes properties:
| Property | Type | Example Value |
|---|---|---|
GOST_TU |
String | GOST 9353-2016 |
QUALITY_CLASS |
List | 1, 2, 3, 4, 5 grade |
PROTEIN_CONTENT |
Number | 12.5% |
MOISTURE |
Number | 14% |
CERTIFICATES |
File (multiple) | PDF certificates of conformity |
HARVEST_YEAR |
Number | Current harvest season |
STORAGE_LOCATION |
Link to HL | Elevator, warehouse |
MIN_ORDER_TONS |
Number | 20 |
Quality certificates are displayed on the detail page with download capability. For grains, data freshness is critical — protein, moisture, and gluten values are updated from lab protocols via 1C integration.
Farm and Warehouse Map
Geolocation — via Yandex.Maps API. The 'Objects' infoblock stores coordinates, type (field, farm, elevator, workshop, office), address, and responsible person's contacts. Different icons are used per type; clicking opens a card with photos and contacts. For holdings with dozens of farms, the map becomes a key navigator: a partner sees the nearest warehouse and can place an order for delivery from there.
Seasonal Content
The cyclical nature of agribusiness means content changes with the seasons. The homepage features a rotating block with the current phase: sowing, vegetation, harvesting, storage. Implementation — 'Activity by date' property in the banner infoblock. Analytics (crop forecast, market review, price dynamics) are posted in news tagged by crop.
How to Set Up Personalized Price Lists for Each Counterparty?
This is the core engineering task of the B2B portal. Each counterparty sees their own terms: personalized prices, available volumes, order history. We use standard Bitrix authorization with extended user groups:
- B2B_BUYER — basic catalog access
- B2B_MANAGER — order placement, contracts
- B2B_FINANCE — mutual settlements, reconciliation statements
- B2B_ADMIN — management of counterparty employees
Each user is linked to a counterparty via UF_CONTRAGENT_ID, referencing the 1C directory.
The price type mechanism of the catalog module allows creating a price type for each counterparty, but with 200+ counterparties it becomes cumbersome. Our approach: 1C generates a price list per counterparty, exported to a Highload-block hl_b2b_prices with fields:
| Field | Type | Purpose |
|---|---|---|
UF_CONTRAGENT_ID |
Number | Counterparty ID |
UF_PRODUCT_XML_ID |
String | Product XML_ID |
UF_PRICE |
Number | Price per unit |
UF_CURRENCY |
String | BYN / RUB / USD |
UF_MIN_VOLUME |
Number | Minimum volume |
UF_VALID_FROM |
Date | Start date |
UF_VALID_TO |
Date | End date |
UF_UPDATED_AT |
Datetime | Sync timestamp |
The component retrieves prices from the HL-block for authenticated users; unauthenticated users see 'Price on request'.
Steps to configure the B2B portal:
- Create user groups and link them to counterparties.
- Deploy the Highload-block
hl_b2b_priceswith required fields. - Set up export of personalized price lists from 1C via an HTTP service.
- Write a component that substitutes prices based on the user.
Why Is Standard 1C Exchange Inefficient for a B2B Portal?
Standard CommerceML is designed for catalog and base prices. For personalized price lists, warehouse stock, mutual settlements, and order loading, custom solutions are required. A custom HTTP service in 1C generates XML with counterparty-specific prices 10 times faster than standard exchange for arrays of 500+ items. This saves clients up to 40% of order processing time, amounting to from 200,000 RUB per month. Schedule: stock — every 30 minutes (agent CAgentB2BStockSync), price lists — once daily at night, mutual settlements — once daily, orders — in real time.
Document Management: In the personal account, the counterparty sees contracts, invoices, reconciliation statements. Documents from 1C are uploaded as PDF to hl_b2b_documents with fields: type, number, date, file, status. For legally significant document flow — integration with Diadoc or SBIS via API.
Purchase Request: A form with product selection, volume (minimum check), shipping warehouse, date, delivery basis (EXW/FCA/CPT per Incoterms). After submission, data goes to Bitrix CRM (lead/deal) and to 1C as a purchase order.
What's Included in Development
When ordering an agricultural enterprise website, you get:
- A fully configured public catalog with industry-specific infoblocks
- A B2B portal with personalized prices, orders, and document management
- 1C integration (catalog, prices, stock, orders, mutual settlements)
- Farm and warehouse map on Yandex.Maps
- Dashboard with crop and livestock indicators (optional)
- Documentation, employee training, and warranty support
Implementation Stages
| Stage | Content | Duration |
|---|---|---|
| Analysis | Business process audit, data mapping 1C → Bitrix | 2–3 weeks |
| Design | Infoblock structure, HL-blocks, API contracts for 1C | 2 weeks |
| Public part | Catalog, map, seasonal content, responsive layout | 3–4 weeks |
| B2B portal | Personal account, prices, orders, document management | 5–6 weeks |
| 1C integration | Exchange of catalog, prices, stock, orders | 3–4 weeks |
| Testing | Functional, load, exchange testing with real data | 2 weeks |
| Launch | Data migration, training, go-live, monitoring | 1 week |
Hosting Technical Requirements
We recommend a VPS/dedicated server with PHP 8.1+, MySQL 8.0 or MariaDB 10.6, at least 4 GB RAM, SSL certificate, cron with 1-minute interval for agents. A dedicated server is required for active 1C exchange.
We'll evaluate your project in one day — contact us. Get a consultation on 1C and Bitrix24 integration from our engineer.

