FinchContext
Run with

Build a DAC6 / MDR Cross-Border Arrangement Disclosure (XML)

Skill: Convert a reportable cross-border arrangement into the DAC6 MDR XML

Region: European Union (EU-wide) Category: Tax — Mandatory disclosure of cross-border arrangements (DAC6, Council Directive (EU) 2018/822) Does: Takes the facts of a reportable cross-border arrangement (the intermediaries/taxpayers, the hallmarks triggering disclosure, the affected Member States and the value) and produces the DAC6 disclosure as MDR (Mandatory Disclosure Rules) XML filed with a Member State tax authority for automatic exchange via the CCN. Standard: Council Directive (EU) 2018/822 (DAC6) · OECD/EU MDR XML Schema & User Guide

DAC6 requires intermediaries (or relevant taxpayers) to disclose cross-border arrangements meeting one or more hallmarks (categories A–E; some require the main-benefit test) within 30 days of the trigger. Each Member State implements the EU MDR XML schema. The authority returns an ArrangementID; later steps/participants reference it. Confirm the current MDR XSD and your Member State's portal before generating.


When this applies


Input data required

Group Fields
MessageSpec MessageRefId, TransmittingCountry, MessageTypeIndic, timestamp
Header ArrangementID (new or existing), DisclosureID, DisclosureImporting, InitialDisclosureMA
Disclosing intermediary/taxpayer ID, Capacity (DAC61101 promoter / DAC61102 service provider), Liability, Nexus
RelevantTaxPayers name, TIN + country, TaxpayerImplementingDate, associated enterprises
Hallmarks ListHallmarks (A1…E3), MainBenefitTest1 (true/false), DAC6D1OtherInfo for CRS-avoidance/beneficial-owner
Arrangement ConcernedMSs, NationalProvision, Amount (currency), ArrangementType, Summary, Disclosure_Information

Document structure (MDR XML)

DAC6_Arrangement (version)
├── Header (MessageRefId, MessageTypeIndic, Timestamp)
├── ArrangementID
└── DAC6Disclosures
    ├── DisclosureID / DisclosureImporting / InitialDisclosureMA
    ├── Disclosing (ID, Capacity, RelevantTaxpayerDiscloser, Liability)
    ├── RelevantTaxPayers (RelevantTaxpayer: ID, TaxpayerImplementingDate)
    ├── ConcernedMSs (ConcernedMS list)
    ├── Reason / NationalProvision / Amount(currCode)
    └── Disclosure_Information (Hallmarks: ListHallmarks + MainBenefitTest1, Summary, NationalLegalText)

Calculation rules / logic


Worked example (new disclosure, hallmark C1, outline)

<DAC6_Arrangement version="4.00" xmlns="urn:eu:taxud:dac6:v1">
  <Header>
    <MessageRefId>NL2026MDR000123</MessageRefId>
    <MessageTypeIndic>DAC6NEW</MessageTypeIndic>
    <Timestamp>2026-01-20T10:00:00</Timestamp>
  </Header>
  <DAC6Disclosures>
    <DisclosureID></DisclosureID>
    <InitialDisclosureMA>true</InitialDisclosureMA>
    <Disclosing>
      <ID><Organisation><OrganisationName>Advisory BV</OrganisationName>
        <TIN issuedBy="NL">NL001234567B01</TIN></Organisation></ID>
      <Capacity>DAC61101</Capacity>
    </Disclosing>
    <RelevantTaxPayers><RelevantTaxpayer>
      <ID><Organisation><OrganisationName>Holdco GmbH</OrganisationName>
        <TIN issuedBy="DE">DE123456789</TIN></Organisation></ID>
      <TaxpayerImplementingDate>2025-12-01</TaxpayerImplementingDate>
    </RelevantTaxpayer></RelevantTaxPayers>
    <ConcernedMSs><ConcernedMS>NL</ConcernedMS><ConcernedMS>DE</ConcernedMS></ConcernedMSs>
    <Amount currCode="EUR">5000000</Amount>
    <Disclosure_Information>
      <Hallmarks><ListHallmarks><Hallmark>DAC6C1bi</Hallmark></ListHallmarks>
        <MainBenefitTest1>true</MainBenefitTest1></Hallmarks>
      <Summary><Disclosure_Name>Cross-border deductible payment</Disclosure_Name></Summary>
    </Disclosure_Information>
  </DAC6Disclosures>
</DAC6_Arrangement>

Validation checklist


Last updated: 2026-06-04 — confirm the active DAC6 MDR XML schema version, hallmark codes, and your Member State's filing portal/deadline against the current European Commission and national tax-authority specifications before use.