Magento 2 Company Account Management: Multi-User Access & Role Permissions

Set up multi-user company accounts with role-based permissions, credit limits, and shared ordering on Magento 2. Complete guide for B2B wholesale stores.

Magento 2 Company Account Management: Multi-User Access & Role Permissions

Managing B2B Accounts Without Company-Level Structure Creates Chaos

If you run a Magento 2 store that serves wholesale and B2B customers, you already know the problem. Your wholesale buyers are not individuals. They are organizations with purchasing managers, finance directors, warehouse supervisors, and department heads, all of whom need different levels of access to your store. Yet Magento 2 Open Source treats every customer as a standalone account with identical permissions.

The result is predictable. You end up with shared login credentials passed around the office, a security risk that violates basic access control principles. One buyer accidentally places an order meant for approval, and your operations team scrambles to cancel it. A junior employee sees pricing meant only for senior purchasing staff. Your finance team has no way to track which department placed which order, because everything comes through a single account. According to a McKinsey report on B2B commerce, 70% of B2B buyers find the purchasing experience too complicated, and poor account management is a primary contributor to that frustration.

When you cannot organize your B2B customers into company hierarchies with distinct user roles and spending controls, every order becomes a potential problem. You lose auditability. You lose control over who can spend what. You lose the trust that comes from a professional, well-organized buying experience. And you lose deals, because B2B buyers who cannot manage their own team's purchasing through your storefront will find a supplier who lets them.

What Is Magento 2 Company Account Management (and Why Your B2B Store Needs It)

Company account management is the ability to group multiple individual user accounts under a single company umbrella, then control what each user can see and do within that company context. In a B2B setting, this means your customer, not you, manages their own internal team structure. A company administrator at the buyer's organization creates sub-accounts, assigns roles, sets spending limits, and controls the approval flow for orders.

Magento 2 Open Source does not include this capability. Magento Commerce offers a B2B module with company accounts, but it comes with a substantial license cost and a rigid structure that does not fit every business model. If you need flexibility in how company hierarchies are structured, how roles are defined, and how credit limits are managed, you need a purpose-built extension.

The MageRa Company Account extension fills this gap. It provides the full company account infrastructure that B2B buyers expect: multi-user accounts, custom role creation with granular permissions, credit limits per company, user hierarchies with primary contacts and delegated administrators, shared shopping and order management, and support for purchase order workflows. All of this runs on Magento 2 Open Source without requiring a Commerce license.

This is not a feature for every store. If you sell exclusively to individual consumers (B2C), company accounts add unnecessary complexity. But if you serve wholesale buyers, distributors, manufacturers, or any organization where multiple people are involved in the purchasing process, company accounts transform your store from a catalog into a procurement platform. For the complete B2B solution with all 7 extensions, see MageRa B2B Extensions Package.

Key Features of MageRa Company Account for Magento 2

Company Account Creation and Management

You create company accounts through the Magento 2 admin panel with full control over company details: legal name, billing address, shipping addresses, tax identification number, and contact information. Each company account acts as an umbrella for all users belonging to that organization. You can manage companies from a dedicated grid under Stores > Company Accounts > Companies, where you see every company at a glance with its status, credit utilization, and user count.

Admin company management grid

Screenshot of the Company Account management grid in Magento 2 admin showing company details, credit limits, and user counts.

Multi-User Accounts with Individual Permissions

Every company can have multiple users, each with their own login credentials and profile. This eliminates the dangerous practice of sharing passwords. A company with 50 buyers gets 50 individual accounts, all linked under the same company. Each user's orders, quotes, and activity are tracked individually, giving you a complete audit trail of who did what.

Role-Based Access Control with Custom Roles

The role management system lets company administrators define exactly what each user can do. Create a "Buyer" role that can browse the catalog and place orders up to a certain value. Create an "Approver" role that cannot place orders but can approve or reject orders submitted by others. Create a "Viewer" role that can see order history and product details but cannot interact with the cart. You define the roles; the company administrator assigns them. This flexibility means your extension adapts to each customer's organizational structure rather than forcing them into a rigid template.

Credit Limit Management

Every company account can be assigned a credit limit. This is the maximum outstanding balance a company can carry before new orders are blocked or require manual approval. Credit limits give your finance team control over exposure while giving buyers the freedom to place orders without prepayment. As orders are placed and invoices are paid, the available credit adjusts automatically. You can set different credit limits for different companies based on their history, relationship, and financial reliability.

User Hierarchy with Primary Contacts

