# Create an order (/api-reference/orders/v1-order-post) Creates a new order from an existing template, copying its design and product settings, and returns the new order's ID. Add recipients and execute checkout separately to send the order. ## `POST /v1/order` ### Request body Content type: `application/json` (required) - `templateId` (integer (int32), required) — The template to create the order from. Obtain it from the templates listing; note that a template is itself an order that is never fulfilled, so this is an order identifier. - `useQr` (boolean | null) — Whether the generated mail piece should include the template's QR code. true = include the QR code at its existing template placement; false = remove it. The selected template must already have a QR code element placed on its design, otherwise the request is rejected. Omit to keep the template's current setting. - `qrUrl` (string | null) — Optional target URL the QR code should direct to. When supplied, overrides the template's existing QR target; when omitted (with UseQr true) the template target is kept. - `handwritingFont` (string | null) — Optional handwriting style identifier. Must be a style supported by LettrLabs and available to the authenticated account. Handwriting styles are global only — fonts uploaded to the account cannot be used for handwriting and are rejected. Use the fonts listing operation to discover valid values. Omit to use the template's default style. ### Responses - `200` — Successful operation - `400` — Something went wrong - `401` — Authorization key not valid - `403` — Your subscription tier does not include API access. No response body is returned — do not attempt to parse one. - `500` — Internal Server Error