Requirements
- A developer who can run server-side code and keep a secret off the browser
- A Printcart account and store; developer API keys (sk_ and pk_) need the Advanced plan or above
- Your printer's rules for each product: size, bleed and safe zone
- An HTTPS endpoint on your server to receive webhooks
Key takeaways
- Printcart Connect is a REST API, webhooks and two browser SDKs; every Printcart plugin and app is built on the same API.
- Build a custom print app on it when no Printcart app covers your front end: a custom storefront, a mobile app, a portal or an internal tool.
- The store secret stays on your server; the public token is the only credential meant for browser code.
- Your app keeps the commerce record; the Printcart project id is the join key, and the API returns a CMYK print PDF with trim and bleed boxes.
- AI Services add background removal and print-file preflight by API, billed per token; your app still decides what is accepted and printed.
On this page
What is the Printcart Connect API?
The Printcart Connect API is the developer layer of Printcart: a REST API, webhooks and two browser SDKs that embed the Printcart product designer in a page you control and carry each design through to a print-ready PDF. Every Printcart plugin and app is built on the same API, so a custom app uses the same engine as the stores on WooCommerce, Shopify and Wix.
The product page for it is the Printcart Cloud API on www.printcart.com, checked on 14 November 2026, and the platforms it already serves natively are listed on Printcart Connect integrations. According to the getting started guide, checked the same day, the base URL is api.printcart.com/v1, requests and responses are JSON over HTTPS, v1 is the only version in service, and changes inside v1 are additive. The whole reference is published as an OpenAPI 3.1 file, so a client can be generated from it.
This guide is for the case where your front end is your own. Whether you need the API at all, or a ready-made app is enough, is decided in the pillar guide print API integration or an app; here the decision is made, and the subject is how to build on it.
What kind of custom print app can you build on Printcart Connect?
You can build any front end that needs a product designer and a print-ready file: a custom or headless storefront, a mobile app, a corporate ordering portal, an internal order-entry tool for your staff, or a connector that feeds orders to an MIS, an ERP or a print supplier. Printcart supplies the designer, the files and the events; your app supplies the shop around them.
| App | What your app does | Printcart Connect parts it uses |
|---|---|---|
| Custom or headless storefront | Catalogue, cart, checkout, customer accounts | Design Tool SDK, REST API, print PDF, webhooks |
| Mobile or kiosk app | Native screens, photo pick, payment | REST API for products, images and designs; Design Tool SDK on web screens |
| Corporate ordering portal | Company log-in, approvals, cost centres | Templates through the API, Design Tool SDK, projects, webhooks |
| Upload-only order tool | Product choice and price, file intake | Uploader SDK, AI preflight, print PDF |
| Back-office connector | Job tickets, invoices, supplier orders | REST API (projects, PDFs) and webhooks |
When the front end is a standard platform, check the native app first. On the integrations page, checked on 14 November 2026, order sync, product sync, the designer and webhooks are native for WooCommerce, Shopify and Wix, while a custom storefront or app reaches the same features through the API. The platform-specific versions of this choice are in Printcart on Shopify: the app or the API for headless Shopify and Printcart on Wix and the API for Wix Headless. For back-office connectors, which system owns which field is mapped in web-to-print and MIS/ERP data flows.
Which building blocks does a custom print app use?
A custom print app uses five Printcart building blocks: the Design Tool SDK and the Uploader SDK in the browser, and the REST API, the print PDF endpoints and webhooks on your server, plus AI Services where files need checking or cleaning. Each block runs in one place and takes one kind of credential.

