Magento 2 extension sub accounts / sublogins

  • Admin - Sublogin configuration 1
  • Admin - Sublogin configuration 2
  • Admin - Sublogin configuration 3
  • Admin - Sublogin configuration 4
  • Admin - Sublogin configuration 5
  • Admin - Sublogin configuration 6
  • Admin - Sublogin create 1
  • Admin - Sublogin create 2
  • Admin - Sublogin create 3
  • Admin - Sublogin created
  • Admin - Customer edit sublogin tab
  • Admin - Create sublogin budget - 1
  • Admin - Sublogin budget created - 1
  • Admin - Create sublogin budget - 2
  • Admin - Sublogin budget created - 2
  • Admin - Create sublogin budget - 3 - Error
  • Admin - Create sublogin budget - 4
  • Admin - Sublogin budget created - 4
  • Admin - Create sublogin budget - 5
  • Admin - Sublogin budget created - 5
  • Admin - Create subogin acl
  • Admin - Subogin acl created
  • Frontend - Customer add subogin 1
  • Frontend - Customer add subogin 2
  • Frontend - Customer add subogin 3
  • Frontend - Customer added sublogin
  • Frontend - Customer add subogin budget
  • Frontend - Customer added budget for subogin
  • Frontend - Customer is checking sublogin order which requires approval
  • Frontend - Customer approved sublogin order
  • Frontend - Sublogin login screen
  • Frontend - Sublogin order approval notice
  • Frontend - Sublogin per order amount limit
  • Frontend - Sublogin yearly amount limit

Short description

You need a possibility to handle sub accounts on your Magento B2B store? Our solution sublogin will fit your needs! Create child accounts under the parent account (main account) in Magento and use them e.g. as employee logins which have seperate data from main account in Magento. You can define own login credentials, address data, access levels through our own ACL implemention for the frontend (for example checkout). Also, you are able to restrict single sublogins to make a complete order. Instead, the order needs to be approved by the main account. Furthermore, use our budget management tool to assign budgets (per order, daily, monthly and yearly) - even for the future - for all sublogins seperately.

Functional overview

  • Add, edit and delete sub logins on a user account
  • Seperate carts for all sub-logins
  • Login in the frontend as a sub login using the sub logins email address
  • Login in the frontend as a sub login using the sub logins customer ID (extension customer ID required)
  • Email notification if a new sub login is created
  • Order approval for sublogin orders - main account needs to approve the orders
  • Powerful email management, incl. BCC receivers
  • Define different email templates (e.g. for each store)
  • Account refreshing email when a sub login logins in and the account is already deactivated
  • Expiration dates for sub logins can be defined (optionally - access can be time unlimited)
  • Renewal interval can be set (in days)
  • Simple renewal over an email (like forgot password in Magento)
  • Restrict sub login to just view his own orders in customer area (depends on system configuration value)
  • The main user account can create sub logins in the frontend
  • Restrict address book entries per sublogin (depends on system configuration value)
  • Fast CSV import of sublogins over import entity adapter
  • Complete REST API for creating, updating and deleting sublogins
  • View sublogin order seperatly in backend customer account area via email address filtering
  • Display of all available sublogin email addresses if a backend order is being created
  • Complete SOAP API for creating, updating and deleting sublogins
  • Support for multi store / multi website environments
  • Allow or disallow customer to create sublogins (configurable per customer)
  • Set max. amount of sublogins a customer can create (configurable per customer)
  • Allow sublogins theirselves to create sublogins (configurable per sublogin)
  • Define custom ACL / sublogin rights management (e.g. one sublogin can not place an order)
  • Set purchase limits for sublogins and main accounts
  • NEW: Define status of approval, approved and not approved oders (order status / order state)
  • NEW: Set a specific amount per sublogin were order approval is not needed, if it exceeds that amount approval is needed if approval is set per sublogin
  • NEW: Extended support of customer- and sublogin address books
  • NEW: Assign new registed customers automatically as sublogin of another customer where the domain matched
  • NEW: The main account customer automatically gets a CC of the order email of each of his sublogin orders

Creating sub accounts / sub logins or employee accounts per user account

The extension allows you to create sub accounts or so called "sub logins" for e.g. different employees of a user account in the backend area of Magento. These sub accounts are getting an own email address and password to login seperatly from the user account.

Creating sub accounts from the frontend area (configurable system setting, if sublogins can see this menu point)

For customer accounts it's possible to create their own sub logins in the frontend area of Magento (see at customer account area). This is a great opportunity for the shop owner to let the customers manage their employee accounts themselves.

Seperate carts for all sub logins

