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
- An intermediary (promoter/service provider) or relevant taxpayer in the EU is involved in a cross-border arrangement hitting a DAC6 hallmark.
- 30-day reporting clock from the arrangement being made available/ready/implemented.
- Subsequent reporters reuse the ArrangementID and add a new DisclosureID.
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
- Hallmark selection drives reportability: hallmarks A, B and C1(b)(i)/(c)/(d) require the main-benefit test (
MainBenefitTest1 = true); hallmarks C1(b)(ii)/(c)/(d) where MBT n/a, D and E apply regardless. Amountis the value of the arrangement in the relevantcurrCode.MessageTypeIndic=DAC6NEWfor a new disclosure,DAC6ADDfor additional information referencing the existingArrangementID,DAC6REPto replace,DAC6DELto delete.
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
-
MessageTypeIndiccorrect (NEW/ADD/REP/DEL); ADD/REP/DEL reference the existingArrangementID - Disclosing party
Capacity/Liabilityset; relevant taxpayers carry TIN + country and implementing date - At least one valid hallmark;
MainBenefitTest1set where the hallmark requires it -
ConcernedMSslists every affected Member State;AmounthascurrCode - Validates against the current MDR/DAC6 XSD; filed within 30 days with your Member State
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.