
A code error, once found, is handled like an incident: scope first, amount second, source correction last.
The most expensive reflex, when a classification error surfaces, is to correct the declaration in hand and move on to the next. The declaration in hand is almost never the problem: it is the symptom of a code that has been reused, sometimes for years, across an entire population.
The order of operations is therefore counter-intuitive. Nothing is corrected before the number of affected lines has been measured.
The first 72 hours
- H+0
Freeze reuse
Block the code in the article record, the ERP mapping and the broker template. As long as the source keeps feeding, the population keeps growing during the analysis.
- H+4
Freeze the state of the evidence
Extract and timestamp the declarations, the technical sheets in their version of the time, the tariff extracts and the exchanges with the provider. Never modify anything retroactively.
- H+24
Scope the population
Every declaration bearing this code over the retention period, across all entities and all offices. An error touching 3 lines and one touching 300 do not call for the same route.
- H+48
Characterise the shortfall
Clerical data-entry error, documented difference of interpretation, or a complete absence of examination. The characterisation determines the settlement route, and it must be honest.
- H+72
Decide the route
Voluntary regularisation, waiting for an audit, or a request for a position from the administration depending on the nature of the disagreement. A dated decision, with its reason and its approver.
Three concepts not to confuse
Correction
Reassessment
Who initiates it
The declarant or the importer, on their own initiative.
The administration, following an audit.
Timing
Before the administration has noted the discrepancy.
After it is established, within an open procedure.
Purpose
Correct a declared item and pay the additional amount due.
Establish the duties avoided and characterise the shortfall.
Effect on the file
Demonstrates command of the internal process.
Opens the question of a penalty, separate from the duty reassessment.
The penalty is a third concept, independent of the first two: it is not derived from the size of the reassessment but from how the shortfall is characterised.
The applicable framework derives from the Foreign Trade Law 13-89 and from texts published on the Official Gazette portal. The exact provisions and their thresholds are read in the text in force on the date of the facts, not on the date of discovery.
Rebuild the file as it stood
What must be rebuilt in its original state
- The technical sheet in its version of the timeNot the current version: the product may have changed since, and that changes the characterisation.
- The tariff edition in force on the declaration dateA line deleted since does not make the declaration retroactively wrong.
- The original reasoning, if it existsIts absence is itself information: it characterises the shortfall differently.
- The exchanges with the broker or supplierThey establish who knew what, and when.
- A later reconstruction presented as the file of the timeBlocking: that is new analysis, and it must be dated as such.
Identify every affected transaction
Codes
The faulty code
And its close variants keyed by hand
Articles
The references concerned
All those inheriting the same family
Entities
Offices and companies
The faulty mapping may have been copied elsewhere
Calculate the reassessment line by line
A reassessment is calculated per declaration, never by applying an average gap to a total. Customs value varies, applicable preferences vary, and some lines may fall under a suspensive procedure where the debt was not due.
| Step | Base | Calculation |
|---|---|---|
| Import duty reassessed | Customs value of the line | (correct rate − declared rate) × value |
| VAT reassessed | Recomputed base | 20% × (value + corrected duty + levy) − VAT already paid |
| Late-payment surcharge | Amount reassessed | Per the text in force and the declaration date |
| Penalty, if any | Characterisation of the shortfall | Independent of the amount reassessed |
Check both headings in the tariff
Before any step, open the line declared and the line you believe correct, and write in one sentence what separates them. If that sentence does not come, the analysis is not finished and the step is premature.
8517130000Open the tariff record 8471300000Open the tariff recordWhat aggregate data does not say about your file
Published customs receipts and declared volumes give the scale of an activity, not a probability of audit nor any indication of how your case will be handled. They appear in the ADII 2024 annual report and the trade series in Office des Changes statistics. None of these aggregates has any argumentative value in a response to the administration.
Fix the master data, not just the declaration
A procedure closed without correcting the source guarantees a repeat. The four injection points to check systematically: the article record in the ERP, the mapping table used when exporting data to the broker, the declaration template held by the provider, and the automation rule if a classification engine proposes the code.
Closing the incident
- Cause identified and written downNot "data-entry error": the precise mechanism that produced and reproduced the error.
- Affected population closed outEach line either regularised or documented as out of scope with its reason.
- All four injection points correctedArticle record, mapping, broker template, automation rule.
- Non-regression check on the next transactionExplicitly verify that the corrected code is the one that goes out.
Related articles

How to choose a customs broker and freight forwarder in Morocco
Comparing fees says nothing about the quality of a declarant. The mandate, the hard-file test, and the evidence they owe you back.

HS code with 6 or 10 digits: which number belongs on a Moroccan declaration?
The first six digits are shared by 200 countries; the last four carry the Moroccan rate. What the national extension actually changes.

Classify a product catalogue with HS codes that stay maintainable
Classifying 4,000 references is not classifying 4,000 times. How to build families on stable attributes and handle the exceptions first.

Calculating Moroccan customs duties by product
Import duty, the parafiscal levy and VAT do not share a base. The full cascade, the order of operations, and the documents that make the figure reproducible.