Polotno + Spreadshirt (SPOD) pairs Polotno's embedded design editor SDK with the Spreadshirt Developer Platform . Your users design apparel inside your app, your backend submits the order through SPOD or the Shopify app flow, and Spreadshirt prints and ships from EU ( spreadshirt.net ) or NA ( spreadshirt.com ) facilities.
The problem Spreadshirt doesn't solve
Spread Group runs a 1000+ employee operation with serious fulfillment capacity and two regional endpoints. But partner apps integrating via API inherit the catalog and order flow — not the designer. Their native designer stays on Spreadshirt's site; external sites and Shopify stores are left to build their own.
Teams integrating Spreadshirt without a design layer usually:
- Link users off-site to Spreadshirt's designer, breaking the flow
- Build a bare upload UI on top of SPOD's Shopify app
- Commit to one garment because recomposing designs per product is a project
Polotno goes in front of SPOD so Shopify and custom stores get a web-native designer tied to Spreadshirt's SKUs and print-zone specs.
How the integration works
- Design — User picks an SPOD garment and base color. Polotno loads the canvas with print-zone overlays.
- Edit — User composes artwork, selects placements (front, back, sleeve).
- Export — Your app exports 300dpi PNG or PDF per placement using store.toDataURL .
- Order — Your backend POSTs the order to the SPOD API (EU or NA endpoint) or to Spreadshirt's Shopify app flow.
- Fulfill — Spreadshirt prints from the regional facility and ships.
What a request looks like
// 1. Export per-placement 300dpi artwork.
const frontPng = await frontStore.toDataURL({ mimeType: "image/png", pixelRatio: 4 })
const backPng = await backStore.toDataURL({ mimeType: "image/png", pixelRatio: 4 })
const frontUrl = await uploadToYourStorage(frontPng)
const backUrl = await uploadToYourStorage(backPng)
// 2. POST the order to SPOD. SPOD uses SprdAuth-style headers.
// Route to api.spreadshirt.net (EU) or api.spreadshirt.com (NA).
// See https://developer.spreadshirt.net/ for the REST + Shopify schemas.
await fetch(SPOD_ORDERS_ENDPOINT, {
method: "POST",
headers: {
Authorization: `SprdAuth apiKey="${SPOD_API_KEY}", sig="${signature}"`,
"Content-Type": "application/json",
},
body: JSON.stringify({
/* SKU, placements, artwork URLs, shipping — per SPOD docs */
}),
})
What Polotno handles vs. what Spreadshirt handles
Polotno (in your app)
- Per-garment templates + print-zone overlays
- Embedded editor UI
- Multi-placement design (front, back, sleeve)
- Garment color + size preview
- 300dpi export per placement
Spreadshirt / SPOD (backend)
- Full SPOD garment catalog
- DTG, sublimation, and other print methods
- EU ( spreadshirt.net ) and NA ( spreadshirt.com ) fulfillment
- Shopify app integration
- Order + shipping status callbacks
Technical details
- Export: 300dpi PNG or PDF per placement via store.toDataURL .
- Endpoints: EU at api.spreadshirt.net , NA at api.spreadshirt.com — route per customer shipping.
- Auth: SprdAuth signed requests — see Spreadshirt's developer docs .
- Shopify path: Polotno renders inside the storefront; order flows through Spreadshirt's Shopify app.
- Rendering modes: Client, self-hosted, or cloud .
What you can build
Any garment or accessory in the SPOD catalog:
- T-shirts, long sleeves, tank tops
- Hoodies and sweatshirts
- Kids and baby apparel
- Bags and accessories
- Phone cases
- Caps
FAQ
Do I need a Spreadshirt developer account?
Yes, with SPOD API credentials for the region(s) you ship to.
Does this work with Spreadshirt's Shopify app?
Yes. Polotno renders inside the Shopify storefront; order placement goes through the existing Shopify app integration.
Which region should I route orders to?
EU ( api.spreadshirt.net ) for European customers and NA ( api.spreadshirt.com ) for North American customers based on shipping address.
Closed beta
The Polotno + Spreadshirt (SPOD) integration has been in closed beta since April 2026. If you're building on SPOD or Spreadshirt's Shopify app, request access — or start integrating Polotno first.