Every sub-login has it's own cart in Magento, so personal cart access is secured. If you like to use a shared account between main account and sublogin, it's just a click ahead.

Handle multi users per account

This extension also works great if you need to handle multi users per account, so sub accounts under the main account.

Account data will send via mail

Within registration of a new sub logins (on frontend or backend area), the sublogin will get an email with it's own credentials. You can fully modify the email creation and refreshing template, also for different store views.

Define an automatically expiration process of the sub logins (optional)

It's possible to define an expiration process of e.g. 90 or 180 days to automatically deactivate the user accounts. This might be helpful in the case old employee leave the company, but the login still persists. This configuration is not required, but can be set.

Adress book restriction per sublogin

Restrict a sublogin with a specific address book of the customer - or the sublogin can see all address entries from main account (configurable per sublogin)

Simple CSV import of sublogins

We are offering an import routine to import sublogins from a csv file (you can customize the import script yourself if you like). For instructions (fieldnames, delimiter and so on) see our manual.

Order approval for sublogin orders

Our B2B solution sublogins easily offers you to setup an order approval so that orders from sublogins needs the approval of their connected main account. Both partys are getting an email that an order with approve was made and the main account is able to either approve or decline the order in the my account area of his account.

Email template management, CC receivers

Our system comes with a well-developed template management, including the ability to set BCC to all sublogin template emails. And you can define CC receivers either per whole account (customer area) for sublogin email templates and additionally another CC receiver for a single sublogin also.

Powerful REST API for sublogins

RESTful webservice for create, rename, update and delete sublogins over a HTTPs connection.

Powerful SOAP API (v1 and v2 supported)

According to Magento SOAP API we developed a seperate SOAP API for sub-logins including CRUD (create, rename, update, delete). Using wsdl as definition makes it easy to implement.

We are officially supporting the integration for Tinx-IT B.V. - TinxIT Connector for Navision.

Added Multi store / Multi website support

If you are running your installation under a multi store environment, our extension supports this fully.

Custom ACLs for different groups of sublogins

With our custom ACL management system you can setup different rights for different sublogins. Simply call the function in your template to e.g. prevent some sublogins to order something.

Purchase limits per sublogin and main account

Easily setup purchase limits with a defined limit either per day, month or year (specific) or also daily, monthly or yearly (repeated). You can setup those purchase limits per sublogin, and also for the main account itself.

Extensive address book support

This extension comes with an extensive support of the address book feature for sublogins. Beside defining own address book entries either from frontend (like the usual customer would do) and backend (same UI as for main customer) it can be choosen from 3 general settings mirroring the main customer address book:

  • Disallow using customer addresses
  • Allow using all customer addresses
  • Custom (address entries can be choosen from backend/frontend)

This setting can be changed inside system configuration area.

Huge configurations per system configuration, customer and sublogin available

With this extension you have huge configuration possibilities, e.g:

  • Check if emai of sublogin already exists
  • Allow / disallow sublogins to create sublogins
  • Allow / disallow customers to create sublogins
  • Set max. amount of sublogins which can be created for a specific customer
  • Show / disable "My Sublogins" in frontend for sublogins which are logged in
  • Restrict address book for single or whole entries from the main account

Predefined ACLs

The ACL setup offers predefined ACLs to access the following URLs for a group of sublogins

  • My account area
  • Cart
  • Checkout

Add-On: Sublogin Catalog Restriction

With this Add-On which can be purchased additionally to the sublogin extension you are able to set products only available for some sublogins. Those sublogins have a custom product collection to view.

Usage / Case studies

Mainly a lot of our customers are using our B2B solution to provide

  • Main accounts & sub accounts
  • Parent & child accounts
  • National accounts
  • Budget & purchase limits for main accounts and sub accounts
  • Approval for orders of sub accounts
  • Supervisor which is handling the orders to approve them
  • Source Code is not encrypted - you are able to modify it yourself
  • Stable and mature Software Solution from Magento Experts
  • Big discount in comparison to creating this extension individually
  • Customizing and further adaptation on request
  • With a yearly support fee you get guaranteed support, updates and upgrades
  • Easy update through composer
  • Extensive documentation

We are offering additional services:

  • Installation service
  • Support package for updates & upgrades (6 or 12 months selectable)
  • Custom delevopment from your request (RFQ)
  • Development of a custom extension regarding your needs


Please fill out the following information in order to receive the credentials for our demo environment. You will automatically receive them to the email address provided.

For how many Magento instances one license is valid ?

Your license is valid for one Magento installation, including scopes (store views, websites ect.).
In addition to this, you can install our extensions on various development- or staging server.

Is the installation included in the price ?

