Custom Magento B2B Organizational Module

Posted by Navarr Barnier

September 21, 2016 | 10:30 AM

Share this blog on:     

magento_b2b_module.pngA recent client wanted to implement Magento for their B2B eCommerce site, and while Magento is a powerful eCommerce software, it is not inherently optimized for B2B. In order to maximize Magento for this company, our team turned to our custom B2B organizational module. 

The Briteskies B2B Organizational Module

One primary difference between B2B and B2C eCommerce is that B2B customers tend to have different organizational needs than B2C customers. For example, a B2C eCommerce customer is typically just one person shopping for themselves. A B2B customer, however, can be one or a team of people either researching or purchasing items for an organization. This module allows the B2B site to organize customers accordingly.

Using the module, our team implemented the ability to organize users, orders, and addresses outside of a single user. Typically, in Magento, a user can place orders and has various shopping and billing information associated with them. With the B2B module, an address can be kept on record along with the multiple people who correspond with the address. So if a company’s purchasing team is made up of four people, all four of those people can associate themselves with the same billing and shipping information.

This process ties users together and allows them to share addresses, pricing, and more information across their organization. 

What Magento Offers

Out of the box, Magento allows customers to be sorted into groups. This manual process puts a user in a group, which can then be used for things like tier pricing. However, a user can only be placed in one group, and groups cannot share information like addresses or order history. Instead, the customer database is made up of a bunch of unrelated users.

Customizations and Permissions

In order to make this work, our team had to create some customizations within Magento. Other than the existence of the new organization model, new entities called organization and organization address were created. From there, the checkout needed to be modified so that it pulled addresses from the user’s organization. Using that information, the Magento checkout is able to determine a billing address, if the organization has a designated one in the database.

In the case of this client, all address information was loaded into Magento from SAP ERP, allowing customers to select their shipping address after the module determines their required billing address.

Additionally, our team wrote both SOAP and REST APIs, which allow Magento and other systems to create, modify, delete, or hide all entities, and make any integrations with an ERP much easier.

Another requirement for this B2B client was a permissions structure within the organizations. Our team established permissions so that one person in the organization assigns permissions to everyone else in the group. From there, users’ functionality and view of content, pricing, or orders is based on their permissions. This allows certain members of an organization to be able to place or approve orders, while others can simply research or add to cart.

With these customizations, our client is now able to offer their B2B customers a more modern and easy-to-use eCommerce site. 

Do you have a B2B eCommerce problem that needs an expert opinion? Contact our team of certified Magento developers.

New Call-to-action

Topics: Magento, B2B

About Navarr Barnier

Navarr is a Magento Developer for the Briteskies team. His professional interests include the semantic web and ways to improve user experience beyond the web page. Outside of the office, Navarr enjoys playing Rocket League, helping to manage a Minecraft network, and spending time with his daughter, Charlotte.


Subscribe to Email Updates

New Call-to-Action

Contact Us


Recent Posts