Setting up Dedicated Customer-Shopper Pairs for eCommerce

Listen to this article

WordPress is a highly versatile platform, with customizations big and small being made to increase its reach every day. Our developers, including yours truly, have a great time pottering around with the system, tweaking functionalities and creating solutions for the varied requirements of our clients.

Today, let’s have a look at one such out-of-the-box ways of customizing WordPress: setting up customer-shopper pairs on an e-store.

Client Requirement: A Brief Overview

The principal idea was to create a system to assign a particular shopper for a particular customer, sort of like a personal shopper. The customer would add all the items required to his shopping list and place it as an order. The shopper assigned to the customer would be responsible for collecting all the items in the list and delivering them to the designated customer.

There would be two categories of products, tiered and pay per order. Customers buying tiered products would be offered more brand and product variation choices.

A Few Ground Rules

Before proceeding on to the main solution, here are a few key terms we shall be using frequently henceforth,

Customer: Individual user at the front end who makes a purchase on the website.

Shopper: The person assigned to every Customer for curating the required items. A Shopper can cater to one or more Customers.

Administrator: The owner of the e-store

Tiered Products: Products that were offered as a part of a subscription. There can be multiple levels, or tiers, or subscriptions, Silver, Gold, Platinum, etc. Customers having a tiered subscription are assigned a dedicated Shopper.

Regular Products: Products offered for individual purchase, with no subscription required. Customers paying per order are assigned the Shopper available at the time.

Premium Items: Items available only for tiered Customers were denoted by a miniature crown.

Our Solution


Initial Setup:

The first step, before setting up customer-shopper pairs, was to create Pages for the Customers and the Shoppers for their respective reference. To this end, three new pages, My Shopping List, View Shopping List, and Shopper List, were created.

  • Customers add products or view their shopping list/s on the My Shopping Page.
  • The Shopper views all the shopping lists assigned to him/her on the View Shopping List page.
  • The Shopper sees all the details of a specific list and adds his/her notes to it on the Shopper List page.

Features for the Customers

  • Creation of Unlimited Shopping Lists

A Customer could create unlimited shopping lists in the ‘Create Shopping List’ section, adding, editing, and removing products as required. A list could be edited as many times as necessary before it is submitted. On submission, the Customer could view his/her shopping list in the orders section.

  • Save List as a Draft

In case the Customer had to leave the shop halfway through browsing, he/she could simply store the List as a Draft, and return to complete the purchase later.

  • Dynamic Recommendations Based on Previous Product Purchases

All the data entered by Customers was stored in an independent database and recommendations based on previous purchases were displayed as the Customer entered items in a new shopping list.

  • Option to Copy Products from Previous Lists

The Customer had the option to copy individual products straight away from his/her previous lists or the entire list as well.

  • Provision to Specify Brand/Packaging/Size/Qty., etc.

After entering the generic product name, say Jeans, the Customer could choose from the available Brand, Size, etc., specify the quantity, and method of packaging. Alternatively, the Customer could select the product variation from the main shop as well, which would be added to the shopping list.

In case there weren’t any specific preferences, one could simply ignore the field and move ahead.

  • One-click View of All Previous Orders

The Customer could view all current and previous orders on the ‘Orders’ page at a glance. The page showed the date when the order was submitted, the expected date of delivery, the status of the order, and the Shopper assigned to the list.

  • Option to Download/Print Shopping Lists

All Orders could be downloaded or printed out as a PDF from the ‘Orders’ page.

  • Choose the Date and Time of Delivery

The Customer had the option choosing the date and time of delivery to the address specified. Other mandatory details included Customer name, contact number, and postal code.

Features for the Shoppers

Shoppers were the assistant user roles created by the store owner, corresponding to the employees working for the company. A dedicated Shopper was assigned to Customers who had purchased a tiered subscription on the store. One-time Customers were assigned whichever Shopper was available at the time.

  • One Place to Track All Customer Orders

The Shopper could view all the orders assigned to him/her on Customer Orders page. In addition, the order and delivery dates and the status of the order was displayed as well, making it like a quick reference guide for the Shopper.

  • Detailed View of Every Shopping List

To view the entire shopping list in detail, the Shopper could navigate to each order independently. Clicking on the order took the Shopper to the View Shopping List page where he/she could see all the brand/size/packaging, etc. details.

  • Option to add Notes to Orders

The Shopper could check the Yes/No boxes under the Found Item column to mark the addition of the item to the package. In addition, in the event of short inventory supply or unavailability of the required brand, the Shopper could add notes specifying why the particular item was not found. All the changes made by the Shopper in the shopping list were reflected at the customer’s end in real-time. As a result, the Customer could see if some of the requested products were unavailable.

Features for the Administrators

The Administrator, or the Shop Owner, was the captain of the ship. He/she had the complete capability to assign the dedicated customer-shopper pair from the backend. In addition, he could,

  • View All Shopping Lists

The Administrator could view all the shopping lists on the ‘Shopping Lists’ page, including the dates of order and delivery, the Shopper it was assigned to, the Customer name, address, and special instruction, if any.

  • Edit Individual Shopping Lists

The Administrator also had the authority to edit any shopping list, without consulting the Customer. The Admin can manage entire lists or individual products in the list as well.

  • Assign Dedicated Shoppers

The Administrator is the only one who can assign dedicated Shoppers. As seen before, though Shoppers are assigned sequentially for regular products, they need to be assigned specifically for subscription products. The admin assigns these dedicated Shoppers from the Customer profile, selecting the default Shopper to be assigned from the existing user roles.


So that is it! Those were the features incorporated into the customized website where we set up dedicated Customer-Shopper pairs on an e-store.

After this project, we got to thinking about the various applications where this functionality could be used and came up with quite a few. Not only can it be used for practically every subscription website having a physical outlet, but also for regular e-stores having a brick-and-mortar shop to dispatch items from!

What do you think of our solution? Any instances where you think it could be useful? Drop a comment to let us know!

Want a similar customization for your store? Talk to us!

Kumar Rajpurohit

Kumar Rajpurohit

Leave a Reply

Your email address will not be published. Required fields are marked *

Get The Latest Updates

Subscribe to our Newsletter

A key to unlock the world of open-source. We promise not to spam your inbox.

Suggested Reads

Join our 55,000+ Subscribers

    The Wisdm Digest delivers all the latest news, and resources from the world of open-source businesses to your inbox.

    Suggested Reads