Each company account has a designated primary contact, typically the purchasing manager or business owner who initially registered. The primary contact can delegate administrator privileges to other users, creating a user hierarchy that mirrors the buyer's actual organizational chart. This delegation model means your support team deals with one authorized contact per company for administrative requests, while the company manages its own internal structure day to day.

Shared Shopping and Order Management

Company users with the right permissions can share shopping carts and order histories. A buyer creates a quote or shopping cart, and their manager reviews and approves it from their own account. Shared order visibility means the entire purchasing team can track the status of company orders without calling your support line. This collaborative buying experience is what separates a professional B2B platform from a consumer store with wholesale pricing.

Purchase Order Workflow Support

B2B procurement processes often require formal purchase orders. The extension supports PO number entry at checkout, linking each Magento 2 order to the buyer's internal purchase order reference. This is essential for organizations that require PO numbers for their accounts payable process, and it makes invoice reconciliation straightforward for both your customer and your finance team.

How to Set Up Company Account Management in Magento 2

Step 1: Install the Extension and Prerequisites

Before installing the Company Account extension, ensure your system meets the requirements: Magento 2.4.6 or higher, PHP 8.3 or above, and the MageRa Base module. You also need the MageRa B2B Registration extension installed, as company accounts integrate with the B2B registration workflow. If you have not set up B2B registration yet, review the B2B Registration guide for installation steps.

Install via Composer:

composer require magera/module-company-account
php bin/magento module:enable MageRa_CompanyAccount
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento cache:flush

Step 2: Configure General Settings

Navigate to Stores > Configuration > MageRa > Company Accounts. Here you enable the extension (Enable Company Accounts) and set global defaults: the Default Credit Limit for new companies, whether to Allow Sub-User Registration and the Max Sub-Users Per Company, and whether to Require Admin Approval when a company account is created.

Step 3: Create Your First Company Account

The extension adds a dedicated top-level Company Accounts entry in the admin sidebar with three child grids: Companies (company_account/company/index), Company Users (company_account/user/index), and Company Roles (company_account/role/index). Open Company Accounts > Companies and click "Add New Company." Fill in the company details: legal name, email address, billing and shipping addresses, tax ID, and the primary contact's information. Set the company's credit limit (it pre-fills from the Default Credit Limit you configured) based on their financial profile. Save the company, and the primary contact receives an email with instructions to set their password and begin adding team members. The Companies grid lets you filter and edit existing accounts, while the Company Users grid gives admins a single view of every sub-user across all companies for support and auditing.

Step 4: Define Company Roles

Open Company Accounts > Company Roles to create the roles available to companies. Common roles include Company Admin (full access), Buyer (place orders, view catalog), Approver (approve orders above a threshold), and Viewer (read-only access). Each role is created and edited through the Role grid (company_account/role/save), and company administrators can further customize these roles or create additional ones specific to their organization.

Step 5: Test the Full Workflow

Before going live, test the complete workflow end to end. On the storefront, a company administrator manages their organization from the customer account area: the company dashboard lives at company-account/company/dashboard, the team roster at company-account/company/users, and new sub-users are created through company-account/company/saveUser (subject to the Allow Sub-User Registration and Max Sub-Users Per Company limits you set). Register a company account, verify the admin approval step if Require Admin Approval is on, log in as the company administrator, create sub-users with different roles, place orders as a buyer, approve orders as an approver, and verify that credit limits are enforced correctly. Teams building a portal or PWA can drive the same operations over REST: GET /V1/magera/company/mine returns the signed-in customer's company, GET /V1/magera/company/mine/users lists its sub-users, and POST /V1/magera/company/mine/users adds one; admins manage roles via GET/POST /V1/magera/company/roles. Check that Catalog Permissions work alongside company accounts if you are restricting product visibility by customer group.

MageRa Company Account for Magento 2

  • Built for B2B: multi-user company accounts with role hierarchies, credit limits, and shared ordering
  • Granular permissions: create unlimited custom roles with specific capabilities per role
  • Credit management: set and track credit limits per company with automatic balance adjustment
  • User hierarchy: primary contacts with delegation authority mirror real organizational structures
  • Shared workflows: collaborative cart management, shared order history, and PO support
  • Compatibility: Magento 2.4.6, 2.4.7, 2.4.8, 2.4.9 (Open Source and Commerce)
  • Requires: MageRa Base, MageRa B2B Registration extension
  • https://magera.ca/magento-2-company-account.html
Storefront company user dashboard

Screenshot of the company user dashboard on the Magento 2 storefront showing order history, team members, and credit information.

Best Practices for Managing B2B Company Accounts

