Skip to content
Reference

Coded values

Every coded value a CSN filing asks for

Last updated

The SCMTR message uses short codes almost everywhere. This is the complete list of what each one means, in the order you meet them while filing. Where the published list and what customs actually accepts differ, that is said explicitly — it matters more than the published list.

Reporting event

Which message you are sending. It is chosen once, when the declaration is created, and decides which fields are mandatory for everything that follows.

CodeMeaning
SCEEntry — cargo arriving at an Indian port
SCXExit — cargo leaving
SCDDomestic Movement — movement between Indian ports
SCAAmendment — a change to a filing customs already accepted
SCUCIN Updation Request
SCCCargo Confirmation

Message type (msgTyp)

CodeMeaning
FFresh — a first filing
AAmendment — a change against an accepted CSN
DDeletion — in the MIG's code list, never on the wire (below)

In practice a deletion is sent as msgTyp: "A" with amdType: "D", not as msgTyp: "D". ICES Advisory 38/2026 (Q3) agrees for the manifest message: its table of the flags an SAA carries lists only F "Fresh" and A "Amendment: Mandatory for all SAA transmissions" for msgTyp — D stays in the MIG's code list, never on the wire — and puts the deletion on the record's amdType. See Amendments and deletions.

Amendment type (amdType)

Only in SCA/SCU messages. Sits on decRef for the message as a whole, and on each record the amendment touches.

CodeMeaning
UUpdation — this record existed and its content changes, in a field customs allows to change ("modification of allowable fields in existing records", ICES Advisory 38/2026 Q3)
DDeletion — remove this record, or (on decRef) the whole filing ("dropping or deleting existing records or invalid lines")
SSupplementary / addition — the record is new ("addition of new data elements")

Not every block accepts all three. MIG v1.6 narrowed the list on the four blocks that describe the message and the vessel rather than a cargo record:

BlockAccepts
decRef (the message itself)U, D — a filing is corrected or withdrawn, never "supplemented"
authPrsn, vesselDtls, voyageDtlsU only — there is no vessel to delete or second voyage to add
every other blockU, D, S

The form enforces this: on those blocks the amendment dropdown offers only what the MIG allows.

Submitter type (sbmtrTyp)

The capacity your organisation files in.

CodeMeaningWho files under it
ANCAuthorized Notified CarrierConsol agents, freight forwarders, NVOCCs and customs brokers — all four register as ANC
ASAAuthorized Sea AgentShipping agents
ASCAuthorized Sea CarrierShipping lines

The code is not a choice — it follows from the role your ICEGATE ID already holds, and it is fixed when your SCMTR registration is approved. See Registering for SCMTR on ICEGATE for the full mapping, including the entity types that do not appear here because they do not file a CSN.

Mode of transport (modeOfTrnsprt)

CodeMeaning
1Sea / River / Canal
2Rail
3Road
4Air

This is per leg, not per filing. A box that arrives by sea at Ennore and moves onward to an inland container depot by rail carries 1 on the first itinerary leg and 2 on the second.

Vessel movement type (vesselTypMvmt) — on a SAM / SDM

A shipping line's SAM / SDM (SACHM23) carries this in its header; a CSN does not. It says which kind of leg the filing is about — geography, in either direction — not where the ship has been.

CodeMeaning
FIA leg between India and a foreign port, in either direction
IIA leg between two Indian ports (coastal)
RIA leg between two Indian ports through Sri Lankan or Bangladeshi territorial waters, which carries a bond condition of its own

ICEGATE's guide gives the list twice, and the fuller wording is "FI - Between India and Foreign vice versa; II - between Indian Ports; RI - between Indian Ports traversing SL & BL territorial waters". On an arrival manifest it is the leg the ship came in on; on a departure manifest it is the onward leg — a real departure manifest on record came from a foreign port, sails next to an Indian one, and files II. FI and II are seen on filings customs accepted; RI is in the guide only.

Type of transport means (typOfTrnsprtMeans)

CodeMeaning
10IMO Vessel — has an IMO number
11Non-IMO Vessel

Consolidation indicator (consolidatedIndctr)

What kind of bill of lading this is. Eleven codes exist; four cover almost all real filings.

CodeMeaning
SStraight B/L
CConsolidated B/L
HHouse B/L
MMaster B/L
TThrough B/L
FFreight Forwarder B/L
DDirect Shipment B/L
PPartial Shipment
RB/L referenced only — ICEGATE's own wording
LLetter of Credit B/L
XExpress B/L

