---
title: "Retrieve a QR code for an order"
method: GET
path: "/shop/orders/{orderId}/qr-code"
tags: ["Orders"]
---

# Retrieve a QR code for an order

`GET /shop/orders/{orderId}/qr-code`

Returns a PNG image encoding `TRYBE_ORDER_{orderId}` as a QR
code. The Trybe-prefixed payload lets the Trybe operator app
distinguish order codes from other QR payloads it scans, and
avoids decoding ambiguity with raw IDs.

The response is cached for one hour (`Cache-Control:
public, max-age=3600`) — the encoded payload doesn't change for
the lifetime of the order.

No authentication is required for this endpoint, matching the
behaviour of `print-pos-receipt` and the other operator-facing
print routes; the order ID is the secret.

## Response `200`

A PNG-encoded QR code for the order.

## Other responses

- `404` — The resource couldn't be found

---

[API](https://skmtc.dev/try/apis/trybe-api.md) · [All operations](https://skmtc.dev/try/apis/trybe-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/try/trybe-api/revisions/f37f92702da5/schema)
