projectId in the app:saved event. That event happens in the customer’s browser, so treat the projectId as a claim, not as proof: a customer could send any id with their order.
Before you fulfil an order, have your server ask Print.App about the project with your secret key. The answer tells you whether the project is yours and which product it was made for.
1
Tell the editor which product it's for
When you open the editor, pass a
product object describing the product and, ideally, a reference your server generated for this cart line or session. Print.App saves it with the project exactly as you pass it.product can hold any JSON values you find useful. Keep it small.2
Send the projectId with the order
On
app:saved, put the projectId into your cart line or post it to your server.3
Verify on your server
Before accepting the order, fetch the project:
404: the project doesn’t exist, or belongs to another Print.App account. Reject the line.product: compare it with the product being ordered and the reference you issued.status:submittedmeans the customer finished the design.savedmeans they saved it for later.draftmeans it was only autosaved.
4
Fetch the print file
The project’s
exports hold its print files: pdf, png, jpeg and tiff. Download the file once the order is placed and keep your own copy. Files are rendered from the project’s current state, so if the project is edited later, a later download would differ.Export links work without a key, so treat them as confidential: don’t publish them.On WooCommerce, Automate fulfilment from WooCommerce shows the whole step, from the paid order to your print partner.What this proves
- A
200proves the project belongs to your account. The API only answers for your own projects. productshows which product page the project was made on. It stops a customer attaching someone else’s project, a project from another store, or a project made for a different product.productstill travels through the customer’s browser. A customer who deliberately crafts a project with a forgedproductcan pass this check. If print dimensions matter for pricing, also check the page size of the PDF you print.
Looking projects up later
GET /v2/projects lists your projects, most recently saved first. It can filter by status and save time, which is useful for reconciling orders in bulk.