OIDC

Open Identity Connect

OIDC is an open standard with wide adoption. This means it’s highly likely the code, in the form of a library, to integrate OneID with your service already exists. The OpenID Foundation provides lists of certified OIDC libraries for different programming languages and frameworks. For Shopify, we provide our own integration via app plug-in.

Supported Scopes

Each data we verify is called a scope. These scopes can be configured using the OneID API to return claims from the Userinfo end point.

Full list of supported scopes:

ScopeDescription and Returned Attributes
openid

Subject identifier: a consistent unique identifier for an individual

"sub":"6f35afb8-42ee"

profile

Full name

"name”:"Janet Davidson","given_name":"Janet","family_name":"Davidson"

date_of_birth``

Date of birth

"birthdate":"1985-06-01"

address

Address information embedded in a separate structure

"address": {"street_address":"3614 Poe Road”,"locality":"Heworth”,"region":"York”,"postal_code":"YO31 1EB”,"country":"UK"}

email

Email

"email":"janet.davidson@example.com"

phone

Phone number

"phone_number”:”+440000000000"

age_over_18``

Boolean for an individual if they are over 18

"age_over_18": true

fraud

Fraud indicators:

activityHistoryScore Values range from 0 to 4. 0 means there was no match.

identityFraudScore Values range from 0 to 3. 0 means there is potential ID fraud. If the score is 0 then the reason will be indicated by the fields nationalSIRAFraud, nationalSIRAVictim, disclosureOfDeathRegistrationInformationMatch, amberhillMatch and noMatch.

nationalSIRAFraud This is an indication that the supplied individual has previously attempted to commit fraud.

nationalSIRAVictim This is an indication that the supplied individual's details have previously been used in impersonation fraud.

amberhillMatch Amberhill is a database held by the Metropolitan Police Service relating to fraudulent identity documents.

noMatch We have not been able to match the individual to any data sets. This is therefore an indication that it could be a synthetic ID.

"fraud": {"searchPerformed": true,"activityHistoryScore": 0,"identityFraudScore": 0,"nationalSIRAFraud": false,"nationalSIRAVictim": false,"disclosureOfDeathRegistrationInformationMatch": false,"amberhillMatch": false,"noMatch": false}``

OpenID Connect Client Configuration

Any relying party service (e.g. ecommerce website) with a server can use an OIDC confidential client. This is the most widely supported OIDC configuration.

We recommend that relying parties create a confidential client to access OneID. In most cases support for confidential OIDC clients already exists for common web frameworks and programming languages.

The Relying Party client configuration consists of:

  • Client ID: a uuid which identifies this OIDC client to the OneID Platform.
  • Client Secret: an opaque string used to authenticate the client to private API endpoints.
  • Redirect URL: the URL users will be returned to once they have authenticated and shared data from their bank. The OneID platform maintains an allowlist of these redirect URLs so changes must be reflected in the platform before a new redirect_uri OIDC parameter can be used.
  • Relying Party origins: a list of the origin server names used by the relying party.

State

The OAuth state parameter is required in order to help mitigate CSRF attacks by using a unique and non-guessable value associated with each authentication request about to be initiated. The state should be passing the regular expression ^[a-zA-Z0-9-_]+$ and should be kept in the backend, or browser’s local storage.

Upon the user’s redirection back to the return endpoint, the state found in the URL params should be compared against the one previously stored and the journey should fail if they do not match.

Confidential Clients

A confidential client is an application running in a server environment that is trusted to keep a client secret confidential. In this case the authorisation code is passed on to the backend server that is responsible to exchange it for a token. This is the preferred way to integrate with OneID.

Differences between Sandbox and Production

Client configurations are not shared between Sandbox and Production. New clients must be configured in the production environment.

OIDC Configuration URLs

The following URLs return our OpenID Connect Configuration. They can be used to discover where our authorization, token and userinfo endpoints are located.

How we use OIDC

What is OpenID Connect (OIDC)

OpenID Connect or OIDC is a popular identity protocol that utilises the authorisation and authentication mechanisms of OAuth 2.0. It simplifies the way to verify the identity of users based on the authentication performed by an Authorization Server and to obtain user profile information in an interoperable and REST-like manner.

For developers, it provides a secure and verifiable answer to the question “What is the identity of the person currently using the browser or mobile app that is connected?”.

What do we use OIDC for?

We use OpenID Connect (OIDC) protocol to securely transfer bank-verified user attributes to Relying Party (RP) services.

We support the OIDC authorization code flow. For developers familiar with OAuth this is sometimes referred to as the 3-legged OAuth journey. This is the most widely supported flow across different programming languages and technologies.

OIDC for Identity Assurance

OpenID Connect for Identity Assurance 1.0 (OIDC4IDA or IDA) is a technical specification that OAuth 2.0 and OpenID Connect (OIDC) as its base and defines a JSON structure that conveys verified claims of a natural person.

This specification defines an extension to OpenID Connect for providing our customers with identity information, i.e., Verified Claims, along with an explicit statement about the verification status of these Claims (what, how, when, according to what rules, using what evidence). This specification is aimed at enabling use cases requiring strong assurance, for example, to comply with regulatory requirements such as Anti-Money Laundering laws or access to health data, risk mitigation, or fraud prevention.

OIDC for Identity Assurance is an optional extension to the following products:

  • ID Check
  • ID Proof
  • ID Assure
  • ID Scan
  • Sign Up
  • Sign Up Plus
  • Sign In Refresh
  • Age Assure

The key data we return are shown in the table below:

ElementDescriptionExample
Trust FrameworkThe trust framework under which we have assessed the data and its source. OneID is certified under the governments Digital Identity Trust Framework (DIATF).uk_diatf
Assurance LevelThe assurance level based on the Trust Framework. OneID Products meet Medium, High or Very High levels of assurance depending on the type of data requested and returned.medium
PolicyThe standard policy that was followed in assessment of the Assurance Level. The DIATF uses policies set out under the Good Practice Guide (45) (GPG45).gpg45
ProcedureThe specific procedure from the policy (GPG45) that was followed in order to ascertain the Assurance level.m1c
Transaction TypeThe type of evidence that was used to prove the identity. (e.g. electronic records from a data source)electronic_record
Record TypeFor electronic_record . The type of record that was used to prove the identity.bank_account
Record SourceFor electronic_record . The source of the record that was used to prove the identity.Bank Name
Document TypeFor document . The type of document used to perform identity verification.passport
Check MethodWhat check was done in relation to the evidence.auth

The Assurance Level and Trust Framework for each product are shown in the table below. This applies where a UK bank account, passport or driving licence has been used to prove the identity of the subject.

ProductTrust FrameworkAssurance Level
ID CheckDIATFMedium
ID ProofDIATFMedium
ID AssureDIATFMedium, High or Very High
ID ScanDIATFMedium, High or Very High
Sign UpDIATFMedium
Sign Up PlusDIATFMedium
Sign In RefreshDIATFMedium
Age AssureDIATFMedium

A copy of the certification can be found here:

https://accscheme.com/wp-content/uploads/Certificate-11.06.24-V4-02.10.24-OneID-Ltd-DIAFT.pdf

More information on the response structure can be found in our OIDC for Identity Assurance Guide.

Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard