Users are migrating templates from the legacy Order Printer app to the new version and encountering issues with product metafield display.
Initial Problem & Solution:
The original code {{ line_item.product.metafields.bin_location.value }} stopped working in the new app
The fix required updating to proper namespace syntax: {{ line_item.product.metafields.custom.bin_location }}
This resolved the bin location display for packing slips
Root Cause:
The legacy app didn’t handle metafield namespaces correctly, allowing a workaround without specifying namespaces. The new app follows proper Liquid syntax: line_item.product.metafields.*namespace*.*key*
Additional Issue - Money Type Metafields:
Money metafields display values divided by 100 (e.g., $200 shows as $2.00)
Order Printer uses a limited Liquid subset where money metafields store formatted strings differently than theme Liquid
Workarounds: Either prepend a dollar sign without the money filter (${{ ...amount }}), or multiply by 100 before applying the filter ({{ ...amount | times: 100 | money }})
One user shared a working packing slip template screenshot demonstrating the implementation.
Summarized with AI on October 26.
AI used: claude-sonnet-4-5-20250929.
We Installed the New Order Printer App (Because the legacy App with be discontinued soon). But when we migrate our templates, it won’t show the product meta fields anymore.
We created a packing slip template to show Bin Locations so we can easily find products when picking.
We use the code: {{ line_item.product.metafields.bin_location.value }}
Wait, usually you use line_item.product.metafields.namespace.key to fetch the metafield and line_item.product.metafields.namespace.key**.value** to retrieve its value. Or bin_location is a namespace and value is a key?
Or you’ve simply forgotten either namespace or key?
Hello, That is the exact code we use on the old Order printer and it works. Thanks for the link you send it helps me compose the correct code. So I use:
Would it be possible to see what that section of your template looks like for the product and the metafield information? I would love to be able to do the same for our picking lists, I thought it was not possible with the Shopify Order Printer app.
In the legacy Order Printer app, product metafields and their namespaces were not handled correctly, so the workaround line_item.product.metafields.key.value was used (note the lack of a namespace). In the new Order Printer app, this appears to be fixed, so line_item.product.metafields.namespace.key works as documented.
I am running into a similar issue with a variant metafield of type money. I am able to display it, but the value seems to be divided by 100… seems like a bug to me!