On January 6, 2026, Luxembourg opened up its pillar 2 filing portal for registration, GIRs and Pillar 2 returns. This includes the XMLs and user guides. All filing is electronic via XML at myguichet.lu. In the article below we outline key aspects of Luxembourg’s filing process. Also see our members-only Pillar Two Top-up Tax Return Checklist.
Luxembourg operates its Pillar Two compliance through three separate MyGuichet.lu procedures: a registration process, the GloBE Information Return (GIR) process, and the domestic top-up tax return process called the “déclaration concernant l’impôt complémentaire”. That last procedure is the one used for Luxembourg’s own top-up tax return.
A key practical point is that the Luxembourg top-up tax return does not use the OECD GIR message structure. It uses a local MyGuichet pre-fill schema maintained by the ACD. As the XML is not designed as an OECD exchange message, fields such as MessageSpec, TransmittingCountry, ReceivingCountry, or RecJurCode are not included.
The integration guide also makes clear that an entity required to file this top-up tax return must introduce it for each multinational enterprise group or large-scale domestic group of which it forms part.
The Luxembourg top-up tax return must be filed by constituent entities, joint ventures, and entities affiliated with a joint venture that are located in Luxembourg and are subject to, or taxed under, the Income Inclusion Rule (IIR), the Undertaxed Profit Rule (UTPR), or the domestic top-up tax regime.
The first filing deadline is June 30, 2026. After that, the ordinary timing is 15 months after the last day of the relevant tax year, with an 18-month timing for the first applicable tax year unless a derogation applies.
Registration
Before filing, the entity should ensure that its Luxembourg Pillar Two registration is in place and up to date. Registration, corrections, updates, and deregistration are all handled online on MyGuichet.lu under the dedicated Pillar Two registration procedure.
Access requires authentication with LuxTrust or an electronic identity card (eID), and the process is also available in the MyGuichet mobile app. To register, the entity needs a Luxembourg tax identification number (NIF), which is an 11-digit number. If the entity does not yet have a Luxembourg NIF, the official guidance tells taxpayers to contact the ACD’s office for withholding tax on interest before registering.
This registration step matters for the return content as well. The XML guide says the “FaitiereDesignee [designated head entity]” status used for the domestic top-up tax and UTPR sections should be the same as in the registration file.
The practical flow is closer to a structured assistant workflow than to a raw machine-to-machine filing. Luxembourg’s public guidance says the return is filed online on MyGuichet.lu, and that after starting the process, the filer follows the instructions in the electronic assistant to complete the filing. The assistant can be pre-populated with an XML file.
The ACD’s XML documentation adds two operational details:
1. XML files for this return are transmitted exclusively through the MyGuichet procedure “ACD : Déclaration concernant l’impôt complémentaire”.
2. The filer can either upload a single XML file, upload a ZIP containing up to 50 XML files, or initiate the procedure and use the XML to pre-fill it.
Unlike some other jurisdictions, Luxembourg says there is no pre-validation or test platform for software vendors or filers. Syntax can be validated offline with standard XML tools; semantic rules are checked online by the MyGuichet assistant.
The result is a two-layer control model:
-offline schema validation against the ACD XSD; and
-online semantic validation inside the live MyGuichet assistant.
The return uses a local root element called “eForm”. The root has two core children:
-“guFile”, which contains “eFormType”; and
-“Payload”, which carries the actual pre-fill data.
The value of “eFormType” is fixed as “ACD_P2_TAX_DECL”. Within “Payload”, the filer may optionally provide a “Header” with “NomDemarche [procedure name]”, which only renames the procedure in MyGuichet. The declaration itself sits under “Payload > Body > Declaration”.
A minimal structural skeleton looks like this:
<eForm>
<guFile>
<eFormType>ACD_P2_TAX_DECL</eFormType>
</guFile>
<Payload>
<Header>
<NomDemarche>Luxembourg Pillar Two top-up tax return – Group X – FY2025</NomDemarche>
</Header>
<Body>
<Declaration>
<DetailDeclaration>
...
</DetailDeclaration>
</Declaration>
</Body>
</Payload>
</eForm>For Pillar Two teams used to the OECD GIR XML, this is the most important local difference: the Luxembourg return is a MyGuichet envelope with domestic content blocks, not an OECD exchange message.
| Element | Role in the filing | What to watch |
|---|---|---|
| eForm / guFile / eFormType | Envelope | eFormType is fixed as ACD_P2_TAX_DECL. |
| Payload / Header / NomDemarche [procedure name] | Optional label | Renames the MyGuichet procedure only; it is not declaration data. |
| InformationsGenerales [general information] / Contribuable [taxpayer] / Type | Branch selector | Use ENT for entity and ETS for permanent establishment. |
| InformationsGenerales [general information] / Contribuable [taxpayer] / Qualite | Branch selector | Use ENT_CONST [constituent entity] for constituent entity and COENTREP [joint venture / JV affiliate] for JV/JV affiliate. |
| ChoixTUT [top-up tax selection] | Tax selector | At least one of ImpotNationalCompl [domestic top-up tax], ImpotRIR [IIR tax], or ImpotRBII [UTPR tax] must be true. |
| TypeDeclaration [declaration type] | Versioning | Allowed values are INIT [initial] and RECTIF [corrective]. |
| FaitiereDesignee [designated head entity] | Conditional logic | Controls BeneficeAdmissible [eligible profit] for INC and InformationAllocation [allocation information] for RBII. |
| DestinataireEntite [entity addressee] / DestinataireEtablissementStable [permanent-establishment addressee] | Correspondence routing | Use coded values such as ADR_ENT [entity registered-office address], ADR_REP [representative address], ADR_ETS [permanent-establishment address], or ADR_ENT_PRINC [principal entity address]. |
| Devise* / Devise*Autre | Currency logic | Use ECB code list where possible; otherwise use MonnaieFonctionnelle [functional currency], TauxChange [exchange rate], and BanqueCentrale [central bank]. |
| DemandeRemboursement [refund request] | Corrective-only control | Use only where a corrective filing involves tax paid unduly. |
If you haven’t got a subscription you can join up below.
| Cookie | Duration | Description |
|---|---|---|
| cookielawinfo-checkbox-analytics | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics". |
| cookielawinfo-checkbox-functional | 11 months | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional". |
| cookielawinfo-checkbox-necessary | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
| cookielawinfo-checkbox-others | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other. |
| cookielawinfo-checkbox-performance | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance". |
| viewed_cookie_policy | 11 months | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |