Customer note editor

Display custom data when viewing Customers and Orders in the Shopify admin using the customer note field

Kyle Weiskopf avatar
Written by Kyle Weiskopf
Updated over a week ago

❗ 2022 Update: Shopify has recently released a new set of features known as metafield definitions, and for most use cases we suggest using metafield definitions instead of transposing data into the customer note field. You can learn more about this powerful new way to utilize custom data using the button below:

If you're still interested in using the app's customer note editor as a workaround, then read on for more details!

Overview

The Customer Note editor in Customer Fields allows you to display custom data directly in the Shopify admin when viewing Customers and Orders.  This is done by hooking into Shopify's 'Customer note' field, and before metafield definitions were released this was the only way to display custom data directly in the Shopify admin.

The 'Customer note' is visible on 3 separate pages within the Shopify admin:

  1. Customers page (the main page that lists all customers)

  2. Customer details page for each customer

  3. Order details page for each order

How to configure Customer Notes

You can configure how data is transposed into the customer note using a Liquid template editor in Customer Fields. You can find the customer note editor by going to Settings > Customer note editor from the app admin.

Before you get started with the Customer note template editor, please keep the following in mind:

  • Existing customer note data that Shopify has on file will be preserved; the data from the app is appended to the end of the note.

  • The rendered content from the template will be inserted in between six (6) dashed lines, which help to indicate the start and end of the data block.

  • Any saved changes made to the customer note template are not retroactive, which means that existing customers with notes will remain as-is (until those customer records are updated).

  • Do not manually add custom data between the dashes in the customer note in Shopify. The data between the dashes in the customer note is configured by the customer note editor in the app, meaning any custom data that you add between the dashes in Shopify will be overwritten should you or the customer update their record.

Auto-configure for fast setup 

To save you time, we've built an auto-configure tool that will automatically render out the labels and variables for all of your custom data columns. If you simply want to display your custom data quickly and easily, click the 'Auto-configure' magic wand (found on the top left of the page) and all your fields will be filled in the editor automatically. Preview & save the changes, and then you're done!

Liquid editor with data column variables 

Liquid code friendly

The app's template editor for the customer note is completely Liquid friendly. This means you can use any popular control flow tags, iteration tags and filters that you need to dynamically render content in your ideal format & layout. We suggest using this documentation if you need a good reference on Liquid.

Here's an example template:

Birthday: {{ birthday }}
ID Number: {{ id_number }}

And here's what the output in the customer note field would look like for this example template:

(Existing note) This is a great customer! Always ship to their front door.
------
Birthday: 1989-03-12
Id Number: 49-230-572
------

You can format the data:

Birthday: {{ birthday | date: "%B %e" }}
ID Number: {{ id_number }}

Output:

(Existing note) This is a great customer! Always ship to their front door.
------
Birthday: March 12
Id Number: 49-230-572
------

Or only display the data if it's not blank:

{%- if birthday != blank -%}
Birthday: {{ birthday | date: "%B %e" }}
{%- endif -%}

You can also control how (and even when) custom data is output into the customer note. For example, you could add a filter to a file upload data column so that only the file's URL is output:

{{ signed_pdf_agreement.url }}

Or change which fields are output based on a customer tag:

{%- if tags contains "wholesale" -%}
Wholesale ID: {{ wholesale_id }}
{%- else -%}
Twitter handle: {{ twitter_handle }}
Instagram handle: {{ instagram_handle }}
{%- endif -%}

Pro tip: You can add dashes like {%- if ... -%} (instead of {% if ... %}) to avoid extra lines in the output

Data column variables

All of the available data column variables are listed in a panel on the right side of the template editor. The variables are broken into sections; Custom data columns & Standard data columns. You can click the 'Copy' button when hovering over any variable to quickly copy the variable to your clipboard and paste it wherever you'd like in the template editor.

Pro tip: If you have data columns that have spaces in the key, then you will want to wrap the key in brackets and double quotes, like so: {{ ["License Number"] }}  

Preview the output

You can use the 'Preview' tab when making changes to the template to see how your changes would look when populated with data. Please note that the app automatically generates placeholder data for the data column variables - this is just for example purposes.

Did this answer your question?