Shopify Packing Slips: Print Them and Customize the Template

To print a Shopify packing slip, open the order and click Print > Print packing slips, or select several orders in the Orders list and use the same menu. The slip lists the items in a shipment with the shipping and billing addresses, SKUs, weights and quantities. To change how it looks, edit the Liquid template under Settings > Shipping and delivery.
The steps come from Shopify’s Help Center pages on printing packing slips and customizing packing slips, read on October 23, 2026; the variables come from its packing slip variable reference, read on October 31, 2026.
Print a packing slip
For one order, go to Orders, click the order, click Print > Print packing slips, then print or save the file.
For many orders, go to Orders, select the orders, click Print > Print packing slips. If the selected orders belong to more than one location, Shopify asks which location is fulfilling them; pick it and click Continue. Print or save the result.
An order with several shipments gets a separate slip for each shipment, and each slip shows only the items in that shipment. In the Shopify mobile app, long-press an order, select the others and tap Print packing slips; on Android the slips arrive as a PDF you download and open to print. If you also print pick lists and labels together, that is batch fulfillment, covered in pick lists and batch fulfillment.
Customize the template
Open the editor:
- Go to Settings > Shipping and delivery.
- In Documents, click Packing slip template (or your template’s name if templates are listed).
- Optional: click Preview and pick an order to see real data.
- Edit, click Preview template, then Save.
If you have more than one template, edit the default, because that is the one Print packing slips uses. Shopify’s printing page says you can return to the default template with Revert to default; if you want to keep your edits, copy the Liquid code into a note first.
What Shopify documents as editable:
- Store address: replace the
{{ shop_address.summary }}variable with the address you want printed. To change it everywhere, edit your store information in Settings > General instead. - Product images: delete the
line_item.imageblock to remove the pictures beside product titles. - Logo: upload it in Content > Files and note the exact file name, which is case-sensitive:
Shop_Logo.pngandshop_logo.pngare different files. In the template, use thefile_img_urlandimg_tagfilters to replace the store name with the logo or to show it above or next to the name. - Styling: upload a CSS file to Content > Files, copy its URL and reference it with a
<link>tag. This needs HTML and CSS knowledge, and CSS hosted outside Shopify doesn’t render properly.
Add a short line that helps the customer, such as how to start a return or where to find the order status page, in one or two sentences. Copy variable names from Shopify’s reference rather than from a forum thread, since forum snippets for older templates can be out of date.
Useful variables
The template’s data comes from a handful of objects: order, shop, shop_address, customer, shipping_address, billing_address and line_items_in_shipment. The ones most worth knowing:
| Variable | What it prints |
|---|---|
order.name |
The order number with your prefix or suffix, such as #1004 |
order.created_at |
The order date and time; a date filter changes the format |
order.note |
The order note, if there is one |
shop.name, shop.email, shop.domain |
Store name, email and domain |
shop_address.summary |
Your store address in one line |
shipping_address.summary |
The customer’s full shipping address; .name, .phone, .company and the other fields exist separately |
line_item.title, line_item.variant_title, line_item.sku |
Product name (it already includes the variant name when the product has variants), variant name and SKU, inside the loop over line_items_in_shipment |
line_item.quantity and line_item.shipping_quantity |
Quantity ordered and quantity in this shipment |
includes_all_line_items_in_order |
True when the whole order is in this shipment |
Two of them are worth a template edit. To show a note the customer left with the order, print order.note in a box under the items. For split shipments, use includes_all_line_items_in_order to add a line such as “The rest of your order ships separately” when the value is false, and print line_item.shipping_quantity next to line_item.quantity so the customer sees “1 of 2”. Product images print only if they are hosted on https://cdn.myshopify.com/.
Shopify’s printing and customizing pages don’t cover page size or label-printer formats, so if you print slips on a label printer, set the paper size in the print dialog and preview the template at that size before a busy day. For ideas on what else goes in the parcel, see packaging and unboxing. For related guides, start at the shipping and returns hub.
FAQ
How do I print packing slips in bulk on Shopify? Select the orders in the Orders list, click Print > Print packing slips, choose the fulfilling location if asked, and print or save the file.
Where do I edit the packing slip template? The editor is in Settings > Shipping and delivery, under Documents, where you click Packing slip template.
Can I add my logo to a Shopify packing slip?
You can add your logo by uploading it in Content > Files and referencing its exact file name in the template with the file_img_url and img_tag filters.
Does an order with two shipments get one slip or two? An order with two shipments gets two slips, one for each shipment, and each lists only the items in that shipment.
How do I show the order note on a packing slip?
Add the order.note variable to the template where you want the note printed. It prints the note only when the order has one.