Rule · MAJOR
COMMON.LEI_CONSISTENCY
Legal Entity Identifiers agree across the party sections and the rest of the draft
- Citation
- Annex I, Part A, Annex II, Part A, Annex III, Part A MiCAR
- Canonical form
- Anhang I Teil A, Anhang II Teil A, Anhang III Teil A MiCAR
- Runs for
- Annex I · other crypto-assets; Annex II · asset-referenced tokens; Annex III · e-money tokens
- Severity if open
- MAJOR
- Section key
- all sections; anchored to
issuer - Minimum words
- 0
- Listed terms (English)
- none
- Listed terms (German)
- none
- Package version
- 1.2.1, built from source that may include unreleased changes
- Source
- rules/common.py
How the status is set
- Missing: no section
issuer,offerorortrading_platform_operatorcarries an LEI with valid check digits. - Review: a valid LEI in another section appears in no party section, or the
issuersection names more than one valid LEI. - Pass: none of the above. Codes with invalid check digits are reported by COMMON.LEI_CHECK_DIGITS, not here.
Legal basis
Annex I, Part A, Annex II, Part A, Annex III, Part A MiCAR
Not re-verified since these pages were introduced (2026-10-20): EUR-Lex was unreachable from the build environment. The citation is the rule's own, unchanged. The citation is the Part of each Annex that the party rules already cite. The point that names the LEI has not been verified against the Official Journal; treat the legal basis as pending owner review.
Synthetic examples
Each example is linted when this page is generated. The build fails if a result differs.
The issuer, offeror and trading platform operator sections carry no valid LEI.
{
"title": "Synthetic rule example",
"type": "other",
"sections": {
"issuer": "Synthetic Issuer AG.",
"summary": "LEI 9999SYNTH0000ZZQ0166."
}
}The summary names a valid LEI that no party section states.
{
"title": "Synthetic rule example",
"type": "other",
"sections": {
"issuer": "Synthetic Issuer AG, a fictional company. LEI: 9999SYNTH0000ZZQ0166.",
"summary": "The issuer's LEI is 9999SYNTH0000ZZQ0263."
}
}Every valid LEI in the draft matches a party section, and the issuer states one.
{
"title": "Synthetic rule example",
"type": "other",
"sections": {
"issuer": "Synthetic Issuer AG, a fictional company. LEI: 9999SYNTH0000ZZQ0166.",
"summary": "The issuer's LEI is 9999SYNTH0000ZZQ0166."
}
}Limitations
- Reads every section of the draft; findings are anchored to the
issuersection. - Works offline on the characters of each code. It does not confirm that an LEI is registered, current or held by the entity the draft names.
- Status and severity are fixed by the rule. A draft cannot waive or downgrade them.
- The citation is the Part of each Annex that the party rules already cite. The point that names the LEI has not been verified against the Official Journal; treat the legal basis as pending owner review.
Disagree with this rule, or missing one? Propose a rule change.