What forwarders actually use. On the master consignment: R when the master carries house bills under it, M when it stands alone. On the house bill: H. A carrier filing its own side uses C/S — which is a different job, not a different style, so do not copy it. An export (SCX) is the exception: it uses the published letters — S for a straight bill, C on a consolidation's master and H on each line under it.

CBIC's own training material says what S and C mean by who issued the bill: a straight B/L is issued by the vessel-operating carrier to the actual buyer or seller; a consolidated B/L is issued by a consolidator and does not name the actual buyer and seller; H is a house B/L and R a B/L being referenced only.

Previous declaration (prevDec)

CodeMeaning
NNo prior declaration
CRefers to an earlier CSN — on a consolidated bill; give that CSN's number and date in the previous reference, and customs issues the MCIN
YRefers to a CIN customs already granted — an MCIN on a consolidated bill, a PCIN on a straight or house bill
SExport only — this house bill covers one shipping bill
BExport only — several shipping bills are consolidated under this house bill

A fresh import filing is N.

C does not mean cancelled, whatever you may have seen it called: ICEGATE's own SCMTR guidance defines it as a CSN quoting a previous CSN, and the first SAM / SDM acknowledgement on record shows customs issuing an MCIN to each consolidated line filed C + C. R, likewise, is ICEGATE's "B/L being referenced only", not a "received for shipment" bill.

S and B are export codes, and the MIG's attribute table omits them. It lists the domain as N,C,Y; the same guide's §8 mapping table — the one customs actually validates the combination against — uses S and B on every export house-bill row, and CBIC states both in its published clarifications to the trade. The same table marks EX + H + N and EX + H + C "Not Possible", so an export house bill is never N. See exports: filing an SCX, shipping bills and PCINs.

Type of cargo (typOfCrgo)

CodeMeaning
IMImport
EXExport
CGCoastal Goods
TRTranshipment

Cargo movement (crgoMvmt)

What happens to the cargo after it lands. This is the field that most often decides which other blocks apply.

CodeMeaning
LCLocal Clearance — cleared at the port it arrives in, or moved to a CFS under that station
TIDomestic Transshipment — moving onward under bond to an ICD or another Indian customs station
TCForeign Transshipment — international transhipment cargo, carried on to a port outside India
DTDomestic Transit — staying aboard to be cleared at another Indian port
FTForeign Transit — staying aboard, bound back out of India

Customs' own words for the first three, from JNCH Public Notice 16/2007 (which implements CBIC Circular 14/2007-Cus for international transhipment): LC is "the port code where cargo is delivered … the same as the port of arrival"; TC "refers to international transhipment cargo and the port of destination shall be port code where transhipment cargo is destined to be delivered"; TI is "local cargo meant for transhipment to hinterland port i.e. ICD".

Customs checks this field against the port of receipt, not only against the cargo type. A receipt port (trnsprtDoc.prtOfReceiptCdd) that is a sea port with a movement of anything but LC is error 365; an ICD or SEZ receipt port with LC is error 366. See the 365/366 check.

Foreign transshipment is TC at house level too. The published MIG contradicts itself here — its house-consignment attribute table spells the code FI where its master-consignment table spells it TC — and the guide's own trade-scenarios table settles it: all nine of its house-level foreign-transhipment rows say TC, as does Public Notice 16/2007. FI appears nowhere but that one parenthesis, and only TC is offered on the form.

The code is not free to choose alone. Cargo movement is validated against cargo type, the consolidation indicator and the prior-declaration flag as a single combination — import cargo never takes TC, and a house bill of transhipment cargo takes nothing else. See Cargo type, movement and the combination customs checks for the full table.

Item type (itemTyp)

Which body of customs rules applies to the goods — a different question from typOfCrgo, which is about direction of travel.

CodeMeaning
GCGovt. Cargo
UBUnaccompanied Baggage — used household goods, personal effects, a transfer of residence
OTOther Cargo

UB is the one people miss. A shipment of used and old household goods and personal effects is unaccompanied baggage, and UB is the flag that says so. See Household goods and personal effects.

GC is defined in the MIG by those two words only, and no accepted filing on record carries it. It is not the same thing as the party code type GSG: one says what rules the goods fall under, the other what kind of code identifies the consignee.

Nature of cargo (natrOfCrgo)

