DMS error message
Also known as: DMS rejection, DMSFUNCREJ
A DMS error message is the response with which Dutch Customs refuses a declaration. It carries an error code, a description and a location in the message, and the code points to the element, not the cause.
What is in a DMS error message?
Every rejection from DMS has three parts that you have to read together. The error code comes from table A99 of the Codeboek Douane, onderdeel DWU Aangiftebehandeling. The description is the official text attached to that code. The location is a path in the XML message, for example Declaration/GoodsShipment[1]/GovernmentAgencyGoodsItem[6]/Commodity/Classification. That path tells you which field, which item and which repetition Dutch Customs does not accept. The response itself is called DMSFUNCREJ in the message flow: the message you sent contains errors. For as long as that rejection is open, there is no MRN and the declaration has not been accepted. You cannot release the consignment, and you cannot expect a control order or a release message. First the named element has to be right, then you file again. The code is national. AGS and Sagitta codes do not work in DMS. A German ATLAS code or a Belgian PLDA code does not work either. The text and the path are leading, not a memory of how AGS used to put it. DMS is the Dutch system.
Why can the same code mean something different on two files?
The code points to an element, not to a reason. DMS10005 says that the authorisation is unknown or that the holder is incorrect. On one file the number is missing. On another file a valid number is present, but the EORI on the authorisation is not the EORI of the importer on this declaration. On a third file the authorisation is not valid for this declaration type. Three causes, one code. You start from the location, not from a list of standard solutions per code. If the error sits on item six, you check item six, not item one. If it sits on a supporting document, you compare that document with the TARIC measure that requires it. If it sits on the authorisation, you lay number, holder and type next to the master data of the client. Two files with the same code need a different correction. Anyone who last time filled in the number, and now fills in the number again while the holder is wrong, gets the same rejection back. The code starts the search, not the answer.
How do you find the real cause?
Lay the named field next to three sources: the source document, the master data of the client, and the rule that TARIC or the authorisation attaches to that field. If the goods code does not match the DTV, the error is in the classification, not in DMS. If the EORI does not match the EU register, the error is on the customer card. If the certificate number does not match the paper, the error is in the copying. The location in the message often contains an index between square brackets. GoodsItem[6] is the sixth item line. AdditionalReference[1] is the first extra supporting document on that line. Anyone who skips the sixth line and corrects the first, files a declaration that is still wrong on line six. The rejection then comes back, sometimes with the same code. DMS19999, EXTRA FOUTEN ONTDEKT, means that Customs has more than the messages shown. You then do not see the full list. Correct what you see, file again, and read the next response. A second round is how DMS returns a long list in pieces.
What is an acceptance-blocking error?
At many codes in table A99 the particulars column says: aanvaardingsverhinderende foutmelding, an acceptance-blocking error. That means the declaration is not accepted for as long as this element is wrong. There is no MRN, no risk profile starts, and the goods stay where they are. It is not a warning that you may put right later. Not every message blocks acceptance. Some codes, such as a missing document that Customs can still request later, let acceptance through. Then you do get an MRN, and a document check or a request for papers follows. The distinction sits in the code book, not in the tone of the text. A short text can be a hard refusal. For fresh or veterinary cargo that distinction is the difference between an hour of waiting and a day. An acceptance-blocking error on the CHED reference holds both the inspection and the import. A later document request you can still catch up on if the notification in TRACES-NT is already in. First read whether the error blocks acceptance, then how you solve it.
Where do you look up the official meaning of the code?
Customs publishes the codes in the Codeboek Douane, onderdeel DWU Aangiftebehandeling, table A99 FOUTCD.AANGIFTE. The Nationale Helpdesk Douane points to that code book, not to a separate manual per software vendor. A list on a vendor site is a derivative. If that list names a number that is not in A99, it is not a DMS error code. The code book changes. A code that existed in 2024 can have a different text in 2026, or can have disappeared. Work with the current table, not with a screenshot from last year. The date of the file sits on every page. The edition of 29 August 2026 is the source of the full code list in this knowledge base. NCTS error messages sit in the Codeboek Sagitta, part Transit, not in A99. Software often fills the text into the file. Trust that text, but on doubt check the code book. A translated or shortened line on your screen is not a different code. It is the same A99 line, shown another way. The location in the XML path remains the place where you search.
How do you stop the same error coming back?
A correction only on the rejected file does not fix the next consignment. For as long as the master data of the client, the article mapping or the document rule fills the wrong field again, the same code comes back. Record the cause where it arises: on the customer card, on the article, or in the rule that sets the supporting document. An authorisation number that belongs per client does not belong in the declarant's head. A goods code that can change every year on 1 January belongs to be checked before the batch goes to DMS. A VAT number for reverse charge belongs to be checked via VIES, not only after the rejection. DMS is the Dutch system. The error codes apply to declarations that you file in the Netherlands. A consignment that is declared in Belgium or the United Kingdom does not get a DMS10001. Other systems and other messages apply there. This knowledge base describes the Dutch response, not ATLAS, AES or CDS.