Embed this graphic
Copy this HTML to show the graphic on your site with a link to the source.
<a href="https://solution.printcart.com/insight/printcart-connect-api-build-custom-print-apps"><img src="https://solution.printcart.com/insight/printcart-connect-api-build-custom-print-apps/building-blocks.webp" alt="Matrix of six Printcart Connect building blocks: where each runs, which credential it uses and what it gives" width="1440" height="1080"></a><br>Source: <a href="https://solution.printcart.com/insight/printcart-connect-api-build-custom-print-apps">Printcart</a>The Design Tool SDK, checked on 14 November 2026, is the npm package @printcart/design-tool-sdk, also served from a CDN. It takes the public token and a product id, renders the designer when your code calls render(), and emits events your page listens to, such as upload-success, upload-error and edit-success, so your page knows when to move the customer on to the cart. The Uploader SDK is the lighter sibling for products that take a finished file: it binds to one side of a product and its labels can be translated.
On the server, the build path guide, checked the same day, lists the sequence: account, store, product, sides, images, design, project, print PDF, webhooks. A product is not printable on its own; its sides carry the design area, the bleed and the safe zone, and each design keeps a snapshot of its side, so editing the side later does not change an order already placed.
Which credential goes where in a custom print app?
The store secret goes on your server and nowhere else; the public token is the only credential meant for browser code. The authentication guide, checked on 14 November 2026, lists four credentials, and getting this split right is the first security decision of any custom print app.
| Credential | How it is sent | Use it from |
|---|---|---|
| Store key (sid and secret) | HTTP Basic | Your server only, full store privileges |
| Public (unauth) token | X-PrintCart-Unauth-Token header | The browser or the designer; low privilege |
| Account JWT with store sid | Bearer token plus X-PrintCart-Store-Sid | A dashboard acting on one store |
| Account JWT | Bearer token | Account-level calls and the AI Services |
The public token is deliberately low-privilege, but it is accepted on the few write endpoints the designer needs: saving a design, creating a project and uploading an image. Plan rotation before launch: PUT /stores/token-revoke reissues the sid, the secret and the public token together with no overlap window, so a token built into a storefront bundle stops working at that moment and the front-end deploy has to happen at the same time.
How do you build a custom print app, step by step?
Build a custom print app in six steps: create or reuse the store, model each product and its print sides, embed the designer, save the design and link it to your order, generate the print-ready PDF, and subscribe to webhooks. Steps three and four run in the customer's browser; the rest run on your server.