The installation is not included in the price. When you purchase you can opt to an installation service for sure.
We are happy to give you a service to integrate our extensions in your system.

What payment methods are available for purchasing the extensions ?

We offer Credit Card (by Stripe) as well as Bank transfer (prepayment).

How's the order process going?

After paying by Credit Card you will immediately get the credentials to download the extension via composer. As for payment by bank transfer, you will receive the credentials once the invoice has been paid.

I need a specific customization of your extension

We are one of the fewest service provider which are offering customizations towards our extensions. Herefore, we create a new internal version of our extension to give you an excellent support and consider the made customizations for ongoing support requests.

Can I install a demo version before purchasing on my local machine ?

As we have no influence on the use once the extension is installed on your system, we can not offer you a local demo version. We keep our demo system, however, always up to date and invite you to test the extension completely on our demo system.

What's about your update policy ?

You can book the support package for your order. With this support package you also get other support around the extension. Included in the support package are updates for your selected Magento version.

I already have a license. How can I perform an update?

You can easily book an update with a credit card.

Simply use the following link.

I have another question - how can I get in touch with you ?

Just send us an email.

sublogin [1.3.0] - 2024-10-22

Added

  • Added feature to restrict sublogin to customer's default billing address in checkout

Changed

  • Updated Version Class
  • Code Improvements (e.g. cleanup EmailOrderHtml class)
  • Refactored shipping-hook.js (now shipping-mixin) to hide new address button when config is enabled
  • Removed MageB2B\Sublogin\Model\Validator\Name class (in favor of Magento\Customer\Model\Validator\NameValidator)
sublogin [1.2.9] - 2024-08-01

Fixed

  • Refactored previous commit to patch other rules when saving customer, especially from the admin area
sublogin [1.2.8] - 2024-06-13

Fixed

  • Fixed issue that customer addresses were not updated using REST API
sublogin [1.2.7] - 2024-05-25

Changed

  • Changed setFrontendLoadAttributes function to skip customer_id overwrite when MageB2B_CustomerId extension isn't installed
sublogin [1.2.6] - 2024-05-14

Added

  • Added functions getAddressHtmlForSubloginOneline and getAddressHtmlForSubloginHtml to display a headline sublogin addressed based on a specific logic
sublogin [1.2.5] - 2024-05-07

Fixed

  • Fixed an issue on sublogin edit page - previously also sublogin addresses where shown under the customer addresses multiselect field
sublogin [1.2.4] - 2024-04-11

Changed

  • Used new approach for viewModel order totals so no interference will be there when two order emails will be send concurrent
sublogin [1.2.3] - 2024-04-10

Fixed

  • Under specific circumstances the doValidate function of the quote could throw an error
sublogin [1.2.2] - 2024-03-22

Fixed

  • Fixed an issue that occured when a non-existing email address was typed in inside the email field of password forgotten form
sublogin [1.2.1] - 2024-03-07

Changed

  • Changed behavior of the customer attribute can_create_sublogins, now also the frontend is considered for the default setting inside the stores configuration area
  • php Docs

Fixed

  • Fixed deprecated dynamic class property inside AccountManagementPlugin class
sublogin [1.2.0] - 2024-01-06

Changed

  • Refactored orderDetails using viewModel class
sublogin [1.1.4] - 2023-11-03

Added

  • Added config to automatically use a sublogins address inside the customer account when custom address management is set
sublogin [1.1.3] - 2023-08-03

Changed

  • Changed the method how the checkout module path is retrieved
sublogin [1.1.2] - 2023-07-12

Added

  • Added condition on customer save before event when getSkipSubloginDataOverride is used

Changed

  • Unique email address check for sublogin should not run at frontend (still at backend and using API API call)
sublogin [1.1.1] - 2023-06-12

Fixed

  • Fixed PHP issue when customer addresses are empty
sublogin [1.1.0] - 2023-06-07

Added

  • Added check of email address exist as sublogin on customer import
  • Added support for SubloginRole Add-On

Changed

  • Replaced addStatusHistoryComment (deprecated) with addCommentToStatusHistory
sublogin [1.0.30] - 2023-03-06

Fixed

  • Fixed an issue when customer is not an object (in afterSetCustomerFilter function)
sublogin [1.0.29] - 2023-02-25

Added

  • Added a registry key to prevent customer address collection filtering
sublogin [1.0.28] - 2023-02-24

Fixed

  • Fixed an issue that the customer default attribute can_create_sublogins could only set via admin, but not via API
sublogin [1.0.27] - 2023-02-24

Fixed

  • Fixed an issue that a customer address was not saved after checkout.
