Mockad datakälla · v1
Verifieringstjänst
Ett API och ett hostat samtyckesflöde för myndighets- och inkomstverifiering. Långivaren skapar en session, kunden identifierar sig i vårt flöde, och rapporten levereras via webhook eller hämtas på rapport-endpointen. Alla datakällor är i detta läge mockade och scenario-styrda.
1. Session
POST /api/public/v1/sessions med API-nyckel. Svar: sessionId och hostedUrl.
2. Hostat flöde
Kunden skickas till hostedUrl, identifierar sig (simulerad BankID) och vi hämtar uppgifterna hos Skatteverket och Kronofogden i kundens namn, en källa åt gången.
3. Leverans
Webhook med HMAC-signatur, plus GET på rapport-endpointerna.
Skapa session
Autentisering: Authorization: Bearer <api-nyckel>. Skicka Idempotency-Key för säkra omförsök – endast lyckade svar cachas.
POST /api/public/v1/sessions
Authorization: Bearer vk_test_...
Idempotency-Key: 6f1c-...
{
"tenantId": "tenant-a",
"externalReferenceId": "app-10231",
"ssn": "199001019802",
"countryCode": "SE",
"verificationType": "income-verification",
"mockScenario": "kfm-debt",
"returnUrl": {
"success": "https://kund.example.com/klart",
"failure": "https://kund.example.com/avbrutet"
}
}
201 {
"sessionId": "sess_...",
"hostedUrl": "https://.../session/sess_...",
"expiresAt": "2026-01-01T12:30:00.000Z"
}Webhook
Signeras med tenantens hemlighet: x-signature: sha256=<hex> över den råa bodyn. Tre försök med exponentiell backoff.
POST <tenantens webhook_url>
x-signature: sha256=9f2b...
{
"externalReferenceId": "app-10231",
"ssn": "19900101****",
"sessionId": "sess_...",
"status": "completed",
"reportId": "rep_...",
"timestamp": "2026-01-01T12:04:11.000Z"
}Hämta rapport
GET /api/public/v1/report/sdk-data/{externalReferenceId}/{countryCode}/{ssn}
GET /api/public/v1/report/{externalReferenceId}/{countryCode}/{ssn}
Authorization: Bearer vk_test_...
200 rapport (JSON)
204 ingen rapport ännu – inget felPersonnummer i URL:en slås upp via HMAC-hash; klartext lagras aldrig. Saknad rapport ger alltid 204, aldrig 500, så anropande system inte slås ut.
Testpersonnummer
Dedikerad testpool med födelseår 2099 – kan aldrig förväxlas med riktiga personnummer. Mappningen ligger i databasen och kan överstyras per session med mockScenario.
| Personnummer | Utfall |
|---|---|
| 209901010001 | clean – inkomst, inga anmärkningar |
| 209901010002 | kfm_debt – skuld hos Kronofogden |
| 209901010003 | salary_garnishment – aktiv löneutmätning |
| 209901010004 | multiple_remarks – flera anmärkningar och lån |
| 209901010005 | low_income – låg inkomst |
| 209901010006 | high_income_spike – inkomsttopp |
| 209901010007 | no_income – ingen inkomst |
| 209901010008 | source_error – simulerat källfel (failed) |
PD-score är en tydligt märkt platshållarformel och ska inte användas för kreditbeslut.