Trading of goods declaration (Intrastat) with Bill of materials

Posted by
Version Française disponible ici

Microsoft Dynamics 365 for finance and operations allows to produce the trading of goods declaration (intrastat) thanks to electronic reports. This declaration is mandatory as soon as a company is doing exchanges inside the EU. This has to be monthly reported to the Customs Service and then can:

  • Check compliance with VAT regulations
  • Compile some statistics about external trade
  • Thanks to European directives, the intrastat is replacing border control and customs declaration.

To generate the intrastat, you need to use the “Intrastat” link in the “Foreign trade” menu from the Tax module.

To edit the intrastat, some setup need to be done.

First, you need to select the period for transactions. Usually it’s set up for a full month.

Then, the “Generate file” checkbox or “Generate report” has to be enabled. There is no big difference between the file and the report. Here we’ll generate the report which is going to be downloaded from the server. The “File name” area is the for setting up the name of the report.

Finally, you choose if you want to display the imports or exports for the period: the intrastat report applies for both sales (dispatch) or purchases (arrival).

Note: there are several intrastat reports, depending on each country. In this tutorial we focus on the UK edition. The previous screenshot could be a little bit different for other countries but the functionality works in the same way.

The report is displayed in two parts: header and lines.

The header contains the following: a constant (T), VAT code, agency number, constant(X), direction (dispatch or arrival), report date, report period, norm.

Example : T,249474232,000, CONTOSO UK,X,D,161017,1017,CSV02

Line : each line contains the following: commodity code, price, delivery terms, transaction nature, weight, additional unit, country, product receipt number/invoice

Exemple : 00123456,720,EXW,EU,,,FR,UK12-000038

Note : the report format could be CSV or Excel, depending on the country.

Example for France :

Example for England :

To obtain this edition, few setup steps need to be done. Let’s go.

Install the electronic reports

The following link could be useful, but you will need to use an “Operational resources” repository (and not LCS).

Going into the Organization administration menu, under Electronic reporting > Configurations, we’ll find the report model used in the previous example.

As you can see, there are many other country possibilities.

Setup the current legal entity from Organization administration module

To display the header report correctly, the following fields in the legal entity setup need to be filled in.

Don’t forget the VAT number of the legal entity !

Setup categories

Two categories with a « Commodity code hierarchy » role association need to be setup.

The first one will be used to define the commodity code for the administration and will be setup in the foreign trade (see the according chapter in this tutorial). This category will be used to link commodity codes to released products or procurement categories.

PAY ATTENTION : the commodity code is a numeric data; the category code has to be created without alphanumeric value.

If you wish to setup orders on a category (without released product), it’s mandatory to setup commodity codes on each category value used for the trades.

You can setup that in the “Commodity code” FastTab. When there is only one category with the role “Commodity code hierarchy”, you will not be able to add a code when clicking on “Add”.

It’s possible to link several codes for a same category. On the order, you will need to think for each line to choose the appropriate code (even if there is only one code). It’s located under line detail (in the foreign trade tab). Here is an example on a purchase order:

Setup the foreign trade

The Tax module has to be also setup for each company that needs to generate the intrastat.

The “Transaction code” field is used to generate lines.

To fill in the “Electronic reporting ” FastTab, you need to have correctly imported the electronic reports at first.

Then, the category product has to be setup in order to define the commodity codes.

Setup items

Note : if you place orders on category level only and not items, this part is useless for you.

When all this setup is done, you can easily fill in the commodity codes in the “Foreign trade” FastTab of released products. The list of codes displayed in the “Commodity” field is a result of the procurement category setup in the foreign trade (see previous chapter).

You will need to define the “Country/region” area for the item in order to print that information on each report line.

Setup terms of delivery

The term of delivery is displayed on each line of the intrastat report.


  • The “Intrastat code” is used in the intrastat report to display the delivery term value.
  • The “Sales tax address” value specifies what to use on the order placed. In that example, a “Delivery” address has to be used on the order. If there is any tax group on the customer, it will not be taken into account. This allows to drive the VAT through the address, which could be very useful because it’s a requirement.

Tax group can be defined on the address by going in the customer record and displaying the advanced view:

Of course, the selected address has to be setup as a “Delivery” purpose according to the previous setup.

Intrastat edit

Now that everything has been done for the required setup, it’s time to generate the report.

To do this, fill the table used by the report by clicking on the “Transfer” button.

Then you can choose which data you want to transfer.

After the transfer is done, the data is available on the list:

To display the report, refer to the first lines of this post. And that’s it!

Finally, you have to know that it’s possible to gather different lines with the same properties.

To do that, you will need to define properties that need to be taken into account. It works this way:

You will need to select the field from the “Selected“ area, and to add the one desired by clicking on the left arrow.

Then, you will run the compression program with the “Update” and “Compress” buttons of the intrastate form.

To conclude, a useful post about the intrastat.

There is more: a tip about electronic reports that allows you to get more information about what is displayed by the report. It’s not limited to the intrastat functionality. The “Designer” button, available on the setup report form tab, displays interesting information about the report. You can easily understand what is displayed and you may have any idea of what data is used according to the name or description in the “Mapping” tab.

Guillaume FAGES


    1. Of course it’s possible. To do it, you have to follow the following step :

      1 – You must create a category hierarchy and some categories to define your commodity code
      2 – That hierarchy has to be linked to the “Commodity code hierarchy” category hierarchy type :
      3 : Go to your procurement or sales category hierarchy, select a category to associate with a commodity code.
      Then click on “Add” in the Commodity codes fast tab.
      Then select the good one, click on the little arrow and finally click ok.

      That’s it !
      Hope that will help you 😊


  1. Hi.
    I am trying to setup Intrastat for Germany however after I transfer the transaction, when I tried to get Output-Report. I got the following error. (I already setup the Authority address!)

    getValueByPathInScopeInternal Intrastat/Company/Authority/LandCode
    getValueByPathInScopeInternal IntrastatParameters/$TaxAuthorityAddress/>Relations/State
    List is empty at ‘IntrastatParameters/$TaxAuthorityAddress’

    Do you have an idea?
    Thank you very much!

  2. Hi,
    can you please explain why we need 2 hierarchies?
    shouldn’t it be the same one attached in Foreign trade parameters and on the items /categories?

    1. Hi Veronika,
      No you can’t use the same hierarchy for procurement and intrastat. Let’s take an example with the legal entity DEMF (Contoso).
      Here you find all the category hierarchy define for DEMF and their roles. As you may see, the category hierarchy named “Procurement – Office Supplies” has two roles: “Procurement category hierarchy” and “Commodity code hierarchy”.

      But when you want to assign a commodity code, you can’t pick up a value in the same hierarchy. You can only select the hierarchy linked to « Commodity code hierarchy » and so you have to define two different hierarchy.
      And I think it’s a good idea because you may want to have a more detailed hierarchy for your procurement than for your commodity code.

      Thanks a lot for reading our blog.
      Have a nice day.


  3. Bonjour Guillaume,

    J’ai une question sur l’intrastat en France.
    Le code du département est-ce une information obligatoire?
    Si oui le county peut être utilisé pour géré cette info?

    Quelle serait ta recommandation?

Leave a Reply

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.