We built a B2B application for Educated Beards to make the best of both worlds
A brand set to dominate the American beardscape
True to their promise, Educated Beards crafts all-organic men’s grooming products that are made with the finest ingredients straight from New Brunswick, Canada. With a distribution network spanning 3500 locations worldwide and on track to becoming a household name, they’re crushing it as a direct-to-consumer (D2C) brand.
And we’re happy to have played a part in their success!
Our journey with Educated Beards began with a unique challenge.
The brand wanted to boost its retail sales (B2B) through distributors without juggling two separate e-commerce stores and backends. What they wanted was one simple front-end that would deliver personalized and differentiated experiences for both D2C and B2B audiences.
We got some of our best minds together (our wise old men were unfortunately beardless), and started brainstorming with the team.
Truth bombs before balms
We started by asking some tough questions to anticipate the journey ahead
Since the brand was too early for Shopify Plus, what would be a simpler solution?
How could we differentiate pricing for customer categories (D2C and B2B)?
What challenges could we face in managing two instances with a singular backend?
What were some potential roadblocks in developing a custom solution?
How could we stay on schedule?
We had to think out-of-the-box and our development team started drafting a plan of action.
Taming the mane with a touch of inspiration
Pricing was the first problem we faced. This is because retailers often get wholesale pricing, which is significantly discounted when compared to what D2C customers pay. This is why we had to build a robust front-end with a very low margin for error, to avoid potential issues.
At first, we considered seemingly simple solutions like manually creating B2B users as Shopify customers and segregating them with tags or even generating individual discount codes.
However, we quickly discovered that these methods were:
Time-consuming, especially at scale
Prone to regular human errors
Resource-intensive when done manually
It was clear that we needed a better approach.
So, we returned to the drawing board and came up with a new idea: an app to automate the approval/rejection process for retail/B2B users.
Educated Beards could direct retailers and brand ambassadors to register via the application, which would then give their team access at scale to approve or reject retailers.
Once the retailers were approved, this streamlined solution would help the Shopify store identify key B2B customers who were logged in and personalize their store experience. This would reduce the manual effort needed to update retailer data and minimize almost all of our anticipated approval errors.
With the B2B customer journey automated, our client could finally let go of the cumbersome manual process and focus on growing their business. And that was just the beginning!
Sidestepping some stubble trouble
Our journey wasn't all smooth sailing, though. While implementing the ambassador/retailer approval process, we hit a big bump in the road.
Accurately pinpointing their location proved to be a major hurdle. We turned to the Google Geocoder API for the fix, but we quickly discovered that any incorrect input in the form's address field could cause a bit of a problem.
We devised a workaround: a recursive modification feature for the form fields. This helped us navigate around any incorrect information provided by users (accounting for edge cases) and ensure that their location was accurately captured for further processing.
This was just one of the minor development challenges we faced while building our seamless process for approving ambassadors and retailers. And just like that, we turned a potential roadblock into another success story!
Signing off in style
Our goal was simple: make it easy for the Educated Beards team to offer personalized experiences for each customer category without juggling two separate Shopify stores.
As per plan, we built a custom solution to automatically authenticate and differentiate B2B retailers from D2C customers through geolocation and session data.
This approach delivered a seamless experience for all customer segments. In the case of retailers, it granted them access to personalized pricing, exclusive discounts, curated deals, and community engagement in one platform.
Since the application was custom-built, we:
Planned and phased out the app development process into modules
Assigned dependencies and planned sprints to facilitate feature development
Ramped up internal testing using varied use-cases after each module's completion
This phase-wise strategy validated our solution and helped us battle-test it before launch.