Embed this graphic
Copy this HTML to show the graphic on your site with a link to the source.
<a href="https://solution.printcart.com/insight/printcart-connect-api-build-custom-print-apps"><img src="https://solution.printcart.com/insight/printcart-connect-api-build-custom-print-apps/build-flow.webp" alt="Six steps: account and store, products and sides, embed the designer, save the design, print PDF, webhooks" width="1440" height="1080"></a><br>Source: <a href="https://solution.printcart.com/insight/printcart-connect-api-build-custom-print-apps">Printcart</a>Step by step
Step 1: Create the account and the store, or reuse an existing one
Call POST /account and POST /stores to get a store sid, secret and public token, or copy the credentials of a store a Printcart plugin or app already created. Keep the sid and secret on your server only.
Step 2: Model each product and its print sides
Create the product, then a side for each printable surface with its design area, bleed (cut_line_margin) and safe zone, or import a side from a template. Check GET /products/{product}/production-readiness before you open the designer to customers.
Step 3: Embed the designer or the uploader on your page
Install @printcart/design-tool-sdk, create the designer with the public token and the product id, and call render() from your own button. For upload-only products, the Uploader SDK attaches a file to a side.
Step 4: Save the design and link it to your order
When the customer finishes, the saved design creates a project, Printcart's word for an order. Store the project id with your own order record, which stays the source of truth for prices, customer and payment.
Step 5: Generate the print-ready PDF
From your server, call POST /designs/{design}/generate/print-pdf for each design. It returns a CMYK PDF with TrimBox, BleedBox and marks; the plain PDF and the preview PDF are not press files.
Step 6: Subscribe to webhooks and verify every delivery
Create a subscription per topic and event, for example projects on PUT. Check the HMAC-SHA256 Signature header against the raw body, answer fast, process the event in the background, and test the receiver against a production test store.
Step four holds the one design decision that shapes the rest. In the build path guide, a project created directly through the API has no commercial data: customer email, totals and currency stay empty, because only a platform integration writes them. Your app's order table therefore stays the source of truth for commerce, and the project id is the join key; GET /projects/{project} returns everything needed to produce the order, items and designs included.
Step five is where the print side pays off. The print PDF endpoint returns a CMYK PDF with TrimBox, BleedBox and marks, and for a canvas product the full print sheet with a cut line. The guide warns that the plain PDF is an RGB page with no bleed and the preview PDF is a low-resolution proof, so neither should go to press. Rendering is synchronous and can take several seconds, and the result is cached until you ask for a new one, which suits a background job better than a checkout request.
Step six follows the webhooks guide, checked on 14 November 2026. One subscription covers one topic, such as projects or designs, and one event; each delivery carries a Signature header, an HMAC-SHA256 of the raw body keyed with your store credentials, which your server compares in constant time before trusting the request.
Where does AI fit in a custom print app?
AI fits where customer files are checked or cleaned before they print. Through the Printcart AI Services endpoints, a custom app can remove a background, rate a file's DPI, run a full preflight check and create fix jobs such as adding bleed. AI measures and prepares the file; your app and your team decide what is accepted, shown to the customer and printed.
| AI step | Endpoint family | What the app or the shop still decides |
|---|---|---|
| Background removal | /v1/services/bg-remove, asynchronous job | Whether the cut-out edge is good enough to print |
| DPI score | /v1/services/preflight/dpi-score | What to tell the customer before checkout |
| Full preflight check | /v1/services/preflight/checks | Which warnings the printer accepts |
| Fix job (bleed, colour, flatten, resize) | /v1/services/preflight/ai-jobs | Approve or reject the suggestions, then release |
The AI Services documentation, checked on 14 November 2026, is precise about the limits. The services use account JWT authentication and are billed from the account's token wallet only when used; a balance that is too low answers HTTP 402 with the shortfall and a top-up link, so the app should catch it rather than fail the order. A fix job runs from a preflight report, and has its own approve and reject endpoints, which keeps a person or a rule in the loop. The upscale fix uses the Lanczos algorithm, not AI super-resolution: it enlarges cleanly but does not invent detail. The current token price is shown in the dashboard wallet before tokens are spent.
The quickest win is the DPI score, which the documentation lists as free: call it while the customer is still designing, and a photo that would print blurred is caught before the order exists. What each preflight line means is explained in AI preflight for custom print orders, and cut-outs inside the designer in AI background removal and upscale in an online designer.
What limits should a custom print app be designed for?
Design for four documented limits: 1,000 requests a minute per credential, cursor pagination of at most 100 items per request, webhooks that retry only 3 times with no replay, and error handling that branches on the HTTP status rather than the message. A client written to these rules works against every endpoint.
The conventions page, checked on 14 November 2026, sets the general rate limit at 1,000 requests per minute, keyed by the authenticated principal and not tiered by plan or endpoint. Lists are cursor-based with no total count, so you walk forward through links.next until it is empty, and a limit above 100 is rejected rather than clamped. Most errors carry no machine-readable code; the exceptions are capability_not_available, storage_quota_exceeded and insufficient_tokens, which are the ones worth special screens in your app.
Webhook delivery, per the webhooks guide, retries a failed delivery up to 3 times with exponential backoff, and each attempt times out after 3 seconds. There is no delivery log and no replay, so a receiver that was down reconciles by listing the affected projects through the API. Webhooks are sent from production only, so test against a production test store, not a staging copy. Once product data and orders are reachable by API, the same store is a step closer to being usable by AI agents acting for buyers, the subject of is your print store ready for AI agents.
Which Printcart plan does a custom print app need?
A prototype can start on any plan, since the API reference is public and the store key and public token work everywhere. Developer API keys (sk_ and pk_) and an origin allowlist need the Advanced plan or above; webhooks, team seats and integration support grow with the package. Full stores sold here include the Advanced licence from Store B2B up.
On the Printcart pricing page of www.printcart.com, checked on 14 November 2026, the Advanced store plan is listed at $199 a month, and Enterprise from $499 a month with custom integration support. Below Advanced, the key-creation endpoints answer HTTP 402 with the code capability_not_available, and keys that already exist keep working, as the authentication guide states.
| Licence item | Store | Store B2B and Store Marketplace | Enterprise |
|---|---|---|---|
| Printcart licence included | Premium | Advanced | Enterprise |
| Webhooks | 3 | 20 | No limit |
| API keys and origin allowlist | – | Included | Included |
| Price | USD 799 a year | USD 1,814 a year (Store B2B) | Quoted |
The full store packages are set up by the Printcart team with the products and print options in place, which is often the fastest base for a custom front end: the B2B print store adds company accounts, price lists and approvals, and the print marketplace store adds sellers' stores, commissions and payouts.
Should you build the app yourself or have Printcart build it?
Build it yourself when you have developers who can own a server, a deploy pipeline and the webhook receiver after launch; the documentation is public and the API is the same one Printcart's own apps use. Have Printcart build it when the deadline is close, the team is busy, or the app has to connect systems as well as show a designer.
The Printcart services for this work start small. Cloud API developer onboarding is a fixed-price starter that sets up keys, a working request flow and the path from product to print-ready file with your developers. Custom theme and headless storefront integration makes the designer work inside a custom or headless front end, from the launcher to cart and checkout. Designer UI and branding customization matches the designer to your brand, and the Printcart API and order automation integration connects orders, files and status to your own systems. All integration work is listed under Printcart integration services, and the AI set-ups under Printcart AI services.
To start, read the Printcart Cloud API page and its documentation, and check the Printcart Connect integrations matrix for the parts that are already native. For a written scope and price, ask for a quote from the contact block on this page. Printcart is a brand of Netbase JSC; services are delivered remotely, and contracts and payments are made with the company.
Frequently asked questions
What does the Printcart Connect API include?
It is the developer layer of Printcart: a REST API at api.printcart.com/v1, webhooks and two browser SDKs, the Design Tool SDK and the Uploader SDK. Together they put the Printcart product designer into your own storefront or app and carry each saved design through to a print-ready PDF.[1][3]
Do I need a Printcart app or plugin before I use the API?
No. The REST API is independent of any app or plugin: you can create an account and a store with two API calls. If a Printcart plugin or app already created your store, copy its credentials from the dashboard instead of creating a second store.[3]
Which Printcart plan do I need to build a custom print app?
The API reference is public, and the store key and public token work on every plan, so a prototype can start on any plan. Creating developer API keys (sk_ and pk_) needs the Advanced plan or above; below it the key endpoints answer HTTP 402 with the code capability_not_available.[4][3]
Can a custom print app use Printcart AI?
Yes, through the AI Services endpoints: background removal, a DPI score and a full preflight check of a print file, and fix jobs such as adding bleed. They use account JWT authentication and are billed from the account's token wallet; a low balance returns HTTP 402.[10]
Sources
- Cloud API for the Designer (Printcart Connect), checked
- Store, MIS and ERP integrations (Printcart Connect), checked
- Getting started with the Printcart REST API (Printcart docs), checked
- Authentication: credential types and API keys (Printcart docs), checked
- Build path: product to print-ready PDF (Printcart docs), checked
- Design Tool SDK (Printcart docs), checked
- Uploader SDK (Printcart docs), checked
- Webhooks: topics, signature and delivery (Printcart docs), checked
- Conventions: pagination, errors and rate limits (Printcart docs), checked
- AI Services: removal, preflight, upscale (Printcart docs), checked
- Printcart pricing for merchants: Store Plans and AI Wallet (printcart.com), checked
- Full store pricing: Store, B2B, Marketplace, Enterprise (Printcart), checked
- OpenAPI Specification 3.1.0, checked
- HMAC (Wikipedia), checked
- Webhook (Wikipedia), checked
About the author
Huy Nguyen (David)
Founder & CEO, Printcart
Huy Nguyen (David) is the Founder and CEO of Printcart. Questions about this article go straight to him and the Printcart team.
LinkedInBuild it with the Printcart team
- ServiceCloud API Developer Onboarding
- ServiceCustom Theme and Headless Storefront Integration
- ServicePrintcart API and Order Automation Integration
- ServiceDesigner UI and Branding Customization
- Full storeB2B print store
- Full storeWordPress print shop store
- Full storePrint marketplace store
Tell us what you want to sell. Huy Nguyen (David), our CEO, and the sales team reply with a written scope and quote.





