# PHP müşteri backend örneği

RESMI_AKIS_V2 sunucu tarafı — Go/Node ile aynı doğrulama zinciri.

## Dosyalar

| Dosya | Route |
|-------|--------|
| `pending-login.php` | `POST /api/esign/pending` |
| `login-result.php` | `POST /api/ksign/login-result` |
| `session.php` | `GET\|DELETE /api/session` |
| `store.php` | Pending + session (temp dosya; production Redis/DB) |
| `users.php` | TCKN / e-posta eşlemesi + JWT claim cross-check |

## Akış

```
POST pending-login.php
  → correlation_id kaydı (5 dk TTL)

POST login-result.php  ← KSign api
  ├─ X-KSign-Secret-Key
  ├─ correlation_id → pending
  ├─ verification.valid
  ├─ access_token claims ↔ body
  ├─ identity → demo kullanıcı
  └─ app_session cookie + accepted

GET session.php → oturum durumu
```

## Ortam

```bash
export KSIGN_CALLBACK_SECRET='ksign_sk_test_...'
```

Demo kullanıcı: `TCKN=12345678901` veya `demo@smsc.tr`.

Web sunucusuna route map edin (ör. Nginx/`php -S` ile rewrite). `store.php` ve `users.php` doğrudan serve edilmemelidir.