Five codes, and the published guidance often shows three. The MIG's attribute table lists only C, LB and DB in passing; its own code list — the section that enumerates each coded domain with a description — defines five. The full set is what the form offers, because a packaged breakbulk consignment has no honest answer among the other three.

CodeMeaning
CContainerized
PPackaged — not in containers
CPPart of the consignment is containerized, the rest packaged but not containerized
LBLiquid Bulk
DBDry Bulk

Inferred, not proven: every real filing we can read carries C, because all of them were containerized. P and CP come from the MIG's code list and have not been observed on an accepted acknowledgement.

Party country code (cnsgnrCntryCd, cnsgneCntryCd, notfdPartyCntryCd)

Two characters, ISO 3166-1 alpha-2. IN India, US the United States, CN China, AE the United Arab Emirates, SG Singapore. The manifest MIG says so in as many words — "the two digit country code as described in the ISO 3166 international standard" — and the CSN's field is two characters wide, so the alpha-3 form the trade habitually writes (IND, USA, CHN) does not fit and is refused.

The app offers all 249 officially assigned alpha-2 codes, searchable by country name, on every party block. It offers them without enforcing them: the field stays free text, so a code ICEGATE adds later can still be typed. The list is there to stop IND being entered for India, which is the failure that actually happens.

The consignee's country starts as IN on a new party block and can be changed — on an arrival message the consignee is the Indian importer nearly every time, but not quite every time.

UK is not a country code — the United Kingdom's is GB. It is the commonest slip in the filings we have read (fourteen of them), with DEU for Germany (DE), JA for Japan (JP) and EU, which names no country. The app warns on any party country that is not an ISO code and names the right one where the slip is a known one; it does not refuse, because no refusal on record names it yet.

Rejections here are 43 consignor, 44 consignee (customs calls it the buyer) and 46 notified party. When the code you entered is a genuine two-letter ISO code and it is still refused, the cause is usually elsewhere in the same party block — see Why customs rejects a filing.

Party code type (typOfCd, cnsgnrCdTyp, typOfNotfdPartyCd)

Five values in the guide, all of them Indian registrations — the MIG names them in the remark beside the consignee field rather than in its code list, which is why they are easy to miss — and a sixth customs accepts, PPT, for a passport number:

CodeMeaning
IECImporter Exporter Code
PANPAN issued by the Income Tax Department
GSNGSTIN for a normal taxpayer
GSDGSTIN for a diplomat
GSGGSTIN for a government entity
PPTPassport number — in no guide, but accepted for a person with no PAN

PAN is what nearly every filing on record carries; the external filings we hold carry IEC on 43 records. None we hold carries GSN, GSD or GSG. Other values fail — GSTIN, TAN and PASSPORT have all been tried, and two of them are too long for the field besides. A passport number is typed PPT, not PSP: an import was accepted with a consignee's passport typed PPT (11 September 2026, customs' own acceptance), and an export whose exporter, an individual, was identified by passport number was refused 039 "Invalid Consignor Code Type" with the number typed PSP (3 October 2026). That export was on customs' record the same evening from a send whose signed file typed the passport PPT — customs' record does not show the code type, so that the PPT send was the one accepted is our reading. An individual with a PAN is still filed under it. SCMTR stops a consignor code type outside these six before you sign, and points one out on the consignee or notify party.

A government department is filed the same way: its PAN if it has one, otherwise DGFT's permanent IEC for central (AMDCG0111E) or state (ADSGA0129E) government, typed IEC. See Party codes and PANs. Where the MIG's remark says "in case of CG", CG is the cargo type Coastal Goods, not government.

The code type is validated against the direction of the cargo: an arrival wants the identity on the consignee, a departure on the consignor. That pairing — an Indian identity code on the party whose country is IN — is also what makes a foreign country code on the same block worth a second look.

Equipment type (eqmtTyp)

CodeMeaning
CNContainer
BBBreakbulk
BLBlocks
CHChassis
DPLOnboard Equipment
TETrailer

Equipment size (eqmtSize)

Optional in every reporting event, and the MIG defines no code list for it. That combination is why practice varies more here than almost anywhere else in the message: there is no published enumeration to conform to, so what reaches customs is whatever the liner's own equipment record said.

Use the four-digit numeric form, not the modern alphanumeric one

ISO 6346 has used alphanumeric size-type codes — 22G1, 42G1, 45G1 — since 1995, and general shipping advice will point you at them. No filing we can read carries one. Every container on every accepted filing on record uses the older four-digit numeric form. Filing 22G1 where every accepted filing says 2210 is an untested move on a field customs does not even require.

