# KlickTipp Credential Provider

The plugin now supports a one-click connect flow:

1. Admin clicks `Verbinden`.
2. Plugin loads `username + developer_key` from a server-side provider.
3. Plugin redirects to KlickTipp grant flow to receive/store `customer_key`.

No credential fields are shown in WordPress admin.

## Integration options

### Option A: Direct filter (custom code)

```php
add_filter('klicktipp_credentials_provider_credentials', function () {
    return [
        'username' => 'site-specific-username',
        'developer_key' => '64_hex_chars_here',
        // Optional:
        // 'grant_access_account_id' => '262504184',
    ];
});
```

### Option B: Remote provider endpoint

Configure endpoint and auth token in custom code:

```php
add_filter('klicktipp_credentials_provider_endpoint', function () {
    return 'https://your-credentials-service.example.com/klicktipp/credentials';
});

add_filter('klicktipp_credentials_provider_token', function () {
    return 'your-service-token';
});
```

Optional payload customization:

```php
add_filter('klicktipp_credentials_provider_payload', function ($payload) {
    $payload['tenant'] = parse_url(home_url('/'), PHP_URL_HOST);
    return $payload;
});
```

Default payload sent to endpoint:

```json
{
  "site_url": "https://example.com/",
  "home_url": "https://example.com/",
  "admin_email": "admin@example.com",
  "blog_id": 1,
  "plugin_version": "0.0.1"
}
```

Expected success response JSON:

```json
{
  "username": "klicktipp-user",
  "developer_key": "64hexcharacters...",
  "grant_access_account_id": "262504184"
}
```
