Cart display

Displaying Customization Details in Shopify Cart + Checkout

Customer personalization must show clearly in cart, checkout, and order confirmation. Otherwise: 'I don't see my engraving — is my order right?' Chargeback risk.

Last updated: July 28, 20266 min readBy the Print It My Way team

3 display surfaces to check

  1. Cart — cart-item.liquid template loops over line-item properties
  2. Checkout — automatic on Shopify checkout, no template edit needed
  3. Order confirmation email — order.liquid template

cart-item.liquid template

{% for property in item.properties %}
  {% unless property.first == '' or property.first[0] == '_' %}
    <div>{{ property.first }}: {{ property.last }}</div>
  {% endunless %}
{% endfor %}

Note: property keys starting with underscore are hidden by convention (used for metadata like print file URLs).

Photo thumbnail display

Upload apps store the file URL as a line-item property. To show the thumbnail in cart:

{% if property.last contains 'https://' %}
  <img src='{{ property.last }}' width='60' />
{% else %}
  {{ property.last }}
{% endif %}

Hidden properties (underscore-prefix)

Store metadata that shouldn't display to customers: print file URLs, internal IDs, timestamps. Prefix key with underscore (_print_file_url). Shopify hides these from customer-facing displays by default.

Order confirmation email

Similar loop in order.liquid template. Include personalization thumbnail for photo products (reduces customer 'is it right?' emails)

Frequently asked questions

How do customers see their personalization in cart?

cart-item.liquid template loops over line-item properties. Most Shopify 2.0 themes (Dawn, Refresh) do this automatically. Older themes may need code.

Why isn't my personalization showing in cart?

5 causes: (1) property key starts with underscore (intentionally hidden), (2) cart template missing properties loop, (3) app not adding properties, (4) cart-drawer JS overrides template, (5) wrong property syntax.

How to show uploaded photo thumbnail in cart?

Store the file URL as line-item property. In cart-item.liquid, check if property value contains 'https://' and render as image.

What are hidden line-item properties?

Properties whose key starts with underscore (_). Stored on the order but hidden from customer-facing displays. Used for metadata (print file URL, timestamps).

Do line-item properties show in Shopify checkout?

Yes, automatically on Shopify's native checkout. No template edit needed.

How to include personalization in order confirmation email?

order.liquid template loops over line-item properties. Add thumbnail rendering for photo uploads. Notifications → Order confirmation.

Can customers edit personalization after add-to-cart?

Most apps: no — line-item properties set at add-to-cart. Some support edit-in-cart via URL parameter (limited support).

Do properties show in Shopify admin order view?

Yes. Order details page shows all line-item properties, including hidden ones. Merchant can see everything customer entered.

How to export orders with personalization data?

Shopify Orders CSV export includes line-item properties. For photo uploads, the URL is in the CSV — download files via URL.

Do apps show properties in packing slips?

Depends on packing slip app (Shopify Order Printer, Retail Barcode Labels). Most support line-item properties display. Configure per app.

Related reading

Try it free on Shopify

Print It My Way's permanent Free plan includes live preview + Cart Transform pricing + POD integrations. No credit card required.

Install Print It My Way