Features

Sales Agent Ordering

Please note Sales Agent Ordering is only available on the SparkLayer Growth, Pro, and Enterprise plan. You can change your plan here or learn more about our how pricing works.

Introduction

Sales Agent Ordering is a powerful feature of SparkLayer that lets certain users (Sales Agents) place orders and manage accounts on behalf of your B2B customers. Watch our video below to see how it works!



Sometimes referred to as Order Masquerading, it's a great way to integrate your sales team and centralise your B2B orders. Once enabled, Sales Agents are able to perform any of the following actions against an existing B2B customer account:

Action

Notes

View products

The Sales Agent can view products on the website at the B2B prices assigned to the selected customer

Add products

The Sales Agent can add products to an order

Place an order

The Sales Agent can place an order using their available payment methods and request payment from the customer

Shopping Lists

The Sales Agent can save and edit Shopping Lists

Address Book

The Sales Agent Add/edit addresses (if enabled for the customer)

Re-order

Re-order from an existing order by viewing the order details within the account

Persistent cart

Products that are added to an order will remain in the customers My Order until they checkout or make edits. The order will also be saved for the Sales Agent if they come back later.

In addition to performing actions against an existing B2B customer account, Sales Agents can also:

Action

Notes

Add new customers

The Sales Agent can add new customers directly from the frontend, allowing them to then place an order on their behalf right away. Note: this requires assigning the Sales Agent a special "Sales Administrator" role, learn more.



Want to test out Sales Agents? Head over to our B2B Demo store and give it a go!



Getting set up

The process of enabling Sales Agents works as follows:

1

First, you need to activate specific accounts with the special Sales Agent privileges

2

Once activated, the chosen account can then log into your website

3

Once logged in, they'll be presented with the Sales Agent interface where they can then search for and then select a customer, and place orders or manage the account on their behalf.



Configuring Sales Agents

🛍️ Using Shopify
🌐 Other platforms

To activate an account as a Sales Agent, you'll need to make sure the account is already set up within Shopify with an active account.

1

Using their unique customer ID, you can then assign this in SparkLayer to be a Sales Agent. You can find the unique customer ID in the URL when navigating a customer within the Shopify admin.

Document image

2

For example, the URL in your browser may look something like this: https://your-shopify-store-url.com/admin/customers/5917633347819

In this example, the external customer ID would be 5917633347819

3

Within the SparkLayer Dashboard, go to Sales Agent tab or the Customer Sync section of the Data Sync area and paste this customer ID into the Customer Data Lookup box.

4

At the bottom of the search results, you'll then be given the following options to select from:

Document image


Option

Details

Customer

This is the default role for a customer, allowing them to login and place B2B orders. This option means the customer is not a sales agent

Sales Agent

This enables Sales Agent access with the ability to action the following on behalf of a customer: place orders, manage addresses, manage shopping lists, and manage company user access. This option means the customer is a sales agent

Sales Administrator

This enables additional Sales Agent controls: the ability to update B2B prices on an order for a customer, the ability to add new customer records to subsequently place orders for. This option means the customer is a sales agent

Once you've made your selection, click the Save button to activate the Sales Agent.

Editing Sales Agents

If you're looking to edit which of your customer accounts has Sales Agent access, you can manage this directly in SparkLayer by following the below steps:

  1. First, find the Sales Agent customer record in your Shopify Customers admin
  2. Within the URL, make a note of the ID at the end, e.g. if the URL is https://your-shopify-store-url.com/admin/customers/5917633347819the ID would be 5917633347819
  3. Go to the Sales Agent area or the Customer Data Lookup tool in SparkLayer and paste in the ID. At the bottom, click 'Turn off sales agent'
  4. To re-assign Sales Agent access, simply follow the steps above.


The ordering experience

The key difference in the ordering experience for a Sales Agent versus a standard B2B customer is simply this: the Sales Agent isn't placing an order against their own personal account but instead against their selected B2B customer.

Once they login, they'll be prompted by a special Sales Agent Ordering search box within the My Account Interface that lets them easily search and select a customer. At this point, the Sales Agent will be able to search for any B2B customer within your store and place orders on their behalf.