What the filings customs accepted carry (107 accepted CSNs on record, counted 2026-09-21 — each with its Accepted acknowledgement beside it):

CodeLengthContainersAccepted filings
440040-foot12438
221020-foot6438
220020-foot469
451040-foot1715
420040-foot116
441040-foot108
421040-foot21

Seen on filings whose outcome we cannot read, and on carriers' own manifests: 2250, 2270, 4000, 4022, 4230, 4250, 4260, 4430.

The first digit is the length family — 2 for a 20-foot box, 4 for a 40-foot (so 4510 is a forty-footer, not a 45-foot box). The trailing digits carry height and equipment type, and they are where filings disagree.

What acceptance proves, and what it does not. Customs took every code in the table, so none of them gets a filing refused by itself. It does not prove the code was the right one for that box: the field is optional, customs publishes no list for it, and the check that does bite (705, below) compares the code with the vessel's for the same container, not with a table — and since ICES Advisory 38/2026 (Q4, 21 September 2026) customs says the ISO code check runs on the line's manifest, not on your CSN: the container ISO code and container agent PAN validations "have been de-linked from the CSN level and are now validated solely at the SAM (Vessel Operator/Line) level", because enforcing them on forwarders "resulted in frequent validation failures and inadvertent rejection". Whether 705 is the check that moved is our reading — the advisory names no codes. The code still matters — the line's manifest is checked against it, and your box should read the same as the line's — so keep it right on your CSN regardless. No acknowledgement on record yet shows the change from customs' side; the refusals and acceptances this page counts were all measured before it.

"What is the ISO code for a 40-foot open top?" (or a reefer, a flat rack, a tank)

Asked by a filer twice on 2026-09-19. Take it off the box — it is stencilled on the door under the container number, and it is on the equipment interchange receipt and the line's booking or release for that container. That is the code the vessel's own filing will carry, and it is the one the manifest is checked on — since ICES Advisory 38/2026, customs says, the only place the check runs — so yours should read the same.

If you need to sanity-check what you read, the older four-digit ISO numbering that filings use puts the kind of box in the last two digits: 00–19 closed general-purpose boxes, 30–49 refrigerated and insulated, 50–59 open top, 60–69 platform and flat rack, 70–79 tank. So an open-top forty-footer normally reads 4250, 4251, 4350 or 4351, and an open-top twenty-footer 2250 or 2251. A shipping line's 559-line Kolkata SAM of September 2026 bears this out: its 4230 boxes carried fresh pears and grapes (reefer), its 4250 and 2250 boxes machinery (open top), its 4260 boxes a rigid frame (flat rack), and its one 2270 an ISO tank of chemical. This is the ISO standard's own scheme, not a customs source, and no accepted filing on record carries an open top — so treat it as a way to recognise the code on your paperwork, never as a reason to type one the paperwork does not show. The field takes any four characters, so a code missing from the suggestion list is simply typed.

What a Chennai terminal's code list says each code is

A container terminal's own equipment size/type list reached us on 25 September 2026 — 630 codes, each with a description, from a workbook whose author field reads "Document Supervisor - CCT". It is a terminal's list, not customs': the MIG publishes none for this field, and nothing says customs checks a code against this one. It is still useful, because it is how a port in the chain reads the codes filings carry. It holds both forms — 270 four-digit numeric codes and 360 alphanumeric ones such as 22G1 and 45G1 — and 15 of the 16 codes on filings we hold:

CodeThe terminal's description
2200, 221020 ft dry, 8'6" high
225020 ft open top, 8'6" high
227020 ft tank (liquid), 8'6" high
400040 ft dry, 8' high
4200, 421040 ft dry, 8'6" high
423040 ft reefer, 8'6" high
425040 ft open top, 8'6" high
426040 ft flatbed / platform, 8'6" high
4400, 441040 ft dry, 9' high
443040 ft reefer, 9' high
451040 ft dry, 9'6" high

4022 is not in it. Three things follow, none of them a rule:

    It agrees with the scheme above — 50s open top, 60s flat rack, 70s tank, 30s reefer — and with what the Kolkata SAM's boxes carried.It gives 4400 and 4410 the same description, which fits the section below: they are not two sizes a filer chooses between, and the one to file is the one on your box.It calls 4400 9 feet high and 4510 9'6" — the height usually meant by "high cube". This platform's suggestion list labelled 4400 a high cube until 25 September 2026, and customs has accepted 4400 on 124 containers whose heights no filing states, so this does not make any 4400 wrong; it is one more reason to read the code off the box rather than derive it from "40 HC".

