Scan & Go APIScan & Go API
Scan & Go ermöglicht Kunden, Produkte mit dem Smartphone zu scannen und per App zu bezahlen. Diese Endpoints steuern den gesamten Checkout-Flow.
Scan & Go lets customers scan products with their smartphone and pay in the app. These endpoints control the entire checkout flow.
POST /api/v1/checkIn
Startet eine Scan & Go Session. In der BEEP!-App scannt der Kunde den QR-Code im Store.
Starts a Scan & Go session. In the BEEP! app the customer scans the store QR code.
Request Body
| Parameter | Typ | Pflicht | Beschreibung |
|---|---|---|---|
storeId | string | Ja | ID des Stores |
userId | string | Ja | ID des Kunden (Consumer-App) |
POST /api/v1/startCheckout
Startet den Checkout-Prozess. Erstellt eine Stripe-Payment-Session und gibt die Checkout-URL zurück.
Starts the checkout process. Creates a Stripe payment session and returns the checkout URL.
Request Body
| Parameter | Typ | Pflicht | Beschreibung |
|---|---|---|---|
userId | string | Ja | Kunden-ID |
storeId | string | Ja | Store-ID |
sessionId | string | Ja | Session-ID aus checkIn |
currency | string | Ja | "EUR" |
destination | string | Nein | PSP-Account-ID (Stripe Connect) |
items | array | Ja | Produkt-Array mit name, priceUnit (Cent!), quantity, vat |
priceUnit ist immer in Cent (Integer). vat ist 7 oder 19 (Prozent). In der Sandbox wird kein echter Stripe-Checkout erstellt.POST /api/v1/fetchPurchase
Ruft Details eines einzelnen Einkaufs ab, inklusive Items, Kassenbondaten und TSE-Signatur.
Fetches details for a single purchase, including items, receipt data and TSE signature.
| Parameter | Typ | Pflicht | Beschreibung |
|---|---|---|---|
purchaseId | string | Ja | ID des Einkaufs |
POST /api/v1/fetchPurchaseHistory
Gibt eine Liste der letzten Einkäufe für einen Store oder User zurück. Ideal für Statistiken und Beleg-Übersichten.
Returns a list of recent purchases for a store or user. Ideal for statistics and receipt overviews.
| Parameter | Typ | Pflicht | Beschreibung |
|---|---|---|---|
storeId | string | Nein | Filtert nach Store |
userId | string | Nein | Filtert nach User |
limit | number | Nein | Max. Anzahl (Default: 20) |
AblaufFlow
- Check-in: Kunde scannt QR-Code →
checkIn→ Session-ID - Scanning: Kunde scannt Produkte (läuft in der App, kein API-Call nötig)
- Checkout:
startCheckout→ Stripe Payment Link - Zahlung: Kunde bezahlt über Stripe → Webhook
checkout.completed - Beleg:
fetchPurchase→ TSE-signierter Kassenbon