Document image


You can also see how the order experience works in our video below.



Please note Only customers that have been tagged as B2B customers will show within the search results. Within Shopify, simply add a tag of b2b against any customer record. Customers must also always have an email assigned to their account in Shopify. If you don't have an email address, you could always use a test email such as [email protected]

The Sales Agent can search customers by:

  • Company Name
  • First and Last Name of the customer
  • Postcode of their default address
  • Accounting ID (if available)

Once they've selected a customer, the Sales Agent is then in 'Sales Agent Mode' with a notification that will follow them around the ordering experience, notifying who they are logged in as.

Document image



Placing an order

Once logged in as a customer, the Sales Agent can then browse the website and begin adding items to an order. All prices shown will be the prices you've set up for the specific customer using the Price Lists functionality of SparkLayer.

Once they've added products to an order, they can access the My Cart 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.

Document image

🛍️ Using Shopify
🌐 Other platforms

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

Creating Draft Orders

As noted above, the payment flow works slightly differently to the standard customer experience when placing an order. When a Sales Agent is logged in and places an order, the order will by default enter Shopify in the Draft order status with the customer's details pre-selected. Just as with any order in Shopify, you'll see the customer's details on the top right.

Document image


Making a payment against an order

Depending on the payment method used by the Sales Agent, 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.

Document image


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.

Document image



Creating new customers

