2026-09 · Logo im QR-Code
Ein QR-Code auf einer Verpackung steht selten allein — daneben sitzt fast immer eine Marke. Bisher musste dieses Logo separat neben den Code gelegt werden. Jetzt lässt es sich direkt in die Mitte des Codes hochladen.
So geht’s im Dashboard
Auf der Detailseite eines Codes gibt es jetzt eine eigene Logo-Karte:
- Logo auswählen öffnet die Dateiauswahl (PNG, JPEG oder WebP, höchstens 1 MB).
- Beim ersten Hinzufügen und beim Entfernen erscheint eine Warnung mit Pflicht-Häkchen, weil sich dabei das Punktmuster des Codes ändert (siehe unten) — bestätigen, dann Logo hochladen bzw. Logo entfernen.
- Ein Ersetzen braucht keine Bestätigung: Nur das Bild in der Mitte wechselt, das Muster bleibt gleich.
Wer nur Lesezugriff hat (Rolle viewer), sieht Status und Vorschau, aber keine
der drei Aktionen — Hochladen, Ersetzen und Entfernen verlangen eine
Schreibrolle.
Was sich am Code ändert
Ein hochgeladenes Logo wird auf 512 × 512 px normalisiert und tatsächlich als
Pixel in qr.svg und qr.png eingebettet — nicht nur eine freigeräumte
Fläche in der Mitte. Beide heben dafür die Fehlerkorrektur auf H an.
Das hat eine Folge, die beim Drucken wichtig ist: Ein Logo hinzuzufügen oder
zu entfernen ändert das Punktmuster des Codes (Fehlerkorrektur M ↔ H).
Ein Ersetzen dagegen nicht — die Fehlerkorrektur bleibt H, nur die
eingebetteten Pixel wechseln. In beiden Fällen funktioniert ein bereits
gedruckter Code weiter, weil das kodierte Ziel nicht am Logo hängt — neu
drucken muss nur, wer die (neue) Logo-Optik auch auf dem Material sehen will,
und dabei alte und neue Druckdateien nicht mischen. PDF und EPS betten kein
Logo ein und behalten ihr Muster unverändert; für den Druck mit Logo sind
SVG oder PNG die richtige Wahl.
Per API
curl -X POST https://qr3.app/v1/codes/qr_a1b2c3d4/logo \
-H "Authorization: Bearer qr3_sk_..." \
-F "[email protected]"
POST /v1/codes/{id}/logo nimmt ein Multipart-Feld file entgegen und
ersetzt ein bestehendes Logo. DELETE /v1/codes/{id}/logo entfernt es wieder
und ist idempotent. Ein zu großes Bild antwortet mit 413, ein nicht
unterstütztes Format (SVG eingeschlossen — angenommen werden nur
Rasterbilder) mit 422, eine viewer-Rolle mit 403.
Mit gesetztem Logo liefern qr.svg und qr.png Cache-Control: public, max-age=300 statt der sonst üblichen 24 Stunden — eine eingebettete Bild-URL
zeigt eine Änderung also innerhalb von bis zu 5 Minuten, nicht erst am
nächsten Tag.
Eine ausführliche Anleitung mit allen Grenzwerten, Fehlercodes und Druckhinweisen steht unter Logo im QR-Code.
Was Sie tun müssen
Nichts. Ohne hochgeladenes Logo ändert sich an bestehenden Codes nichts — kein anderes Muster, keine andere Cache-Zeit, kein anderer Download. Das Logo ist eine rein optionale Ergänzung.