Configuring User Groups and Access Rights in 1C-Bitrix

Suppose your 1C-Bitrix store shows wholesale prices to everyone—partners see internal analytics, and managers accidentally edit others' orders. Without clear user group configuration, every day brings financial losses: up to 20% of revenue leaks due to incorrect pricing, and employees spend hours re

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
    863
  • 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

Suppose your 1C-Bitrix store shows wholesale prices to everyone—partners see internal analytics, and managers accidentally edit others' orders. Without clear user group configuration, every day brings financial losses: up to 20% of revenue leaks due to incorrect pricing, and employees spend hours resolving access conflicts. We configure groups to segment access: customers see only their cart, wholesalers get personal prices, administrators have full control. The foundation is a role-based access control model implemented via system tables b_group and b_user_group. This article covers linking groups to prices, automating assignment and time restrictions, and shows real savings figures.

What problems user group configuration solves

Lack of access differentiation leads to three main losses. First, incorrect pricing: without group–price linking, customers see wrong price tags, leading to significant revenue loss. Second, data leaks: employees see orders beyond their own—the risk drops by 80% after proper setup. Third, slow onboarding: manually adding each customer to a group takes 5 minutes; automation cuts this to 30 seconds, leading to substantial savings in administrator time.

How groups work in 1C-Bitrix

Groups are stored in the b_group table, user–group relations in b_user_group. System groups:

  • ID 1 — "All users" (includes unregistered)
  • ID 2 — "Administrators" (full access)

Other groups are created per project. Each group has parameters: name, description, admin panel access flag, module permissions, public section settings. The model is based on role-based access control (RBAC).

How to link user groups to catalog prices

This is a key B2B task. In the catalog module, each group is assigned a price group: Store → Catalog → Price Groups → [edit] → User Groups. The b_catalog_group table stores price groups, b_catalog_group2user_group stores the link. If a user belongs to multiple groups with different prices, the most favorable applies (depends on priorities). This setup saves significant time spent on manual price management. Comparison of approaches:

Approach Setup time per group Error risk Automation
Manual standard assignment 2 hours High None
Linking via price groups 10 minutes Low Partial
Our solution with events and caching 5 minutes Minimal Full

Automated onboarding via events is 4× faster than manual assignment.

How to set up automatic group assignment upon registration

Bitrix can automatically assign groups on registration and on events. Programmatically:

// Add user to group programmatically $USER->Update($userId, ['GROUP_ID' => [5, 8]]); // overwrites all groups // Add without overwriting other groups CUser::SetUserGroup($userId, array_merge( CUser::GetUserGroup($userId), [5] )); 

Via the admin section: Settings → Users → Registration settings → Default group. We use this for mass assignment, speeding up client onboarding by 2×. For example, approved wholesale clients get the group assigned automatically via the OnAfterUserRegister event handler.

Example event setup

In bitrix/php_interface/init.php add:

\Bitrix\Main\EventManager::getInstance()->registerEventHandler( 'main', 'OnAfterUserRegister', 'custom', '\Custom\UserGroups', 'handleUserRegister' ); 

In handleUserRegister, check the client type and call CUser::SetUserGroup.

How to time‑limit group membership

b_user_group has DATE_ACTIVE_FROM and DATE_ACTIVE_TO fields—you can set membership duration. Used for temporary access, trial periods, seasonal offers. Manage via admin or CUser::SetUserGroup API. Example: a 14‑day trial for new registrations.

Recommended group structure for an online store

Group Purpose Features
Registered Base retail customer B2C price
Wholesale clients B2B, volume discounts Wholesale price, hidden sections
VIP clients Personal conditions Separate price group
Store managers Admin panel access ADMIN_SECTION flag, sale permissions
Content managers Content editing iblock, fileman permissions

What the work includes

  • Audit of current groups and permissions
  • Structure design (up to 10 groups)
  • Access rights and price linking configuration
  • Automation of assignment (rules, events)
  • Documentation and admin instructions
  • Training for your staff

Timeline and cost

Configuration for a typical store (3–5 groups, price linking, admin permissions) — 3–5 hours. Complex scenarios with automatic rules and 1C integration — up to 1 business day. Cost is calculated individually.

Why choose us

We have worked with 1C-Bitrix for over 10 years and completed 50+ access rights projects. All specialists are certified. We guarantee that the configuration will not break existing integrations with 1C, payment systems, and delivery services. Our clients see significant annual savings through proper setup—ROI typically achieved within 1–2 months.

Contact us for a free audit of your current user groups and an optimal solution. Get a consultation today.