sublogin [1.0.26] - 2023-02-16

Added

  • Added a registry constant variable "KEY_SKIP_REPLACING_ROOT_CUSTOMER_DATA_WITH_SUBLOGIN" to skip overriding customer data by sublogin data

Fixed

  • Fixed issue with config sublogin/general/default_value_can_create_sublogins on newly created customers
sublogin [1.0.25] - 2023-02-09

Added

  • Added a flag SkipSubloginDataOverride() you can set on the customer object if the loaded customer object should keep it's original values
sublogin [1.0.24] - 2023-01-31

Fixed

  • Fixed issue on empty ACL fields (if SubloginAcl is installed and no permissions are set on a sublogin)
sublogin [1.0.23] - 2023-01-25

Added

  • Added parameter $store to getFrom function to pass the previously defined store (by new config and depending on admin or frontend area)
sublogin [1.0.22] - 2023-01-24

Changed

  • Changed logic for new config "Use Sublogin Store ID" to only apply on frontend, not on admin sublogin email templates.
sublogin [1.0.21] - 2023-01-23

Added

  • Added system config (default no) "Use Sublogin Store ID" which allows to set the sublogin Store ID on sublogin email templates.

Changed

  • replaced setFrom() method with setFromByScope()
sublogin [1.0.20] - 2023-01-21

Fixed

  • Fixed an issue with customer password reset feature
sublogin [1.0.19] - 2023-01-17

Changed

  • Use Ajax for the new chosen component to improve speed on huge data set
sublogin [1.0.18] - 2023-01-12

Fixed

  • Fixed grid filter search on joined attributes
sublogin [1.0.17] - 2023-01-12

Fixed

  • Reverted change for sublogin grids as it was causing issues with the grid state
sublogin [1.0.16] - 2023-01-10

Added

  • Added uninstall routine
  • Added chosen component to select customer_id inside a form

Fixed

  • Fixed an issue inside the sublogin grid when searching via email
sublogin [1.0.15] - 2022-11-22

Changed

  • Changed autocomplete behavior on forms to use ajax only, changed to chosen js
sublogin [1.0.14] - 2022-10-23

Fixed

  • Fixed an issue emails weren't sent out anymore
sublogin [1.0.13] - 2022-10-13

Fixed

  • Fixed Deprecated Functionality: Automatic conversion of false to array is deprecated on PHP8
sublogin [1.0.12] - 2022-10-12

Fixed

  • Fixed syntax error on UpdateIsUserDefined class
sublogin [1.0.11] - 2022-09-16

Changed

  • Added patch to remove is_user_defined flag on custom customer attributes
sublogin [1.1.10] - 2022-08-03

Changed

  • Removed unused choosen.jquery.config
sublogin [1.0.9] - 2022-04-26

Fixed

  • Fixed PHP8 issues
sublogin-budget [1.0.9] - 2022-12-03

Added

  • Disabled multishipping checkout if order is not allowed to be placed due to budget restrictions
sublogin-budget [1.0.8] - 2022-12-01

Fixed

  • Fixed issue: Invalid method MageB2B\SubloginBudget\Block\Budget\Edit::__ which could occure on the frontend my budgets page
sublogin-budget [1.0.7] - 2022-11-22

Changed

  • Changed autocomplete behavior on forms to use ajax only, changed to chosen js
sublogin-budget [1.0.6] - 2022-10-23

Fixed

  • Fixed issue that dropdown on select sublogin was not visible in the admin area
sublogin-budget [1.0.5] - 2022-10-19

Fixed

  • Fixed trailing comma on UpdateIsUserDefined class
sublogin-budget [1.0.4] - 2022-10-18

Added

  • Added changes around approval and budget feature to use approval when budget is exceeded
sublogin-budget [1.0.3] - 2022-09-16

Changed

  • Added patch to remove is_user_defined flag on custom customer attributes
sublogin-budget [1.0.2] - 2022-08-04

Fixed

  • Fixed issue Deprecated Functionality: json_decode()
sublogin-budget [1.0.1] - 2022-05-18

Added

  • Added feature to consider order status on budget consideration via config multiselect
sublogin-orderapproval [1.1.10] - 2024-10-28

Fixed

  • Fixed an issue with sales order mass action grid in admin
  • Fixed db_schema_whitelist.json
sublogin-orderapproval [1.1.9] - 2024-09-26

Changed

  • When the customer adds an order comment on declined orders, make this order comment always visible in the frontend for the sublogin (under my orders section)
sublogin-orderapproval [1.1.8] - 2024-04-15

Changed

  • Changed the approval token from mt_rand(0, PHP_INT_MAX) to 10-digit numbers using Magento 2 function getRandomString to avoid PHP issues
