Create draft order
Create an order as a draft. Nothing is charged or sent to print.
MCP tool printful_write → create_draft_order
write
Creates the order with the recipient and items and leaves it as a draft. Printful charges only confirmed orders, and you can edit or delete a draft in the Dashboard, or with cancel_order. It reaches no one and costs nothing, so it does not ask for confirmation.
Parameters
| Name | Type | Description |
|---|---|---|
| recipient object required | object | name, address1, city, country_code, zip, and state_code where required. |
| items object[] required | object[] | Items as sync variant_id and quantity. |
| shipping string | string | Shipping option name from get_shipping_rates. Default: Standard. |
tools/call
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "printful_write",
"arguments": {
"operation": "create_draft_order",
"arguments": {
"recipient": {
"name": "Anna Berg",
"address1": "Lindenallee 4",
"city": "Hamburg",
"country_code": "DE",
"zip": "20095"
},
"items": [
{
"variant_id": 5120881,
"quantity": 1
}
],
"shipping": "Standard"
}
}
}
} Example response
{
"content": [
{
"type": "text",
"text": "{ ... same JSON as structuredContent ... }"
}
],
"structuredContent": {
"order_id": 31920,
"status": "draft",
"recipient": "Anna Berg",
"items": 1,
"created_at": "2026-10-17T09:20:00Z"
},
"isError": false
}