Define Clear Role Templates Before Onboarding Customers

Create a standard set of roles (Admin, Senior Buyer, Buyer, Viewer) with well-defined permissions before you start onboarding B2B customers. This gives company administrators a starting framework and reduces support requests about what each role can do. You can always customize roles for specific customers later, but having defaults speeds up the onboarding process significantly.

Set Conservative Credit Limits Initially

When you create a new company account, set the credit limit conservatively based on what you know about the customer. You can always increase it as trust builds and payment history demonstrates reliability. It is far easier to raise a credit limit than to recover funds from a company that exceeded what they could pay. Review credit utilization monthly and adjust limits proactively for your best accounts.

Require Admin Approval for New Company Accounts

Do not let company accounts activate automatically. Use the admin approval workflow to verify each new company before granting access to B2B pricing, restricted catalogs, and credit. This verification step takes minutes but prevents fraudulent or unqualified accounts from accessing wholesale pricing. You can verify tax IDs, check business registrations, and confirm trade references during this approval step.

Train Company Administrators Early

The company administrator is your primary point of contact within each organization. Invest time in training them on how to create user accounts, assign roles, and manage their team. A well-trained company administrator handles 90% of their own user management, reducing your support burden. Provide a one-page quick-start guide they can share with their team.

Audit Company Accounts Quarterly

Review your company accounts every quarter. Check for inactive users who should be deactivated, companies that are approaching their credit limits, and roles that may need adjustment. This is also a good time to identify upsell opportunities: companies with growing user counts may benefit from additional extensions like Wholesale Fast Order or Request for Quote functionality.

Why Company Accounts Are Different from Magento 2 Customer Groups

A common confusion is the difference between customer groups and company accounts. Magento 2 customer groups control pricing, tax classes, and catalog visibility at a broad level. A wholesale customer group gets wholesale pricing. A retail customer group gets retail pricing. This is a one-dimensional classification.

Company accounts operate on top of customer groups. A company account belongs to the wholesale customer group for pricing purposes, but it adds organizational structure: multiple users, internal roles, spending limits, and approval workflows. Think of customer groups as the "what" (what pricing and catalog they see) and company accounts as the "how" (how their organization interacts with your store). You need both for a complete B2B setup.

Conclusion

B2B buying is a team activity, and your Magento 2 store needs to reflect that reality. Company account management transforms your storefront from a single-user catalog into a multi-user procurement platform where buyers, approvers, and administrators each have the access they need and nothing more. With role-based permissions, you eliminate shared passwords and unauthorized orders. With credit limits, you control financial exposure while giving buyers purchasing flexibility. With shared ordering and PO workflows, you embed your store into the buyer's procurement process rather than fighting against it.

MageRa Company Account for Magento 2 delivers all of this on Open Source, without requiring a Commerce license or expensive B2B module. Install it, configure your roles and credit policies, and start onboarding your wholesale customers into a buying experience that matches how they actually work. Visit the MageRa Company Account page to get started today.

FAQ

Q1: Can company administrators create their own user accounts, or do I have to create them from the admin panel? A1: Company administrators with the appropriate permissions can create, edit, and deactivate user accounts for their company directly from the storefront. You do not need to intervene for routine user management. The administrator assigns roles from the predefined set you have configured, and new users receive invitation emails to set their passwords. You retain full oversight through the admin panel, where you can view all users across all companies and intervene when necessary.

Q2: How does credit limit enforcement work when a company user tries to place an order that would exceed the limit? A2: When a buyer attempts to check out and the order total would push the company's outstanding balance above the credit limit, the extension blocks the order from completing. The buyer sees a notification explaining that the order exceeds available credit and that they should contact their company administrator or your store's support team. You can configure the behavior to either block completely or route the order into an approval queue where an administrator on your side can approve or reject the over-limit purchase.

Q3: Does the Company Account extension work with other MageRa B2B extensions like Catalog Permissions and Hide Price? A3: Yes. The Company Account extension integrates with the full MageRa B2B suite. When combined with Catalog Permissions, you can restrict product and category visibility at the company level, showing different catalogs to different organizations. With Hide Price, you can hide pricing from users within a company who have viewer-only roles while showing negotiated rates to buyers and approvers. With B2B Registration, new company accounts flow through the approval process before being activated. All extensions share the same customer group and role infrastructure, so they work together without conflicts.

Internal Links

End of post

Comments (0)

Be the first to comment.

Ready to ship better Magento 2 stores?

64 premium extensions, one quality bar. Composer install, 30-day money-back guarantee.