Where the app uses it. Since 25 September 2026 every container size field — the CSN form, the guided filing, the add-several-containers panel and the shipping line filing's line form — says under the box (on the shipping line filing's vessel list, on hover) what the code you typed means on this list ("40 ft dry, 9'6" high — as a terminal's code list reads it"), for any code the list describes, not only the suggested ones; the alphanumeric form is marked as one no filing on record uses; and a code the list does not hold, like 4022, gets no note at all, which is not a verdict on it. The suggestion list's own labels come from it too. When customs' record shows a different size from your file, the comparison reads both codes out the same way.

Booking shorthand is caught. 40HC, 45HQ, 20GP, 40'RF, a bare 20 — a length and a build off a booking — is not the code on the door, and no filing on record carries it. The field turns amber as you type it, the CSN checks list it as advice, the shipping line filing's checks list it once per line and once for the vessel's list, and a CSN spreadsheet import holds the row for a look. None of it blocks sending: no refusal on record names shorthand.

The list is kept in the repository as docs/mig/CCT_Container_ISO_Size_Type_Codes_2026-08-28.csv. Some of its rarer rows read like a system export ("20' Rail X-something"), so trust it for the common codes above, not for oddities.

A line re-sent its whole manifest to change a size code

On 23 September 2026 a shipping line sent the same 559-line Kolkata SAM three times, each as a fresh file under a new job number. Apart from one consignee, the only thing that changed was container sizes: three boxes on one bill went from 4400 to 4410, then one box on another from 4400 to 4200. Each box changed on its line and on the vessel's own list together, which is what 705 (size disagreeing with the voyage's record) requires. Customs' public record, asked afterwards, holds the manifest with the corrected codes: 4410 on the three boxes, 4200 on the fourth. So the last send is the one customs accepted. No reply to the earlier sends is held, so why they were replaced is not known; it fits the advisory's statement that the ISO code is now checked on the SAM. For a forwarder, the lesson is the one above: take the code off the box. The line corrects its manifest to the box, and a CSN that reads differently from the line's corrected code is the one left out of step.

If you save one such file in the Shipping line filing editor and then open the next, it lists what changed between them value by value: the line, the container, the old and new code.

ISO tank containers: the size code and the package type

"Please advise 20 feet ISO tank code and package type" — asked by a filer on 2026-09-22. The same question arrives as tanktainer, TK container, 20' TK, tank box or SOC tank. It is two questions, answered in two different places in the message, and unlike most of this page it can be answered from filings that carried tanks.

What the filings on record do with ISO tanks. Three CSNs and one manifest carry them:

FilingSize codePackage typePackage countOutcome
An export CSN, fourteen 20-foot ISO tanks of a liquid chemical on three bills2200 on every tankCON on every bill and every itemThe number of tanks on that bill (6, 2, 6; the two house bills 3 and 3)Accepted 2026-09-20
The same exporter's earlier filing of the same cargo, eight tanks2270CONThe number of tanksRefused for export-reference reasons (286, 383, 384, 709), and a bill that fails that stage gets no content checks — so its codes were neither accepted nor refused
A third party's import CSN, twelve 20-foot ISO tanks on six bills, each bill describing its tanks as shipper-owned2270CONThe number of tanks on that bill (3, 1, 2, 1, 2, 3)Not on record
A shipping line's arrival manifest, 877 boxes2270 on 111 of them——A manifest does not say what its boxes were

Every tank is equipment type CN, load status FCL, nature of cargo C (containerised), gross weight in KGS. None of them declares liquid bulk.

