Polotno + Packhelp pairs Polotno's embedded design editor SDK with Packhelp's partner API. Your users design custom packaging (boxes, mailers, tissue) inside your app, your backend submits the artwork to Packhelp with the dieline, and Packhelp prints and ships.
The problem Packhelp doesn't solve
Packhelp has its own packaging editor on packhelp.com. Platforms that sell packaging inside their own product, such as marketplaces and brand tools, need that design step in their own app, tied to their own catalog and brand rules. That's a gap: DTC brands want agency-level packaging without the agency timeline.
Teams building on Packhelp without a design layer usually:
- Send customers to Packhelp's basic customizer
- Commission agency packaging and re-upload per SKU
- Settle for one-panel branding because multi-panel work is manual
Polotno goes in front of Packhelp with a dieline-aware editor: unfold the box, design each panel, and export artwork that maps back to Packhelp's production spec. Roastify used the same pattern to enable packaging personalization for modern brands.
How the integration works
- Design: User picks a Packhelp box style. Polotno loads the unfolded dieline with every panel editable and bleed enforced.
- Edit: User layers brand assets, patterns, and text panel-by-panel, with every panel of the flat dieline in view.
- Export: Your app exports a print-ready PDF aligned to Packhelp's dieline spec. For print-strict finishing, export PDF/X-1a or PDF/X-4 + CMYK via @polotno/pdf-export .
- Order: Your backend sends the order and the print-ready PDF to Packhelp through the API access Packhelp sets up with you.
- Fulfill: Packhelp prints and ships.
What a request looks like
// 1. Export panel-aware PDF aligned to Packhelp's dieline.
import { jsonToPDF } from "@polotno/pdf-export"
await jsonToPDF(store.toJSON(), "./packaging.pdf", {
pdfx: "x-4",
outputIntent: { profile, identifier: "FOGRA39" },
colorMode: "cmyk",
})
// jsonToPDF writes the file; upload it from disk.
const artworkUrl = await uploadToYourStorage("./packaging.pdf")
// 2. Send the order to Packhelp. Packhelp's API is set up per partner
// through their sales team (https://packhelp.com/web-services/), so the
// endpoint and request shape come from them.
await sendToPackhelp({ artworkUrl, productCode, quantity, shipping })What Polotno handles vs. what Packhelp handles
Polotno (in your app)
- Dieline-aware canvas (unfolded box)
- Per-panel design with brand locking
- Repeated-pattern fills and safe-zone guides
- PDF/X-1a and PDF/X-4 + CMYK export aligned to Packhelp's dieline
Packhelp (backend)
- Packaging catalog (mailers, boxes, tissue, labels)
- Printing and die-cutting
- Sustainability options
- Fulfillment
Technical details
- Export: PDF/X-1a or PDF/X-4 + CMYK with embedded fonts, aligned to Packhelp's dieline net.
- Dielines: Your app loads one per Packhelp product code; panels are labeled and editable. Designer metadata is stored via custom element data .
- Rendering modes: Client-side for preview; Cloud Render API for deterministic PDF export.
What you can build
Custom packaging across Packhelp's catalog:
- Mailer boxes
- Shipping boxes
- Product boxes
- Tissue paper
- Custom labels
- Envelopes
FAQ
Do I need a Packhelp account?
Yes. Packhelp's API isn't self-serve: it's aimed at marketplaces, logistics providers and other platforms, and access goes through their sales team at packhelp.com/web-services.
Are dielines built in?
No. Polotno ships no Packhelp dielines. Your app loads the dieline for each Packhelp product code onto the canvas, with labeled panels.
Can I preview the folded box?
Polotno is a 2D editor: it shows the flat dieline with every panel in place. For a folded-box view, pair it with a separate 3D visualization layer.
Start building
Get a Polotno API key (a trial key from your Polotno dashboard works), size the canvas to the Packhelp product spec, and send the exported file to Packhelp from your backend.
