# Solution recipes

> Products built on Sadakio, ready to ship: an automatic QR generator for cafés, a smart guest registration system, a loyalty app under your own brand and a retention dashboard.

Each recipe is a product: what it is, what comes out of the box, which endpoints it uses and a ready-made prompt for your AI assistant. Copy, adapt, ship.

<a id="qr-generator"></a>
## An automatic QR generator and QR menu system for your cafés

For agencies, POS resellers and service providers. One API call opens digital loyalty for your client café: the business, its guest sign-up page and a branded QR code are ready in seconds. The QR menu and table ordering infrastructure waits in the same business's panel, ready to switch on.

**Out of the box**

- A real, isolated business in one call: `POST /businesses`
- The guest sign-up page ready: `join_url` in the response
- A print-ready branded QR: `GET /businesses/{id}/qr.png`
- A panel for the café owner: menu, campaigns and Apple Wallet cards from us

**Flow**

```
POST /platform/v1/businesses            → café created, join_url returned
GET  /platform/v1/businesses/{id}/qr.png → download the QR PNG, print, ship
GET  /platform/v1/businesses            → every client café in one list
```

**Agent prompt**

```
Build an agency tool on the Sadakio Platform API. Contract:
https://api.sadakio.com/platform/v1/openapi.yaml
Form: café name and sector. On submit create the business, show its
join_url and the qr.png image, make it downloadable.
```

<a id="registration-system"></a>
## A smart guest registration and tracking system for business loyalty

Fast guest registration and counter tracking behind your own interface. A reception screen, a till tablet or your own app: register the guest by phone, record the visit, read the counters. Identity dedup is ours, the same phone never registers twice.

**Out of the box**

- `POST /guests`: phone registration, duplicates caught automatically (200 with `created: false`)
- `POST /guests/{id}/adjust` and `POST /guests/{id}/events`: raw counters or managed visit events
- `GET /guests/{id}/counters`: every balance of the guest in one object
- `GET /businesses/{id}/guests`: paginated list, phones masked (KVKK)

**Agent prompt**

```
Build a reception screen on the Sadakio Platform API. Contract:
https://api.sadakio.com/platform/v1/openapi.yaml
Enter a phone, register or find the guest, record the visit with
events, show the counters. Use Idempotency-Key.
```

<a id="loyalty-app"></a>
## A loyalty app under your own brand

Stamp and reward mechanics on a ready engine, brand and experience yours. Your guests see your app, counters and idempotent writes come from us. Double-stamping by accident is impossible by construction: a request with the same Idempotency-Key replays the first result verbatim.

**Out of the box**

- Isolated tenancy: every key sees only its own businesses, a foreign id is always 404
- Idempotent writes and daily budget protection: a loop bug cannot mint unlimited balance
- KVKK erasure included: `DELETE /guests/{id}` anonymizes the guest and zeroes the counters

**Agent prompt**

```
Build a branded loyalty web app on the Sadakio Platform API.
Contract: https://api.sadakio.com/platform/v1/openapi.yaml
Guests sign in by phone. The stamp screen reads the counters
endpoint, visits go through events. Design is mine, engine is Sadakio.
```

<a id="analytics-dashboard"></a>
## A retention analytics dashboard

Your own dashboard over your café's data. Guest list, visit feed and retention summaries come from the Business API, the visualization is yours.

**Out of the box**

- `GET /guests` and `GET /visits`: the raw feed with cursor pagination and date filters
- `GET /stats/retention`: returning-guest summaries over rolling 7, 30 and 365-day windows
- Incremental sync with `updated_since`: fetch only what changed each night

**Agent prompt**

```
Build an analytics dashboard on the Sadakio Business API. Contract:
https://api.sadakio.com/api/v1/openapi.yaml
Weekly retention chart, top 20 loyal guests and a list of guests
going quiet. Fetch incrementally with updated_since.
```

---

Your recipe is not here? Tell [biz@sadakio.com](mailto:biz@sadakio.com) what you are building. If an endpoint is missing we will look at the roadmap together.
