Sell custom-designed products on your own site
IdealFactory puts the Customiser — its full product design studio — on your product pages. Your customers personalise products right where they shop; IdealFactory stores every design and produces the print-ready files. You keep your own checkout, your own prices, and your own customer relationship.
What data reaches IdealFactory depends on who produces: produce in-house and orders arrive as design references and quantities only — the API has no customer fields at all. If IdealFactory ever arranges production and shipping for you, that's a separate integration which necessarily carries a shipping address.
How it works
A snippet shows the Customiser; a design id comes back for your cart; checkout is untouched; after payment your server trades ids for print files. (Or skip the last step — your team can always download files from the IdealFactory panel.)
POST /v1/shop/ordersdesign ids & quantities, your order refGET /v1/shop/orders/{ref}poll until files appearStart small, add what you need
| Add-on | What you get | The work |
|---|---|---|
| Design | Customers design on your product pages; cart editing included | Paste one snippet — Quickstart |
| Production | Print files appear automatically when orders are paid | One server call at order-paid — Orders & print files |
| Accounts | Designs follow your logged-in customers across devices and visits | One server call per page — Customer identity |
Each piece is independent. Most shops go live with the snippet in an afternoon and add the rest later — nothing about starting simple has to be undone.
Two credentials, two very different rules
| Credential | Lives | Rules |
|---|---|---|
Embed key (ek_…) |
In your page source | Public by design. It can only create Customiser sessions, and only from your registered domains — anywhere else it is inert. |
| API token | In your server config | Secret. Creates orders, reads status, mints customer tokens. Must never appear in a page or a browser request. |
Your registered domains are the security boundary: the Customiser loads, and the embed key works, exactly there and nowhere else. Domains are registered when your shop is connected — make sure every domain you'll use, including staging, is on the list.
Base URL
All API endpoints in these docs live under https://api.idealfactory.com/v1/.
Going-live checklist
- Your production and staging domains are registered.
- The embed key is in your snippet; the API token (orders + identity) is in your server config.
- Each sellable product has its IdealFactory product id on your side.
- Finish a test design and check the design id lands on your cart line —
that proves your
customiser:design-readyhandling end to end. - Order automation: your order-paid hook posts to
/v1/shop/orders, and something polls for files — or your team collects them from the IdealFactory panel.
When something doesn't work
| Symptom | Almost always |
|---|---|
| Customiser area stays blank | The page's domain isn't registered — the browser refuses the frame. Check the console for a frame-ancestors error. |
customiser:error with stage session (403) |
Same cause — unregistered origin (or external shops not yet enabled for your account). |
customiser:error with stage session (401) |
Wrong or revoked embed key. |
| Works locally, fails in production | The production domain isn't registered. Origins are exact: www. and the bare domain are different origins. |