Sales Agents are also able to add new customers directly from the SparkLayer interface, making it easy for them to quickly place an order (versus having to manually set up a customer record within your website's admin area).

To get started, for your selected Sales Agent, you'll need to follow these steps. When selecting Customer Role, choose Sales Administrator from the list.

Document image


This will activate additional privileges for the Sales Agent, allowing them to create customers on-the-fly the next time they sign into your website. From the main Sales Agent overview page, they'll see the option to Add a new customer as shown below.

Document image


When Add a new customer is clicked, the Sales Agent will then need to complete the basic information for the customer including their First and Last Name, their Email, and their Company.

Document image


When the "Add new customer" 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.

🛍️ Using Shopify
🌐 Other platforms

For new customers 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.

An example of an account activation email sent from Shopify
An example of an account activation email sent from Shopify


Please note the following As part of introducing new customers to your B2B customer base, we recommend informing them of the process detailed above to ensure they are familiar with the steps involved.

Please note the following When a new customer is added this way by a Sales Agent, the customer will automatically be assigned the same rules assigned to the Sales Agent. This includes the following:

  • Price lists
  • Discount percentage
  • Customer Group
  • Sales agent groups (if applicable)

For example, if the Sales Agent has been set up to use price list ABC, the new customer will automatically be assigned this same price list. This can be modified by subsequently going into the new customer's record and updating as required (e.g. by assigning them an updated customer group tag)



Editing prices on-the-fly

Sales Agents have the ability to edit prices "inline" for customers; it's a great way to make ad-hoc price changes or apply discounts without requiring adjustments to price lists.



To get started, for your selected Sales Agent, you'll need to follow these steps. When selecting Customer Role, choose Sales Administrator from the list.

Document image


This will activate additional privileges for the Sales Agent, allowing them to edit prices on-the-fly the next time they sign into your website. When they add items to a customer's order, they'll see an Edit button next to the Unit price to then make changes.

Please note It is only possible to lower the unit price when editing prices.



Overwriting product settings

For Sales Agents with the "Sales Administrator" customer role (see above), it's possible to edit the product settings of items within an order.



For any products that have pack size or min/max product rules, the Sales Agent can enter "freeform" quantities and increment/decrement the line item quantities as required.

If changes are made to the default settings, the Sales Agent will be prompted to confirm their changes before proceeding to complete the order.

Document image



Placing "personal" orders as a Sales Agent

Please note To use this feature, your store must be using version 1.4.0 or above in the SparkLayer Core Script

Sales Agents can access their own personal account by clicking the my account icon within the My Cart Interface.



Alongside placing orders on behalf of customers, Sales Agents can also add products to their personal orders and complete the checkout process independently. Whether it's for buying a product for an upcoming customer demonstration or making a personal purchase at a preferential rate.

When a Sales Agent places a personal order, pricing will be applied based on the price list assigned to their customer group within the SparkLayer Dashboard.

Shopping lists One great use for the the Sales Agent "personal" account is the shopping lists feature. Sales Agents can create their own shopping lists to save in their account. Once they log in as a customer, they can then access the shopping lists to populate an order. It's a great way to quickly start an order for a B2B customer!

Document image






Using Sales Agents across multiple devices

An additional feature of Sales Agents is the ability to access customer accounts across multiple devices using the same Sales Agent login. This means that you can:

  • Pick up orders from where you left off
  • Manage the same order in parallel across different devices
  • Log in as a different customer on a different device whilst using your sales agent account



Restricting Sales Agent Access

If you're wanting to restrict which customers (or groups of customers) a Sales Agent can see, it's possible to configure this via a special settings. Named Sales Agent Groups, this powerful feature gives you full control over how you manage your Sales Agent access.

🛍️ Using Shopify
🌐 Other platforms

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

Customers

Metafield type

This must be set as Single line text and set to List of values

Namespace

This must be set as sparklayer

Key

This must be set as sales_agent_groups

Validation

Tick Limit to preset choices and then enter your values

Document image


The values you enter represent how you want to categorise your Sales Agents. Common use-cases may include:

Example use-case

Example Values

Limiting by a territory (e.g. Germany, France, UK).

germany, france, uk

Limiting by a geographical region

north-east, south-west

Limiting by a customer type

vip, new-customer

Important: when entering values, make sure to not include spaces. Instead, you can separate using dashes (e.g. south-east)

Assigning Sales Agent Groups to a customer

Once you've created your Sales Agent Groups, you can then easily assign these to a customer. Within Shopify, search for a customer and then scroll down to the Metafields section. From the Sales Agent Groups option, select the appropriate values and then click Save. Note, it's possible to assign more than one value to a customer.

Document image


Configuring rules for the Sales Agent

The final step is to then assign the Sales Agent Group rules to a specific sales agent. This is done through the SparkLayer dashboard. Simply head to "Customer Sync", find your sales agent, and scroll down to "Restrict sales agent access". Then, just enter the groups you would like the sales agent to be able to access. As with customers in Shopify, a Sales Agent can have access to multiple groups.

Please note If you leave the field as blank, the Sales Agent will have access to all customers.

Any modifications to sales agents/admins must be done through the dashboard. You cannot change the metafields for a sales agent/admin on Shopify. This includes changing their role or sales agent groups they are assigned to.

When the Sales Agent next signs into your Shopify store, they'll then be able to search for customers that match the Sales Agent Group rules you've set up.



Notifying sales agents of new orders

When a B2B customer places an order, it's possible to also notify the sales agent of any order activity using automations within your eCommerce platform.

🛍️ Using Shopify
🌐 Other platforms

Using Shopify Flow, you can set up specific triggers to send emails to specific sales agents when an order is placed.

Document image


The flow works by detecting an order (or draft order) being placed, checking which sales agent has been assigned to the customer (see "Restricting Sales Agent Access" above), and then sending an internal email.

To get started, you can download a sample Shopify Flow template here.



Tracking activity

When Sales Agents place orders through your store, a range of additional data is tracked against the order, from specific tags through to additional notes. This is useful if you want to be able to filter or analyse Sales Agent activity or integrate this into your backend systems.

🛍️ Using Shopify
🌐 Other platforms

To view the available data, you can click into an open Draft order and you'll see the following information. This information will also display on any completed orders once payment has been taken.

Document image


Data field

Details

Shopify tags

The following tags will be added against the order:

  • agent (denoting an agent order)
  • agent-[start of email] (denoting the agent's email)
  • agent-[email domain] (denoting the agent's email)- b2b (denoting a B2B order)

B2B Sales Agent Account ID

If the sales agent has an accounting ID assigned, this will display within the order

B2B Sales Agent email

The email address of the Sales Agent

sparkPaymentType

This is captured against all B2B orders, and will also include the payment type the Sales Agent has selected