Issue in code when migrating from the Order Printer (Legacy) app to Shopify Order Printer

Topic summary

A user is experiencing issues migrating a custom packing slip template from the legacy Order Printer app to the new Shopify Order Printer app. Despite adding the required order. prefix to the code, the shipping method field is not displaying correctly.

The Problem:

  • The legacy app properly showed shipping methods (store pickup address, Canada Post Tracked, USPS Tracked, etc.)
  • The new app fails to display this information in the same field
  • An attached image comparison shows the difference between outputs

Proposed Solution:
Another user suggested replacing the shipping method code with an updated version that uses order.shipping_address and includes conditional logic for customer pickup scenarios.

Status: The discussion remains open with one potential code fix offered but no confirmation of whether it resolved the issue. The problem appears related to how shipping address data is accessed in the new app’s template system.

Summarized with AI on November 9. AI used: claude-sonnet-4-5-20250929.

We’ve been using the Order Printer App for years now had a custom template created for printing little packing slips. I have copied the code over to the new Shopify Order Printer app and added the order. prefix. Everything seems to be working except for the shipping method. In the attached image the top is the template printed from the legacy app and the bottom is the printed from the new app — the ‘method’ usually says our store pick up address or Canada Post Tracked/USPS Tracked, etc and their address.

Here’s the bit of code that’s been used now:

Order: {{ order.order_name }} Method: {{ order.shipping_line.title }}


{% if shipping_address %}
Ship to: {{ shipping_address.name }}
{% if shipping_address.company %} {{ shipping_address.company }}
{% endif %}

Appreciate any help! Thanks!

I’m not a coding expert, but I think I might be able to help here due to having to deal with migration to the new order printer app myself.

Try replacing the code you provided with this:


Order: **{{ order.order_name }}**

Method: {% if order.shipping_address %}
  {{ order.shipping_address | format_address }}
  {% if order.shipping_address.phone %}{{ order.shipping_address.phone }}{% endif %}
{% else %}
    

  Customer Pickup
  {% endif %}

---

{% if shipping_address %}

**Ship to: {{ shipping_address.name }}**

{% if shipping_address.company %}
{{ shipping_address.company }}

{% endif %}