B2B Portal Development on 1C-Bitrix Turnkey

B2B Portal Development on 1C-Bitrix Turnkey A standard Bitrix online store doesn't suit wholesale sales: one price for everyone, a public catalog, no credit limits, and no order approval workflow. When a manager spends 40 minutes manually processing each order via CRM, and a dealer calls to check

Our competencies:

Frequently Asked Questions

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1415
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Website development for FIXPER company
    995
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Development based on Bitrix, Bitrix24, 1C for the company Development of an Online Appointment Booking Widget for a Medical Center
    733
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    862
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    772
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    1134

B2B Portal Development on 1C-Bitrix Turnkey

A standard Bitrix online store doesn't suit wholesale sales: one price for everyone, a public catalog, no credit limits, and no order approval workflow. When a manager spends 40 minutes manually processing each order via CRM, and a dealer calls to check stock, it's a sign of a missing B2B portal. We design the architecture, configure pricing, integrate with 1C, and implement approval business processes. Contact us to evaluate your project.

How a B2B Portal Fundamentally Differs from a Public Store

Architecturally — different authorization logic, pricing model, and ordering scenario. A B2B portal on Bitrix is implemented 3-5 times faster than a custom solution with comparable functionality.

Authorization and user groups. In bitrix:sale, a user is tied to one group. For B2B, a hierarchy is needed: company → contact person → role (buyer, accountant, director). Standard groups are flat and unsuitable. This is implemented via a custom module with a company_user link table and D7 ORM (Bitrix\Main\ORM\Data\DataManager). Action rights are set via a bitmask in a Highload role block.

Price types. The catalog module supports multiple price types: CATALOG_GROUP_ID in the b_catalog_price table. For B2B, this is mandatory — each user group gets its own price type. Individual contract prices are implemented via the OnSaleOrderBeforeSaved event handler or a custom price provider.

Real-time stock catalog. B2B buyers order in large quantities and check availability before ordering. Stock data from b_catalog_store_product is updated during synchronization with 1C via CommerceML. If synchronization runs once per hour, the client sees outdated data. Solution: 1C REST API + incremental update via CCatalogStoreProduct::Update(). Saves managers up to 40 hours per month.

How to Organize Authorization on a B2B Portal?

For B2B, a custom authorization module is needed, implementing a "Company — Contact Person — Role" hierarchy with permission separation. This allows, for example, giving the accountant access to financial documents but not orders. The 1C-Bitrix commercial platform provides D7 ORM for building such relationships.

Key Modules and Components

  • sale module — the basis for cart and orders. In B2B it is extended: we add statuses (Pending, Approved, Rejected), configure business processes via bizproc module.
  • catalog module — pricing, SKUs, warehouse management. CatalogGroup and DiscountCoupon are mandatory.
  • crm module (if using Bitrix24) — synchronization of portal orders with CRM deals via REST API crm.deal.add / crm.deal.update.
  • Personal account — order history with repeat, current orders, debt, documents (invoices, PDF), contact person management.

Integration with 1C

Standard exchange via CommerceML covers products, prices, warehouses, orders. But it does not cover:

  • Credit limits and debt — exported via separate XML or 1C REST service. On Bitrix side — a custom Highload block b2b_credit_limits.
  • Documents — invoices and waybills stored in 1C. The portal requests the list via REST, caches in /upload/b2b/docs/ with TTL 24 hours.
  • Specifications — individual contract items, stored in a Highload block linked to the company.

Important: do not break the standard CommerceML exchange. Custom fields and logic — via events OnBeforeCatalogImport1C, OnSuccessCatalogImport1C, separate tables.

Performance Under Load

A B2B portal with 500+ active companies and peak load requires:

  • Tagged catalog cache: CIBlock::clearIblockTagCache($iblockId) when stock updates.
  • Alternative for personal prices: cache by key user_group_price_{groupId}_{productId}.
  • Redis sessions for load balancing.
  • Elasticsearch for catalog search instead of the search module.

Development Stages

Stage Content Duration (weeks)
Analytics Role schema, ordering scenarios, 1C integration map 2-3
Database Design Highload blocks, D7 entities, pricing schema 1-2
Backend Authorization module, pricing, 1C integration 4-8
Personal Account Orders, documents, company management 3-5
Order Approval Bizproc workflows, notifications 1-3
Testing Load, acceptance, integration 2-3

Total: 12-22 weeks depending on 1C integration complexity.

Typical Errors and Their Solutions

Error Solution
Storing personal prices in session Use Redis or database
1C sync blocks the site Incremental exchange, only changed items
Approval bizprocs in init.php Extract to a separate module with configurable rules

Step-by-Step Guide: How 1C Integration Is Done

  1. Configure CommerceML on the 1C side: set the schedule for exporting products, prices, stocks.
  2. Create a REST service in 1C to transfer credit limits and documents.
  3. Implement Bitrix event handlers (OnBeforeCatalogImport1C, OnSuccessCatalogImport1C).
  4. Test exchange on a test environment.
  5. Deploy to production and monitor.

What's Included

  • Full technical documentation (architecture, DB schema, API contracts).
  • Source code of custom modules with a license to use.
  • Access to dev and prod environments, repository.
  • Administrator training (up to 8 hours) and user manuals.
  • 6-month warranty support with 4-hour response time.

Ready to discuss your project? Contact us for a consultation. Order a turnkey B2B portal development and get a cost and timeline estimate.