sublogin-orderapproval [1.1.7] - 2024-04-11

Added

  • Added new event "sublogin_orderapproval_attributes_to_transform" to add attributes for the copy process of edited orders
sublogin-orderapproval [1.1.6] - 2024-03-19

Added

  • Added comments at the order status history object if main account approves or delinces the order

Changed

  • php Docs
sublogin-orderapproval [1.1.5] - 2024-02-15

Fixed

  • Fixed not working redirect after approving or declining order via email - the success message wasnt displayed on the same page before
  • Added redirects on all possible errors as well, pointing to customer/account page
  • Fixed an issue if the customer wasnt logged in while trying to approve the email, the customer name was not correct inside the mainlogin order alert email
sublogin-orderapproval [1.1.4] - 2024-02-15

Added

  • Added system config "On massaction check approval state". Activated by default.
sublogin-orderapproval [1.1.3] - 2023-06-21

Fixed

  • Fixed conflict with order approval flag on sublogin and order approval through budget config
sublogin-orderapproval [1.1.2] - 2023-06-20

Fixed

  • Fixed wrong config path for receivers_mainlogin_orderalert
sublogin-orderapproval [1.1.1] - 2023-06-14

Added

  • Added new config: "Receivers - Email template Main login order alert" so the admin can decide who will get the main login order alert.

Fixed

  • Fixed an issue with declining an order
sublogin-orderapproval [1.1.0] - 2023-06-06

Added

  • Added support for SubloginRole Add-On
sublogin-orderapproval [1.0.10] - 2023-05-29

Fixed

  • Fixed an issue on edit sublogin order and multistore environment
sublogin-orderapproval [1.0.9] - 2023-02-28

Fixed

  • Mass action on sales order grid does not break grid layout
sublogin-orderapproval [1.0.8] - 2023-02-28

Added

  • Added mass action on sales order grid to approve or decline orders
sublogin-orderapproval [1.0.7] - 2023-02-23

Fixed

  • Fixed a bug with default values of order approval attributes
sublogin-orderapproval [1.0.6] - 2022-12-03

Fixed

  • Fixed sublogin_acl.xml
sublogin-orderapproval [1.0.5] - 2022-10-23

Fixed

  • Fixed issue on comment post data from controller
sublogin-orderapproval [1.0.4] - 2022-10-23

Fixed

  • Removed dependency of MageB2B_SubloginBudget module for the newly created buget setting
sublogin-orderapproval [1.0.3] - 2022-10-19

Fixed

  • Fixed class name on plugin
sublogin-orderapproval [1.0.2] - 2022-06-22

Added

  • Added new plugin so if special budget feature is enabled we do allow checkout even budget is exceeded
sublogin-orderapproval [1.0.1] - 2022-05-18

Fixed

  • Fixed composer package name
sublogin-role [1.0.8] - 2024-11-01

Added

  • Added translation files

Changed

  • The description field of Sublogin Group and Sublogin Role is not longer a required field
  • The permission MageB2B_SubloginRole::add_product_to_cart now completly hides the add to cart button when permission isn't given (previously, an error was thrown when a user with insufficent permission tries to add an item to cart)
  • The permission MageB2B_SubloginRole::place_order now considers the mini cart also (hiding Proceed to Checkout Button when permission isn't given)
sublogin-role [1.0.7] - 2024-10-29

Added

  • Added mass action in admin group grid to copy/assign a specific group to all customers
  • Added mass action in admin role grid to copy/assign a specific role (all permissions) to all customers
sublogin-role [1.0.6] - 2024-10-08

Fixed

  • Fixed PHP 8.3 compatibility issue
sublogin-role [1.0.5] - 2024-05-07

Changed

  • php Docs
sublogin-role [1.0.4] - 2024-04-22

Changed

  • Changed parent constructor for class Helper/Email to support newest mageb2b/sublogin package
sublogin-role [1.0.3] - 2024-01-06

Changed

  • Changes for new viewModel approach for orderDetails
sublogin-role [1.0.2] - 2023-08-17

Fixed

  • Fixed issue that permissions were active for guest/customer
sublogin-role [1.0.1] - 2023-07-28

Fixed

  • Fixed issue with AddAttributesAndMiscSetup patch
  • Fixed issue on homepage when sublogin is logged in
sublogin-role [1.0.0] - 2023-06-01

Added

  • Initial version

Please note: The license - beside production environment - is also granted for unlimited for staging- and development environments.

Specification


Compatibility:

Magento 2 (2.4.3 - 2.4.7)

Current Version:

1.3.0