Authentication

Start an authentication process

Authenticating with BankID can be started in one of two different ways:

  • Use the provided bankIdToken to start BankID on the same device. For instructions for specific OS:es, see this integration guide. The value of bankIdToken in the response should be used for autostarttoken when launching the app.
  • Present a QR code for the user to scan. The QR code should be encoded with the value of qrCode, exactly as is. The code is only valid for a very short timespan, and you will have to continuoulsy update it with the code received in the status endpoint. This is the only option if BankID is not installed on the same device.

Upon a successful request, a BankID token and a QR code is received, and the client takes appropriate action, depending on the method chosen.

From here, do the following:

  • Poll Get the status of an authentication process, and upon receiving 'complete', call Verify and complete a authentication process

For more information regarding BankID, see the BankID resource in the Developer Portal

post/auth/start

Request

  • Base URL: https://bankapidemo.svea.com
  • URL: https://bankapidemo.svea.com/auth/start
  • Auth: none declared

Headers

X-Svea-CorrelationIdstring uuid

The correlationId is a unique identifier value that is attached to requests and messages that allow reference to a particular transaction or event chain. Used to follow transaction information, especially for logging purposes.

Example:21436a05-d62d-4f29-a253-31b3815d148b
X-Svea-SessionIdstring uuid

The sessionId is a unique identifier value for a users session. This identifier should be the same for the entire duration of that users session. Mainly used for logging and troubleshooting purposes.

Example:afe56332-dee2-48b4-ae0b-d694a6174a7e

Request body

bankIdNumberstring nullable required

Required if mode = 'FAKE'. Should be null otherwise. If specified must be a valid swedish person number.

mode'FAKE' | 'TEST' | 'PROD' required

Available modes:

  • FAKE - No device needed, will instantly receive status complete.
  • TEST - Physical test device needed.
  • PROD - Regular. Only mode supported in production. Not available below production.
providerstring nullable

This is a temporary flag to opt in to the QR flow

tenantstring required

Example request

{
  "bankIdNumber": "199403086854",
  "mode": "FAKE",
  "provider": "eid",
  "tenant": "Demo-8ma2Vf"
}

Response

OK

bankIdTokenstring required
orderTimestring date-time required
qrCodestring required

Example response

{
  "bankIdToken": "ca8538ea-124e-4f06-8395-3febf5065710",
  "orderTime": "2025-10-28T13:57:27.1719088Z",
  "qrCode": "bankid.7668e339-43df-420d-9d73-56e81ae0a6d1.1.e07c99ac6729990cfcc06bb304fa0b76fd6f0031045a143927e28be64a3a45b9"
}

Changes

No recorded changes to this operation across all 1 revision of this API.