Pimcore now includes a customer management tool with both open source Community and Enterprise editions. It allows you to manage customer data within your application alongside products, assets, web pages etc. Meaning, if required you can manage your entire product, order and customer-related activities within the same instance of Pimcore. Or, you can have Pimcore process some advanced customer-related options before pushing updates to your ERP/CRM.
Like most things Pimcore, the ‘Customer Management Framework Bundle’ is a modular extension that can be added to the core product. It works well alongside the Pimcore eCommerce Framework and provides a set of ready-made object classes to store your customer data. It also includes some handy admin views so you can monitor your customer's activities and make edits within the Pimcore administration panel.
The following article will give you a summary of what's possible with the bundle. If you’re just looking for top-level information we'll start with a summary of feature. Then proceed into a deeper dive of the actual feature's functionality for those looking for a more specific review from a Pimcore Agency who’s used the product.
Pimcore customer management feature summary
When you first install the bundle, you already get a lot of features out of the box. If you’re looking to get up and running quickly, here are the tools you have at your disposal:
- Customer Activities: Logs the activities your customers do within your app/eCommerce store
- Customer Segments: Segment your customers into certain groups (age, sex, location, etc, or fully customisable)
- Customer automation: Set up rules to automate processes based on customer actions
- Personalisation: Allows you to present different content views or data to individuals based on your preference
- Duplicate management: A tool to help you identify and remove duplicate customer records
- Single Sign-On authentication: Allows you to manage Single Sign-On from providers like Google, Facebook, LinkedIn, etc
- Newsletter management: Manage your newsletter mailouts (comes preconfigured to work with MailChimp, or you can configure your preferred platform).
In addition, you also get a number of customer views that allow you to easily review and manage your customer data within the admin panel.
The customer view will give you all the details about your customer in a list format and allows you to filter and search records. you can also export your data from here to CSV if you need to quickly grab a copy of the data. This view can of course be customised to show any extra fields you may have added in.
The Activity View provides a quick summary of all your customer activities. A great use case for this would be if you are using Pimcore to track a customer sales funnel and want to see where individual users might be in their journey.
The core concepts behind Pimcores customer management tool
If you add the customer management bundle into your Pimcore instance, you're essentially just adding a bunch of pre-configured object classes that are ready to use. So, if you are familiar with how object classes are managed in Pimcore, the customer data objects work in pretty much the same way.
What you get with the bundle though are some definitions of how customer data should be managed and there are two key concepts to understand.
Firstly, there are customer activities. This is where all the things that a customer might do (that you want to keep track of) are logged. Things like: account creation, emails that are sent, downloads triggered and purchases made would all be managed here. The Activity Manager is responsible for storing and processing all the things a customer does and gives you an overview of each customer.
Secondly, there are customer segments. This is where you can manage customers into groups that suit your business needs. There are some segments created automatically and you can customise these however you like. Once you have customer segments set up you have a powerful starting point for targeted marketing and personalisation.
There are other tools available to you from the bundle but everything else pretty much stems from these two core concepts (monitor your customer activities and be able to put them into groups). Next, we’ll dive deeper into these features and everything else the framework gives you.
A deeper dive into Pimcores customer features
As already mentioned, Customer activities are an important concept within Pimcore. It's here where all customer-related activity data is saved.
The activity view tab provides a visual representation of this that you can use to monitor your customers. Default activities will be displayed here but you can also configure this to show any kind of custom tracking you might want to add in.
Within this feature, there are several functions used to manage the data:
- The ActivityStore: pulls all customer-related data from the database. It's responsible for saving data and ensuring it ends up in the right place.
- The ActivityManager: processes requests and generally works alongside the ActivityStore to manage data handling.
- The ActivityView: provides an overview of the data in a visual format.
Customer Save Manager
The Customer Save Manager uses hooks that execute when a customer object is saved. It can be used to validate information, automate the processing of some customer-specific data and generally speed up your handling of customer data.
For instance, the following are some built-in handlers that can be useful in your day-to-day operations:
- Cleanup/Email: Validate's email addresses are written in a correct format
- MarkEmailAddressAsValid: Sets an email to valid if passed the validation requirements
- NormalizeZip: Helps to validate Zip codes and cleanout un-required characters (limited to certain countries)
- SalutationToGender: Provide gender-specific greetings
- RemoveBlacklistedEmails: Removes emails if they’ve been added to a blacklist
- AttributeLogic: Gives you the ability to overwrite fields based on other field values.
There is a naming scheme that is applied to customer objects automatically (this can be disabled if not needed). By default, customers get added to a ‘customers’ folder with subfolders created by countryCode and this works pretty well in the cases where we’ve set up the bundle for businesses who have customers from around the world. This of course is configurable and can be changed depending on your needs.
Lastly, the Customer Save Validator is there to ensure all customer data that will be saved passes your config requirements. It will only allow a record to be updated if it meets your validation reqs and will provide errors when it doesn't.
Customer segments allow you to divide customers into specific groups. They are the starting point for more targetted-based marketing and you can use this to locate different sets of customers based on actions they have completed or things like their interests, location (or pretty much any way you can think of segmenting groups of people).
You define your segments and then start adding customers to them. This can be done either manually or programmatically calculated on the rules you set.
There are a number of functions available with this feature to be aware of:
- The SegmentManager: Manages all the segmentation operations. It does the heavy lifting of moving things around.
- SegmentBuilders: Allow you to build specific segments. You can create your own or use some common segment builders already available out of the box:
- AgeSegmentBuilder: Use the birthday field to calculate age.
- GenderSegmentBuilder: Uses the gender fields to calculate segments.
- StateSegmentBuilder: Use the zip field to calculate states.
Once you have a segment, activity tracking will start in the background. You can assign these segments to other data objects in Pimcore and start to use them in your application.
Pimcores' personalisation (or personalization) feature, is integrated quite tightly with its targeting engine. It utilises the concept of ‘Target Groups’ and it's important to understand the difference between these and Customer Segments.
Whereas customer groups allow the segmentation of users based on actions or data stored about them, target groups are based on user behaviour. The data is not stored anywhere but is the basis of personalisation within documents. Target groups and Customer segments can work together, but don't have to.
The functions around managing and setting rules are quite complex and for a deeper understanding, I suggest you refer to the Pimcore documentation. Essentially though, you can set rules to track a users activity and monitor what they are doing, then use that to serve them a more personalised experience.
To help illustrate the potential, Pimcore has created some use cases that describe how you might use these features:
- Use Segments directly with Target Groups: You can use this to target individual behaviours that match your customer segments.
- Initialise Target Groups based on your customer data: When you know a certain customer is online (because they’re logged in) you can trigger your target groups to monitor behaviour (and personalise content).
- Use Customer Segments in a more fine-grained way: You can begin to get very specific about how you monitor users and the data you store about them. For instance, you may want to trigger a certain piece of content after someone has visited a page 3 times or watch the journey users are taking through a website.
- Apply tracked information to Customer data: Target groups don't store data, but that doesn't mean you cannot save it for later. If you want to store a user's activity to use for personalisation at a later date, you can do with via your segmentation management.
Other notable features
In addition to the core features mentioned above, Pimcore’s customer management framework includes some notable features that will help you manage customers and associated activities.
Customer Duplicates Service
Allows you to search for duplicates of a certain customer record and manage accordingly. It's possible to manage the accuracy threshold, so instead of direct matches of a piece of customer data, it might suggest possible matches to review. The admin panel includes a duplicates view which you can use to easily identify and remove dupes.
Single Sign On (SSO)
Provides a configuration setup that allows SSO to be used (Google, Twitter, Facebook etc). This can be configured to use with any SSO and will help you authorise users and direct them to or manage their permissions once logged in.
The ActionTrigger Services provides customer automation features. This works well alongside Customer Segments and Target Groups and will trigger events based on behaviour.
The Newsletter Sync tool will help you integrate with managed email platforms. It comes pre-configured to work with MailChimp but others can be used. Pimcore also has its own mail-sending abilities (which is pretty good for most use-cases). The additional power provided by the Newsletter Sync feature though is you can align with your targeting rules and track mail activities.
Part of a larger set of tools
The Pimcore Customer Management Framework is part of a much larger set of tools. It's a bundle you add to the main Pimcore application which extends an already powerful Product Information Management, document and digital asset management suite. The bundle gives you a specific set of classes and additional UI tools to get set up with managing customers within your application. When paired with the eCommerce framework it becomes very powerful indeed for digital commerce and as Pimcore is so flexible in nature, integration options with third parties and other business systems such as CRM and ERP are endless.
If you’d like to know more about this tool, our experience with it and how else we work as a Pimcore development agency, please get in touch. We’re always happy to share our knowledge and experience.