Custom product operations
How to put an order barcode on Shopify packing slips
Shopify packing slips do not include an order barcode by default. How to add a Code 39 barcode with a font, and how packing staff can scan it to find the order in the list.
Published 2026-09-11 · Updated 2026-09-25
A packing table is a bad place to type. The slip is already in someone’s hand. The order number is already on the paper. What is missing is a barcode that a phone can read without hunting through a queue.
Shopify’s native packing slip does not print one. You can add it. It is a template change, not an app install, and it is not a one-click Shopify setting.
Why the default slip skips this
Shopify packing slips are built to show what to put in the box. They list the shop, the destination, and the line items. They do not assume you have a warehouse scanner or a packing app that looks up the order by scan.
If you want that, you edit the packing slip template.
A Code 39 font is enough
Code 39 is the barcode style a font can print without extra encoding math. Wrap the value in asterisks so a scanner knows where the code starts and ends.
# is not a Code 39 character. Shopify order names usually include it (#1004). Print the name with that hash removed.
Libre Barcode 39 Text is a common free font for this. Shopify packing slips only load CSS you upload to Content → Files. A stylesheet hosted on another site will not render on the slip.
Steps in Shopify
- Open Settings → Shipping and delivery and edit the Packing slip template.
- Upload a CSS file that loads your Code 39 font to Content → Files. Copy that file’s URL.
- At the top of the template, link the CSS:
```
<link rel="stylesheet" href="YOUR_FILE_URL" type="text/css">
```
- Where the barcode should print:
```
<p style="font-family: 'Libre Barcode 39 Text'; font-size: 72px;">*{{ order.name | remove: "#" }}*</p>
```
order.name is the label people already know, including a prefix from Settings → General. order.order_number is only the number (1004) if that is what you want encoded.
Shopify documents the rest of the template in Customizing packing slips and the packing slip variable reference.
Preview. Print one. Scan it. If the bars are small, faint, or tight against other text, a phone will miss them.
Using Orstrax Orderflow
Orderflow does not print packing slips. Once the slip has an order-number barcode, packing staff can open Orders, tap the barcode icon, and point the live camera at the slip. Orderflow reads 1D and 2D barcodes and pulls that order up in the list — the same as typing the number in search. Tap the row if you need details, an approved proof, or files.
The same scan works in a mobile browser or the Orderflow home-screen app. The order must already exist in Orderflow.
Existing users: Scanning packing slip barcodes.
Explore Orstrax Orderflow.
Orstrax Orderflow
Orderflow is the Shopify app these workflows were built around. Product overview · Use cases · Log in · Help for this workflow
