Company Users
Please note Company Users is only available on the SparkLayer Pro, and Enterprise plan. You can change your plan here or learn more about our how pricing works.
Company Users is a powerful feature of SparkLayer that allows companies to create "teams" of users that can share specific actions within their account. Sometimes referred to as "company roles" or "sub accounts", this feature is designed to optimise company B2B purchasing and account management.

Once enabled on your store, Company Users allows the following activities to be shared across team members once they log into their account:
Area | Actions |
Order history | Users of the same company can see all orders placed for the entire company, check order status, and re-order |
Shopping lists | Users of the same company can view and delete shopping lists that have been created |
Address book | Users of the same company can view, edit, and delete all addresses within the company |
Please note, the following activities are not shared across team members.
Area | Actions |
Shopping Cart | If a user has items in their order (the Quick Order Interface), these will not be shared across users. |
Please note The Company Users feature will be a focus of continual improvement and you can see what's coming soon in our Roadmap.
To get started with Company Users, you'll need to enable a special setting within SparkLayer. Within the SparkLayer Dashboard, go to the Settings area and switch on "Enable company users".

When this setting is enabled, this will then activate a special "widget" within the My Account area called "Company Users".
The Company Users functionality works as follows:
An active B2B customer logs into their account on your website
From their My Account area, they then navigate to the "Company Users" widget (at the bottom). From here, they can see all other active company users and invite other users
Once another user has been invited to the Company, that specific user can subsequently login and begin placing B2B orders
Once a company user logs in, they'll also have access to a variety of shared actions and activities that all other company users can see. This currently includes:
- Orders - users will see all orders placed by the company
- Shopping lists - users will see all shopping lists created by the company
- Address book - users will see all addresses added by the company
Essentially, the customer who begins the inviting process becomes the "main user" (or "admin") and can control which other users have (or do not have) access to the company.
To invite users, from the My Account area, the customer clicks the 'Invite new user" link in the "Company Users" widget.

Once the "Invite new user" link is clicked, they are then asked to complete an invite form. This form includes the ability to specify a first and last name and an email address.
Please note The email address specified here will be the email address used to login

When the "Send invite" button is clicked, this will then trigger the following actions:
Account status | Actions |
If the invitee does not already have an account on the website | This will send the invitee an email asking them to create a password to activate their account and join the company |
If the invitee already has an account on the website | The customer will be able to login with their existing login details to join the company. |
For invitees that do not already have an account, they'll receive an email that looks similar to the below. This is an email that is generated via Shopify and can be easily modified. Within Shopify, this uses the "Activate Account" email notification and can be modified within the Settings > Notifications area of your Shopify admin.

Please note As part of introducing Company Users to your B2B customer base, we recommend informing them of the process detailed above to ensure they are familiar with the steps involved.
When an invited Company User logs in, they'll see the My Account Interface as normal along with additional messaging confirming they are part of a company.

In addition, they'll also see the company they are connected to within their My Details area.

The invited Company User can browse the website and begin adding items to an order. All prices shown will be the prices set up for the "main user" using the Price Lists of SparkLayer.
Once they've added products to an order, they can access the My Order Interface at any point and begin the checkout process. Just as with the standard customer experience, they can select an address, shipping method, and see all available payment methods.
To understand the payment flow, the payment methods work as follows:
Payment Method | Flow | Status |
Pay by Invoice | The order is submitted as a Draft order within Shopify and then has to be manually acted upon | Order is left in Draft status until the payment is successfully made |
Pay on Account | The order is submitted as a Draft order within Shopify and then has to be manually acted upon | Order is left in Draft status until the payment is successfully made |
Pay Online by Card | The order is submitted as a Draft order within Shopify and the customer will receive a notification to make payment (see below) | Order is left in Draft status until the payment is successfully made |
Request for Quote | The order is submitted as a Draft order within Shopify and then has to be manually acted upon | Order is left in Draft status until the payment is successfully made |
The payment flow works broadly the same for a Company User as for a standard customer. When the Company User places an order, the orders will by default enter Shopify in the Draft order status with the order saved in the account of the "main user". Within the "Notes" section, under "Additional details", you'll find the email address of the company user who placed the order (within the "Company User Email" field). Just as with any order in Shopify, you'll see the customer's details on the top right.

Depending on the payment method used by the Company User, if the customer is required to make payment, they'll receive an automatic email notification detailing their order and a button to checkout. This uses the 'Send invoice' feature of Shopify Draft orders and you can learn more about how this works here.
Once the customer completes their purchase by making payment, the order is then marked as paid and will then display within your Shopify Orders area.

You can edit this email template by going to Settings > Notifications within Shopify and search for the Draft order invoice template
If the customer hasn't made payment for any reason or you are processing it manually, within Shopify you can open the order and easily resend or manually mark as paid. Please note, the order will stay as a Draft order until action has been taken.

As with inviting new users, the "main user" can also easily remove users. From the "Company Users" widget, simply click the icon to remove the user's access to the company.

As well as the "main user" being able to invite users, it's also possible to associate users to a company manually by using special settings against a customer.
Setting up metafields on Shopify To learn more about how to configure metafields on Shopify for SparkLayer, please refer to our guide here
Item | Details |
Custom data type | |
Metafield type | This must be set as a single line text |
Namespace | This must be set as sparklayer |
Key | This must be set as parent_customer_id |
Value | This must be the customer ID of the main user (see below) |
The manual association works by simply adding the main account customer ID into the parent_customer_id metafield.

You can find the main account customer ID in the URL when navigating a customer within the admin. For example, the URL in your browser may look something like this:
https://your-shopify-store-url.com/admin/customers/6494756339930
In this example, the main account customer ID would be 6494756339930
Company Users is fully compatible with the Sales Agent Ordering allowing sales agents to add users to a company, just as a "main user" would. The inviting users works in the same fashion as detailed above.
It's possible to adjust the text specific to the Company Users functionality by adding special code to the SparkLayer Core Script.
Updating language and text You can update the default text by adding code to your Core Script. Learn more about how to update text on SparkLayer.
Please note the following limitations of Company Users:
- Privileges: other than the "main user" access detailed above, it is not possible to set privileges or "roles" for company users. Simply put, every company user will have shared access to all B2B order and account data
- Inviting users: when a new user is invited, they will receive the "Activate Account" email from Shopify. It is not currently possible to create a custom email notification for this
- Restricting access: when Company Users is activated in the SparkLayer Dashboard, it will apply to all customers that login. It is not possible to manually specify which customers have access to Company Users.
- Privileges: related to the above, a new privileges system will allow companies to specify which users can and cannot complete orders; for those who cannot place orders, they’ll be able to submit orders as “quotes” (or “draft orders”) which can then subsequently be approved.