The box insert
What a packing slip is. (And what we print.)
A packing slip is the sheet in the box: SKU, qty, ship-to. Slipmill prints that document from JSON. Not an invoice. Not a freight packing list. Not a label.
A packing slip tells the buyer what you put in the carton. It is a box insert. The useful fields are SKU, quantity, and ship-to. Optional notes. Optional tracking if you have it when you print. It is not a request for payment. It is not a carrier label. It is not the warehouse’s freight packing list.
People mix the names. A packing list is often an internal pick, a carton tally, or a freight document. An invoice is billing: amounts, tax, a total. A label is postage. Slipmill prints the customer packing slip — and, if you ask, a branded invoice. Those two jobs are spelled out on packing slip vs invoice and packing list vs packing slip.
What we print: template packing-slip. Header with your brand name. Ship-to. From. Line items with sku, name, qty. Optional notes and tracking. brand.accent if you send a hex. A logo URL on paid plans. US Letter. application/pdf. The product page is packing slip PDF API.
What we do not print: a freight packing list, HS codes, a customs commercial invoice, a postage label, or a tax return. We are not a tax engine. Amounts on the invoice template are cents printed as sent. The packing-slip template does not bill.
Shops put the slip in the box so the buyer can check the order without opening email. 3PLs print it at the pack station from the JSON they already store. SaaS that already has the order can POST instead of opening a design tool.
You do not upload HTML. Two locked templates we own. POST /v1/render with x-sm-key. One request is one PDF. Get a key if you want the mill to print the slip you just defined.
If a buyer asks where the bill is, that is the invoice template, not this sheet. If a warehouse asks for a carton tally with weights, that is a packing list you keep in the WMS. If a carrier asks for a label, that is postage you buy elsewhere. The mill prints the insert.
curl
curl -X POST https://slipmill.com/v1/render \
-H "x-sm-key: YOUR_SLIPMILL_KEY" \
-H "Content-Type: application/json" \
-d '{
"template": "packing-slip",
"brand": {
"name": "Northline Goods",
"accent": "#9E2A22",
"address": "18 Mercer Street, Hoboken, NJ 07030"
},
"data": {
"order_id": "NL-10428",
"date": "2026-08-31",
"ship_to": {
"name": "Cedar & Pine Outfitters",
"address": "440 Warehouse Ave, Dock 3",
"city": "Newark",
"region": "NJ",
"postal": "07105",
"country": "US"
},
"from": {
"name": "Northline Goods",
"address": "18 Mercer Street, Hoboken, NJ 07030"
},
"items": [
{ "sku": "TOTE-12", "name": "Canvas tote — natural", "qty": 12 }
]
}
}' \
--output packing-slip.pdfQuestions
SKU, qty, ship-to. Optional notes and tracking. That is the box insert. Not a bill.
No. An invoice bills. A label is postage. A freight packing list is a different document. We print the DTC slip.
A branded packing slip from order JSON — or an invoice if you send that template. US Letter application/pdf.