The money page
Packing slip PDF API
POST order JSON. Get a branded US Letter packing slip as application/pdf. No HTML editor. No carrier.
A packing slip PDF API is an HTTP endpoint that turns structured order data into a printable packing slip. Slipmill owns two locked layouts. You send brand, ship-to, line items, and optional tracking. We return bytes you can print or attach to a shipment.
This is not a generic PDF API and not HTML-to-PDF. You do not upload a template. You do not write CSS. You do not buy postage. POST JSON to /v1/render with template packing-slip and the x-sm-key header. The response is application/pdf.
If you already have order JSON — from Shopify, WooCommerce, a 3PL, or your own backend — you are the customer. The mill prints the slip. You stop designing it.
The payload
This is a packing-slip body. POST it to /v1/render with x-sm-key. The live PDF is at /sample.
{
"template": "packing-slip",
"brand": {
"name": "Northline Goods",
"accent": "#9E2A22",
"address": "18 Mercer Street\nHoboken, 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\nHoboken, NJ 07030"
},
"items": [
{
"sku": "TOTE-12",
"name": "Canvas tote — natural",
"qty": 12
},
{
"sku": "INK-RED",
"name": "Stamp pad, warehouse red",
"qty": 2
},
{
"sku": "TWILL-01",
"name": "Twill apron",
"qty": 4
}
],
"notes": "Leave on dock if closed. Pack totes upright.",
"tracking": "1Z999AA10123456784"
}
}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
application/pdf. US Letter. One POST to /v1/render is one packing slip. Header x-sm-key. Fail closed on a bad key or a spent cap.
No. Two locked templates we own. You send JSON. We print it. If you searched HTML to packing slip, that query is a different page.
No. The mill prints a packing slip or an invoice. It does not talk to a carrier.