Letzte Woche im Baumarkt. Ich stehe an der Kasse, der Kassierer fragt nach der Kundenkarte. Ich krame das Handy raus, öffne die App, suche den Barcode-Tab, warte bis er lädt. Hinter mir wird die Schlange länger. Die App will mir noch ein Angebot zeigen, ein Pop-up zur Datenschutzerklärung, ein Hinweis auf neue Funktionen. Endlich der Barcode. Der Kassierer scannt. Klappt.
Auf dem Heimweg dachte ich: Das nächste Mal mache ich einen Screenshot vom Barcode und packe ihn ins Wallet. Spart die App, spart das Suchen, spart den Stress. Zuhause angekommen, Handy raus, Barcode-Screen in der App geöffnet, Power + Lautstärke gedrückt — Screenshot. In der Galerie nachgeschaut. Der Bereich, wo der Barcode war, ist leer. Komplett weiß. Die App hat den Code beim Screenshot ausgeblendet.
Das ist kein Bug, das ist Absicht
Apps können auf Android und iOS gezielt verhindern, dass bestimmte Bildschirminhalte auf Screenshots oder bei Bildschirmübertragungen sichtbar sind. Auf Android heißt der Mechanismus FLAG_SECURE — gedacht für Banking-Apps, Passwort-Manager, sensible medizinische Daten. Auf iOS gibt es ähnliche Verfahren, etwa über UIScreen.isCaptured oder das gezielte Verstecken von Views, sobald ein Screenshot ausgelöst wird.
Diese Mechanismen sind sinnvoll. Bei einer Banking-App oder einem Passwort-Manager will ich nicht, dass meine Kontonummer oder mein Master-Passwort versehentlich in der Cloud-Galerie landet. Das ergibt Sinn.
Bei einem Kundenkarten-Barcode ergibt es weniger Sinn. Der Code identifiziert mich als Kunden, mehr nicht. Trotzdem nutzen einige Händler — Obi war in meinem Fall der Auslöser, aber das gibt es weltweit bei diversen Loyalty-Apps — diese Schutzmechanismen, um den Barcode an die App zu binden. Der Grund liegt auf der Hand: Wenn ich den Code im Wallet habe, öffne ich die App nicht mehr. Keine Pop-ups mehr, keine Angebote, keine Push-Notifications, keine Tracking-Datenpunkte. Aus Sicht des Händlers ist das ein Verlust.
Der erste Workaround: Die Nummer reicht oft
Beim nächsten Einkauf habe ich es ausprobiert. Statt den Barcode zu scannen, habe ich dem Kassierer die Kundennummer genannt — die steht in der App im Klartext direkt unter dem Barcode. Er hat sie eingetippt. Hat funktioniert. Punkte wurden gutgeschrieben.
Das ist kein Trick, sondern wie diese Systeme tatsächlich aufgebaut sind: Der Barcode ist nur eine schnelle Repräsentation der Kundennummer. Die Nummer selbst ist der Schlüssel zum Konto. Der Barcode-Scanner und die manuelle Eingabe landen am Ende auf demselben Datenfeld in der Kassensoftware.
Heißt für die Praxis: Die Kundennummer einmal abschreiben oder abfotografieren, ins Wallet als Notiz oder in einen Passwort-Manager — und an der Kasse ansagen. Spart die App. Funktioniert bei den meisten Loyalty-Programmen, weil sie historisch alle eine eintippbare Nummer als Fallback brauchen — für Telefonbestellungen, für Reklamationen, für genau den Fall dass der Scanner streikt.
Der zweite Workaround: Mit einem zweiten Gerät abfotografieren
Manche Karten haben aber gar keine sichtbare Nummer mehr — nur den Barcode. Oder die Nummer ist 18-stellig, da hat der Kassierer keine Lust drauf. In diesem Fall greift der zweite Trick:
Ein zweites Handy nehmen und den Barcode abfotografieren. Der Screenshot-Schutz greift nur, wenn das Bild innerhalb des Geräts erstellt wird. Eine externe Kamera sieht den Bildschirm wie ein Mensch — der Schutz wirkt nicht. Das Foto ist vielleicht nicht perfekt, aber gut genug, um es als Bild in OtterWallet hochzuladen, den Barcode auslesen zu lassen und einen sauberen Wallet-Pass daraus zu erstellen.
Variation: Wenn kein zweites Handy zur Hand ist, geht auch die alte Webcam am Laptop. Oder der Tablet von der Partnerin. Hauptsache: zwei Geräte, eines zeigt den Code an, das andere fotografiert ihn.
Warum das überhaupt ein Thema ist
Der Trend zu app-only Kundenkarten ist unverkennbar. Statistik gibt es leider wenige öffentliche, aber wer sich umschaut, sieht es überall: Drogeriemärkte, Baumärkte, Supermärkte, Tankstellen — die Plastikkarte verschwindet, die App ersetzt sie. Aus Händler-Sicht ist die Logik klar: Eine eigene App ist ein direkter Kommunikationskanal, wertvoller als jede Kundenkarte. Push-Notifications, Standort-Tracking, In-App-Werbung, Cross-Selling — all das geht nur, wenn der Kunde die App öffnet.
Aus Kunden-Sicht ist die App oft das Gegenteil von praktisch. Drei Sekunden zum Öffnen, fünf Sekunden bis der Barcode geladen ist, ein paar Sekunden Pop-up wegklicken. An einer Kasse mit Schlange ist das eine kleine Ewigkeit. Die alte Plastikkarte war in zwei Sekunden im Geldbeutel gefunden.
Wallet als Mittelweg
Ein Wallet-Pass ist deutlich näher am alten Plastikkarten-Erlebnis als an der App: Doppelklick auf die Seitentaste am iPhone, automatische Helligkeitsanhebung, Barcode in 0,5 Sekunden vor dem Scanner. Keine Pop-ups, keine Werbung, keine Login-Screens.
Der Händler verliert dadurch zwar den App-Touchpoint — aber das ist nicht mein Problem als Kunde. Mein Problem ist die Schlange hinter mir.
OtterWallet ist genau für diesen Fall gebaut: Du gibst die Kundennummer als Barcode ein (oder lädst ein Foto vom Barcode hoch), wählst das Format, und kriegst einen sauberen Apple- oder Google-Wallet-Pass. Funktioniert mit Code 128, EAN, QR, Aztec, PDF417 — was auch immer dein Händler benutzt.
Fazit
Wenn deine Kundenkarte nur in der App lebt und Screenshots blockt: Das ist Absicht, nicht Zufall. Der Händler will dich in der App halten. Aber an der Kasse zählt am Ende die Kundennummer, nicht der Barcode — und die kannst du dir notieren oder mit einem zweiten Gerät den Code einmal abfotografieren. Beides funktioniert, beides ist legal, beides bringt dich dahin, wo du eigentlich hinwolltest: Die Karte ist im Wallet, die App bleibt geschlossen, die Schlange wird nicht länger.
Manchmal sind die einfachsten Tricks die besten.