The size code: take it off the tank. Two codes have evidence behind them and they disagree. 2270 is the tank family in the four-digit numbering filings use (70–79 is tank in the ISO standard's own scheme), and it is what two filers and a shipping line wrote. 2200 is what customs accepted on fourteen tanks. Acceptance proves customs takes 2200 on a tank; it does not prove it was the right code for those boxes, because the field is optional, customs publishes no list for it, and the only check that bites — 705 and 236 — compares the code with the one the vessel's own filing carries for the same container — a check ICES Advisory 38/2026 (Q4) says now runs on the SAM alone, if 705/236 is the check it means; the advisory names no codes. So the code that matters is the line's, and the sources are, in order: the stencil on the container's right-hand door beneath the number, the equipment interchange receipt or the carrier's bill of lading, and the line asked directly. A tank stencilled in the modern alphanumeric form — 22T0, 22T6, 22K2 — is read through Use the four-digit numeric form above. If the box's own code cannot be had, the field is optional in every reporting event and blank is a better answer than a guess. An earlier version of this section said a tank must not be filed as 2200; the accepted filing above says customs took it, and this page defers to what customs did.

The package type: CON, with the count equal to the number of tanks. All three tank CSNs carry CON — containers — at document level and item level, and customs accepted it. It is the filer's honest reading of a bill that says "6 x 20' ISO tank container … 6 packages": the tank is both the box and the package. Keep it the same on the transport document and on every item under it (231), and make the counts add up across document, items and equipment (221, 225); on the accepted filing each house bill counts its own tanks and the master counts them all. Two other readings exist and neither is on a tank filing: PKG with a count of 1 per bill, the MIG's own code and the commonest on accepted filings generally; and the measure-style LTR, KGS, MTS, which the MIG writes for cargo declared liquid bulk (LB) — a tank container is containerised cargo (C) on every filing above, so those codes do not follow from it. The form offers CON on the CSN since 2026-09-22; before that it was typed.

What is not a source. 20TK, 20 TANK, TK and a line's booking shorthand are labels, not size codes; and a UQC (unit quantity code) list is what customs' own error text calls the package-type field (30, Invalid Type of Packet), not a different field — the codes above are the answer to it.

Reefers, flat racks, open tops are the same question with a different family of last two digits — see the section above. Shipper-owned tanks are a question this page cannot yet settle: CBIC's SCMTR FAQ puts a tank operator's PAN at container level so its Container Bond is debited and credited like a line's, but the one filing above whose bills call the tanks shipper-owned carries the SOC flag N on every one, and its outcome is not on record — so the flag on a tank is read off the bill and the line's instructions, not off this page. The equipment block's fields are in containers and shared boxes.

"For a 40 HC some say 4400 and some say 4410 — why?"

Asked by a filer on 2026-09-08, and it is a fair reading of what is out there. Both codes are real and both are in use for 40-foot boxes. One shipping line's own arrival manifest for a single vessel — 877 containers, one message — declares 4400 470 times and 4410 200 times, alongside 2270 (111), 2210 (88), 4210 (4) and 4430 (4).

What that tells you, and what it does not:

    It is not two names for one thing. The carrier is echoing each individual box's own stencilled code, not choosing a house style — the same message carries six codes, so the boxes genuinely differ. Somewhere in those 670 forty-footers, some are 4400 and some are 4410.Nothing published says which is which. Customs defines no list for this field, and the MIG gives it four characters and no enumeration. Anyone telling you 4410 means a particular height or fitting is reading it off ISO 6346 by analogy, not off a customs source.So do not pick between them from a table. Take the code off the box, the equipment interchange receipt, or the liner's record for that container — the sources below, in that order. If your box says 4410, file 4410.

The one place this bites is the cross-check: 705 (BL/HBL and Voyage EqmtSize Does Not Match) and 236 compare the CSN's code against the one the vessel's own filing carries for the same container — and since ICES Advisory 38/2026 (Q4) customs says the ISO code is validated on the line's manifest only; whether this comparison is that check is our reading, and one refusal since fits it: on 3 October 2026 a line's SAA was refused 398 (Eqmt Size Not Match With Referred Eqmt Size of CIN) for a size unlike the CSN it quoted — where the CSN's size matched both bills of lading. So the code that matters is the carrier's for that box, not the one that is conventional for its size — which is another way of saying the same thing, and a reason to keep yours reading the same as the line's.

Note where these six codes come from. They are read out of a carrier's SACHM23 arrival manifest. A vessel operator's practice is evidence about what exists on boxes, not about what a forwarder should choose — so the platform's suggestion list offers them (it lists every code seen on an accepted filing or a real manifest, and one, 4000, from a filing whose outcome we cannot read — ten in all) but marks none as the code for a size. The field takes anything you type, so an unlisted code is one keystroke away and nothing has to be chosen from the list.

Different liners really do send different codes for the same size

This is often passed around as folklore, and it happens to be true — though not for the reason usually given.

One carrier's single filing, 86 containers on one vessel, declares its 20-foot boxes as 2200 sixty-four times, 2250 twice, and 2210 once. Same message, same filer, same nominal size, three codes. Another carrier's arrival manifest, 877 containers, uses six codes across two lengths. In both cases the carrier is passing each box's own code through rather than normalising them.

Forwarder filings look nothing like that: each picks one code and repeats it for every box on the filing. That contrast is the tell. A forwarder is typing what it believes a 20-footer is called; a carrier is echoing what each individual box actually is.

So the common advice — confirm the code with the liner before filing — is worth following, but know what it protects against. It is not that 2210 means something different to a different line. The size digits are standard. It is that the box in front of you may genuinely not be the plain 8'6" dry container you assumed, and only the liner's record or the box itself will say so.

Where the code comes from

In order of reliability:

    The container itself — the size-type code is stencilled on the right-hand door, beneath the container number.The equipment interchange receipt, or the carrier's bill of lading.The liner, asked directly.

What is not a source is the carrier's commercial shorthand. 20DV, 40HC, 40NOR, 20GP are booking and marketing labels, not size-type codes, and they differ from line to line. They do not belong in this field.

Because the field is optional, leaving it blank when you genuinely do not know is a legitimate answer, and a calmer one than guessing — every equipment record still carries the container number, the type and the load status, which are the mandatory three.

Equipment load status (eqmtLoadStatus)

CodeMeaning
FCLFull Container Load
LCLLess than Container Load
EMPEmpty

The message guide defines the field as how full the piece of equipment is — the custodian's and transhipper's guides gloss the same three codes as Full, Partial and Empty. It describes the box, not the commercial arrangement, and the shipping line's manifest must carry the same value for the same container: a difference is error 237. (Those two other guides also carry a separate shipment load status — whether one shipping bill's cargo sits in one container or several — that the CSN does not have.) How two house bills sharing a box are marked on an import, and what is and is not known for an export, is in containers and shared boxes.

