All checks were successful
Build and Deploy / deploy (push) Successful in 45s
Code documentation: - client.py: docstrings with Tink API docs URLs on every method - demo.py: docstrings on all route handlers explaining Tink flow context - webhook receiver: C# HMAC-SHA256 signature verification example Customer-facing cleanup: - Removed 'sales demo' / 'MoneyCapp × Tink' internal branding - Neutral footer, consistent terminology (external_user_id, not tink_external_ref) - Sandbox note on Step 3: anonymous flow vs production authorization_code flow - Step 6: 'Next Steps for C#/.NET implementation' section - demo_data.py: dynamic relative dates (no hardcoded year) - print() → logging.getLogger, /debug-session gated behind DEMO_MODE - Step 1 always resets session state (fresh start on every visit) - README: neutral/collaborative tone, what-it-is-not section Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
53 lines
2.0 KiB
Markdown
53 lines
2.0 KiB
Markdown
# Tink API Demo
|
|
|
|
En simpel Python-demo der viser Tink open banking-flowet fra ende til anden — bygget som proof-of-concept til at illustrere hvordan integrationen kan se ud i praksis.
|
|
|
|
Formålet er ikke at erstatte en produktion C#/Umbraco-implementation, men at vise at Tink-flowet er veldokumenteret og relativt ligetil at bygge — uanset platform.
|
|
|
|
## Hvad demo'en viser
|
|
|
|
| Step | Hvad sker der | Tink endpoint |
|
|
|------|---------------|---------------|
|
|
| 1 | Hent app token (client credentials) | `POST /api/v1/oauth/token` |
|
|
| 2 | Opret kunde i Tink med ekstern reference | `POST /api/v1/user/create` |
|
|
| 3 | Åbn Tink Link — brugeren tilslutter sin bank | Tink Link v1 |
|
|
| 4 | Hent brugerens konti med balances | `GET /data/v2/accounts` |
|
|
| 5 | Hent transaktioner | `GET /data/v2/transactions` |
|
|
| 6 | Webhook-registrering til real-time notifikationer | `POST /events/v2/webhook-endpoints` |
|
|
|
|
Live JSON responses på hvert trin — præcis som det vil se ud i en reel integration.
|
|
|
|
## Kør det selv
|
|
|
|
Du skal bruge egne Tink sandbox-credentials fra [console.tink.com](https://console.tink.com).
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
# Udfyld TINK_CLIENT_ID og TINK_CLIENT_SECRET
|
|
# Tilføj http://localhost:8000/callback som Redirect URI i Tink Console
|
|
|
|
python3 -m venv .venv && source .venv/bin/activate
|
|
pip install -r requirements.txt
|
|
make run
|
|
# Åbn http://localhost:8000
|
|
```
|
|
|
|
Eller med Docker:
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
docker compose up
|
|
```
|
|
|
|
## Tink Console opsætning
|
|
|
|
1. Gå til [console.tink.com](https://console.tink.com) → opret en app
|
|
2. Kopiér **Client ID** og **Client Secret** til `.env`
|
|
3. Under **Redirect URIs**: tilføj `http://localhost:8000/callback`
|
|
4. Under **Scopes**: aktiver `accounts:read`, `transactions:read`, `credentials:read`, `user:create`
|
|
|
|
## Hvad det ikke er
|
|
|
|
Dette er en demo — ikke produktionskode. Der er ingen database, ingen brugerstyring og tokens lever kun i hukommelsen. En reel implementation vil naturligvis bygge videre på jeres eksisterende platform og arkitektur.
|
|
|