European Student Identifier Specification

Version: 1.0

This specification defines a profile for the schacPersonalUniqueCode attribute (as defined in the SCHema for Academia) that will be used to transport the European Student Identifier.


The student mobility processes require the use of a number of services, all of which are involved in different stages of the pipeline and which will need to be able to exchange data about the students who are in mobility.

The European Student Identifier is globally unique, persistent, non-targeted, protocol neutral and data transport neutral.

  • Globally Unique: Each student should be uniquely identified across organizational and national boundaries
  • Persistent: The identifier should follow the student while he/she is on student mobility
  • Non-targeted: The identifier should be the same for all services involved in the student mobility processes
  • Protocol neutral: The identifier should not change value depending on the protocol used. For example, it should be the same regardless of whether SAML or OpenID Connect is used
  • Data transport neural: The identifier should not change value depending on how it is transported. For example, the students should be identified by the same identifier regardless if the it is through a federated authentication flow or a back-channel transfer of records.


The European Student Identifier can take on one of two forms, depending on the qualifiers needed to make a given student code globally unique:

ESI with nation-wide (or region-wide) scope student code :


ESI with HEI-wide scope student code :



  • <country-code> is a valid ISO 3166 country code identifier to qualify the student code with so that it uniquely identifies the student within the Member State (officially assigned ISO 3166-1 alpha-2 country code) or administrative division (e.g. province or state; ISO 3166-2 code), where applicable.
  • <sHO> is the Higher Education Institution's schacHomeOrganization value (possibly further qualified with the organisational unit issuing the student code). Required if the student code is issued by the Home Organization of the student (or one of its org units) and there can be no guarantee that it uniquely identifies the student within the Member State or administrative division.
  • <code> is a string that uniquely identifies the student within the scope that it has been issued. It has to satisfy the requirements for strings to be used in URNs according to RFC 2141, sections 2.2 to 2.4.
  • The complete schacPersonalUniqueCode attribute value for the ESI does not exceed 255 characters in length.


Non-normative examples for both forms:

  • ESI with nation-wide scope student codes :
  • ESI with HEI-wide scope student codes :

  • No labels