CIN type (cinTyp)

CodeMeaning
PCINPrimary Cargo Identification Number — a straight or house bill's cargo; on an export, one shipping bill's
MCINMaster Cargo Identification Number — consolidated cargo; an MCIN aggregates PCINs
CSNUsed only where a consolidated bill's previous declaration is C and the previous reference quotes an earlier CSN number — ICEGATE's message-filing FAQ says to put CSN here in that case; the message guide's own list has only the two above

A value outside the list is error 99; the right list value against the wrong kind of bill is 159 (master) or 161 (house line).

Seal type (eqmtSealTyp)

CodeMeaning
ESEALElectronic Seal
BTSLBottle Seal

Package type (typsOfPkgs / typOfPkgs)

These are suggestions, not a closed list. Every published SCMTR MIG carries the same five-code list — PKG, KGS, MTS, LTR, USG — and production accepts well beyond it. The codes the form offers, and where each has been seen:

CodeMeaningSeen on
PKGPackagesThe MIG's own list, and most accepted filings
BDLBundlesOne accepted filing
BGSBagsAccepted filings
BLSBalesOne accepted filing
BOXBoxesA carrier filing without an acknowledgement and a SAM / SDM — not yet an accepted CSN
CASCasesAccepted filings, including two for wooden boxes
CLSCoilsOne accepted filing, of spring steel wire — the meaning is read from the goods; no published list defines the code
CRTCratesOne accepted filing
CONContainersOne accepted filing — fourteen ISO tanks, count = tanks; also a third-party tank CSN and the SAM / SDM samples
CTNCartonAccepted filings
DRMDrumsCarrier and third-party filings and a SAM / SDM — not yet an accepted CSN
PCSPiecesOne accepted filing
PLTPalletsAccepted filings
RLSRollsAccepted filings
SHTSheetsOne accepted filing
UNTUnitsAccepted filings
KGSKilogramsThe MIG's own list
MTSMetric TonThe MIG's own list
LTRLitersThe MIG's own list
USGUS GallonsThe MIG's own list

What is the package code for wooden boxes or wooden cases?

CAS — cases. Two CSNs customs accepted in September 2026 carry wooden boxes. One bill describes the lot as 66 cases made up of 33 wooden pallets and 33 wooden boxes, so the bill's own word for it is cases; the other lists 5 wooden pallets and 8 wooden boxes with no packing word at all, and the filer chose CAS for its 13. Both carry CAS as the package type on the house bill and on the item under it, with the master bill above them on the generic PKG. BOX is offered too, but no accepted CSN has carried it yet, so CAS is the answer with evidence behind it for boxed or cased cargo. CRT (crates) was accepted once, on a filing for a CT scanner.

