For selected banks that support this, we have created a feature that allows you to verify social security numbers (SSN) of individuals using open banking. It works by checking whether the SSN that an end-user has provided matches the SSN information held by the user’s bank.
How it works
To verify if an end-user's SSN is valid, previously you needed to check the user's identity documents. Luckily, this is something that all European banks have already done when issuing a bank account, which means that the SSN information that a bank has for a specific account holder has already been validated.
Some European banks (not all, unfortunately) have a feature in their open banking APIs that allows sending an end-user's SSN via API to check whether the SSN is valid. This is done when the user is authenticating via GoCardless open banking flow.
Technical details
To verify a user's SSN, pass the “ssn” parameter in the body of the call when you create a requisition:
POST /api/v2/requisitions/
{
"institution_id": "SEB_UNLALV2X",
"redirect": "https://www.example.com",
"ssn": "160887-11111"
}
Note: the “ssn” parameter must follow the official SSN structure in any given country. As an example, for end-users in Latvia a valid “ssn” will be “123456-78910”, instead of “12345678910”.
If the passed SSN matches the SSN number that the bank has on the account holder, the end-user will be able to successfully finish the user journey. The requisition status will be LN and data will be available same as usual.
In case the SSN does not match, the end-user will be directed to the redirect link specified in the requisition. At this stage, an error message stating that SSN verification has failed will be shown, and the requisition status will be changed to REJECTED (RJ). Note that other errors can cause the requisition to change status to RJ. If it was because of SSN specifically, the exact error will be appended to the redirect URL:
https://www.example.com?ref=c383a505-cfb5-4bba-bf9c-d0a142d7608c&error=SSNVerificationFailed&details=SSN+Verification+has+failed
Keep in mind that after succesfully connecting a requisition with SSN, the SSN will not be visible in the requisition details. We do not store the SSN beyond the point where this is necessary for authorization to protect sensitive user data.
The feature is currently available in a limited amount of countries and banks. You can find below the updated list of supported institutions and respective countries:
- Sweden: Swedbank and SEB(Private and Corporate)
- Estonia: Swedbank, SEB, Luminor, LHV
- Latvia: Swedbank, SEB, Luminor
- Lithuania: Swedbank, SEB, Luminor and Šiaulių bankas
N.B.: The list above may not be up to date, but our API always is:
/api/v2/institutions/?ssn_verification_supported=true
To request this feature for other banks in other countries, please get in touch with our Sales Team.
Comments
0 comments
Please sign in to leave a comment.