Single sign on for clinical staff - NHS Mail?


We are looking to enable SSO to our application using users existing details.

NHS Login (NHS login API - NHS Digital) is for the public, so not appropriate. Neither is CIS2 (Apply for NHS CIS2 - NHS Digital) because we’re delivering as a web site so smart card etc is out of scope.

We’ve then discovered the 3rd way of doing SSO - and contacted the address given there, but they’ve only sent us a live server address, e.g.

hXXps:// email profile&nonce=1686150339308

Is there meant to be some non-live way of testing this ? Ideally without needing a live account ?

It is possible to use your normal NHSmail username ( and password to authenticate against other web and desktop applications using SSO, however this is not available for non accounts.

To help me understand the process to date:

Did you complete application authentication form here NHSmail Single Sign-on Technical Guidance ( and return this completed form to NHSmail helpdesk, for a technical contact to be allocated to deal with your request?


Yes, that’s exactly what we’ve done, but the response is unhelpful because although we now have an app secret etc for the SSO, we can’t test it because we don’t have an address and it’d also be a bad idea for us to test using the live NHS system anyway ?

How is this mean to work ? I must be missing something, surely ?


when you say “…we’re delivering as a web site, so smart card etc is out of scope…”, what information will the website display to your users. Who is going to be accessing the website?

We’re already a HSCN-facing web application with our own login system and want to extend this to “login with” as an option (along with any 2FA that may require).

We’re used by clinical staff to see patient details. But that’s kinda besides the point.

What I asked was how are people testing or doing QA prior to releasing their (ADFS SSO) setups - there must be a way of triggering a SAML POST to our system other than using the live URL with someone’s borrowed password - surely ? do not have a test domain, we use live accounts for testing. The live server address shared with you in your earlier post is applicable ( live URL.)