Any other code can be typed — the field takes any three-character code. CAN (cans) has been accepted on CSNs too, and is offered on a shipping line's manifest.

What package code does an ISO tank take?

CON — containers — with the package count equal to the number of tanks. Every CSN on record that carries ISO tanks does this at document and item level, and customs accepted one of them on 2026-09-20 (fourteen 20-foot tanks on three bills, counts 6, 2 and 6). The field is the packing of the goods, not the box that carries them, and for a tank the two are the same thing — which is why PKG × 1, the other honest reading of the bill, is on no tank filing, and why the measure-style LTR, KGS and MTS do not apply: they are for cargo declared liquid bulk, and a tank container is containerised cargo. The size code is the other half of the question — see ISO tank containers under Equipment size above.

The same list serves the document level and the item level. An earlier reading split them into two different closed lists of 26 and 7 codes; that split does not exist in real filings.

What unit of volume does a sea filing use?

CBM — cubic meters — in practice, even though the published MIG lists only LTR (liters) and USG (US gallons) for unitOfVolume. The MIG's list is written for liquid bulk (gross volume is mandatory only when the nature of cargo is LB), and its code annexure defines no cubic-meter code at all. But CBM is the unit the bill of lading itself states volume in, and a real console filing carries CBM on all 24 of its records. The form accepts all three:

CodeMeaningWhere it comes from
CBMCubic metersTrade practice — what bills of lading and manifests actually say
LTRLitersThe MIG's published list (liquid bulk)
USGUS GallonsThe MIG's published list (liquid bulk)

ICEGATE checks this field server-side (rejection 49, "Invalid Unit of Volume"), so a code not listed here is refused rather than guessed at. If a filing you hold uses another volume unit and was accepted, that is exactly the evidence worth telling us about. A gross volume of 0 is accepted and means "no volume declared" — filings that declare no volume either omit the field or write 0.

IMDG hazard class (imdgCd)

Three characters. ZZZ if the cargo is not hazardous — the field is not left blank.

CodeMeaning
ZZZNot hazardous
1Explosives
1.1–1.6Explosives, by hazard: mass explosion, projection, fire, none significant, very insensitive, extremely insensitive
2.1Flammable gases
2.2Non-flammable, non-toxic gases
2.3Toxic gases
3Flammable liquids
4.1Flammable solids
4.2Spontaneously combustible
4.3Dangerous when wet
5.1Oxidizing substances
5.2Organic peroxides
6.1Toxic substances
6.2Infectious substances
7Radioactive material
8Corrosives
9Miscellaneous dangerous goods

HS code (hsCd)

The eight-digit Indian tariff item (ITC-HS) is what the field is for, and the app's search offers all 12,571 of them with their descriptions — including the plain "Other" lines such as 85369090 and 73269099, which are among the codes filed most. A bare "Other" is shown under the heading it sits in ("Other articles of iron or steel : -- Other"), because on its own it tells you nothing. Until 25 September 2026 the search held only about half the tariff and most "Other" lines were missing from it; the full list came from DGFT's own ITC-HS service.

Customs does not check this field against the tariff. Accepted filings carry six-digit headings, ten-digit codes from the shipper's own country, and eight-digit codes from older tariff editions, and none was refused for it. The field takes up to ten characters; give the Indian eight-digit code when you have it.

UN number (unoCd)

The UN dangerous-goods number. ZZZZZ when the cargo is not dangerous goods — the same convention as ZZZ for the IMDG class.

Indicator (indicator)

P for production, T for test. Filings made in this app are always P. Customs does not turn a T away, though: two filings flagged T were accepted with a CSN issued, so a T on a file made elsewhere does not mean it never reached customs, and it is not a reason for a refusal.

Reading an Indian customs location code

INMAA1TCF1 looks opaque and is not.

    IN — country, IndiaMAA — the UN/LOCODE city, here Chennai1 — the customs station type digitTCF1 — the sub-location: a specific terminal, CFS or bonded facility inside that station

So INMAA1 is Chennai port and INMAA1TCF1 is one facility within it. A destination that is a sub-location of the port of entry still means an onward bonded movement, short as it is.

Still stuck on this?

The assistant answers from this exact page and the rest of our reference material, and names the documents behind every answer.

Have the file? Check it free — no sign-in

General information only — not legal or customs-compliance advice, and it may not reflect the most current ICEGATE/CBIC requirements. Verify against the official sources, or a licensed customs broker, before filing.