Skip to main content

MiFID II RTS 22

MiFID II Regulatory Technical Standard 22 (RTS 22) defines the 65 fields that investment firms must report to their National Competent Authority (NCA) for every transaction in financial instruments executed on a trading venue, OTC, or via a Systematic Internaliser. RTS 22 reporting underpins MiFIR's market abuse surveillance regime and feeds the FCA and ESMA consolidated tape. Falcon Veritas Intelligence (FVI) provides a native RTS 22 reporting pipeline that reuses the same reconciled transaction state that drives your reconciliation, exception management, and compliance evidence packs — no separate reporting system to maintain.

Scope and applicability​

RTS 22 applies to investment firms within scope of MiFID II that execute transactions in:

  • Transferable securities (equities, bonds, ETFs, depositary receipts)
  • Exchange-traded funds, exchange-traded notes, exchange-traded commodities
  • Derivatives (ETD and OTC)
  • Securitised derivatives, emission allowances, structured products

Transactions must be reported no later than the end of the next working day (T+1). For firms in the UK, FCA MiFIR reporting runs in parallel with EU RTS 22 — both must be filed when the firm executes against an EU and UK trading venue, or against a UK and EU counterparty.

FVI's RTS 22 module supports the ARM-only delegation model (firms appoint an Approved Reporting Mechanism), with FVI acting as the in-house reconciliation and pre-submission validation layer. ARM partnerships include UBS Delta, Transaction Reporting GO, Cappitech, and Reg-Ref.

Field mapping​

RTS 22 introduced 65 fields under Article 26 of MiFIR. The high-impact fields for reconciliation teams are:

  1. Transaction Reference Number (TRN) — 52-character alphanumeric, must be unique per firm per transaction for at least 5 years. FVI's transactions.trn column enforces uniqueness per tenant and auto-allocates new TRNs from a 128-bit collision-resistant pool.

  2. Buyer/seller identification — LEI for legal entities, national ID for natural persons, CONCAT format for branches. FVI's counterparty graph resolves the correct identifier based on the counterparty record and applies CONCAT formatting automatically.

  3. Trading venue identification — MIC code (ISO 10383) for venue-executed transactions. FVI maintains the full MIC list and flags closed or merged MICs.

  4. Price and price currency — must include currency for FX-converted prices; FVI's FX rate provider pulls daily ECB rates for accurate T+1 conversion.

  5. Trading capacity — DEAL (dealing on own account), MTCH (matched principal), AOTC (any other capacity). FVI's match engine can infer this from the venue and account fields but should be reviewed for prop-vs-agency split.

How FVI supports RTS 22​

FVI treats RTS 22 submission as a downstream consumer of the reconciled transaction ledger. The match engine pairs execution records from your OMS or EMS with venue confirmations and CCP clearing messages, producing a canonical transaction state. The RTS 22 reporting pipeline then enriches each reconciled transaction with the 65 mandated fields, performs client-side validation against ESMA's RTS 22 XSD, and submits via your chosen ARM.

Step-by-step: enabling RTS 22 reporting​

  1. Register the tenant. In FVI, navigate to Settings → Compliance → MiFID II and enter the investment firm LEI, the relevant NCA (FCA, BaFin, AMF, AFM, etc.), and the chosen ARM. FVI validates the LEI against GLEIF and the ARM endpoint via a handshake test.

  2. Configure identification rules. Choose the counterparty identification strategy (LEI-only, CONCAT with branch, national ID for natural persons). FVI's counterparty graph automates the lookup.

  3. Map venue execution flows. Connect each OMS, EMS, and trading venue to FVI's ingestion pipeline. FVI normalises venue-specific message formats (FIX 4.2/4.4/5.0SP2, ITCH, OUCH, FIXML) into the canonical transaction record.

  4. Run a dry-run. FVI's compliance console supports a 30-day dry-run submission to your ARM's sandbox endpoint. Review the ARM validation report and iterate on the field mapping.

  5. Enable production submission. Once dry-run validation passes, flip the tenant to live. FVI begins the T+1 morning submission window (post-2024 RTS 22 deadline).

  6. Monitor acknowledgements. FVI polls the ARM for ACK/NACK responses and surfaces unresolved validation errors as exceptions in the analyst queue.

Code samples​

curl​

curl -X POST https://api.falconveritas.com/v1/compliance/mifid/submissions \
-H "Authorization: Bearer $FVI_JWT" \
-H "Content-Type: application/json" \
-d '{
"tenantId": "'$FVI_TENANT_ID'",
"lei": "529900T8BM49AURSDO55",
"nca": "FCA",
"arm": "ubs-delta",
"fromDate": "2026-08-01",
"toDate": "2026-08-22",
"idempotencyKey": "mifid-fvi-$RANDOM"
}'

TypeScript​

import { FVI } from '@falconveritas/sdk';

const fvi = new FVI({
baseUrl: 'https://api.falconveritas.com',
bearer: process.env.FVI_JWT!,
tenantId: process.env.FVI_TENANT_ID!,
});

const submission = await fvi.compliance.mifid.submit({
lei: '529900T8BM49AURSDO55',
nca: 'FCA',
arm: 'ubs-delta',
fromDate: '2026-08-01',
toDate: '2026-08-22',
});

console.log('Submission ID:', submission.id);

Python​

from falconveritas import FVI

client = FVI(
bearer=os.environ["FVI_JWT"],
tenant_id=os.environ["FVI_TENANT_ID"],
)

submission = client.compliance.mifid.submit(
lei="529900T8BM49AURSDO55",
nca="FCA",
arm="ubs-delta",
from_date="2026-08-01",
to_date="2026-08-22",
)
print("Submission ID:", submission.id)

Troubleshooting​

Last updated: 2026-08-22 · Page owner: Documentation · Source: src/lib/compliance/mifid/.