AD Code for Exporters and Importers: Complete Guide India 2026
AD Code is mandatory before your first export shipment. Without it, you cannot file a shipping bill, your cargo gets stuck at the port, and payment realization is impossible. This guide covers what it is, how to get it, ICEGATE registration port-by-port, FEMA 2026 rules, and the 9 real problems exporters face — with exact solutions.
Key Facts at a Glance
- Full form: AD Code = Authorised Dealer Code
- Format: 14-digit numerical code issued by your bank on the RBI’s authorised dealer list
- Mandatory for: Filing shipping bill at Indian Customs (ICEGATE). No AD Code = no shipping bill = no export
- Who issues it: Your bank (the bank where your export current account is held), not DGFT, not RBI, not Customs
- Where to register: ICEGATE (icegate.gov.in) — separately for EVERY port, airport, or ICD from which you export
- Time to get: 3–7 working days from bank; ICEGATE registration within 1–3 days
- FEMA 2026: Export proceeds must be realized within 15 months from shipment date (extended from earlier 9 months)
- IEC annual update: Mandatory between April–June every year on DGFT portal or IEC gets deactivated
What Is AD Code? (Plain Language Explanation)
When you export goods from India, two things must happen: (1) your goods must physically leave India through Customs, and (2) the foreign payment for those goods must come back into India and be credited to your bank account. The Reserve Bank of India needs to track both. Without tracking, forex can leak out of the country — goods leave but payment never arrives.
AD Code solves this tracking problem. AD stands for Authorised Dealer — a bank that the RBI has licensed to deal in foreign exchange. Your bank’s AD Code is a unique 14-digit number that identifies your bank branch on the ICEGATE (Indian Customs) system. When you file a shipping bill, your AD Code links your shipment to your bank account. When payment arrives from the foreign buyer, the bank can match it to that shipment in the EDPMS (Export Data Processing and Monitoring System) maintained by RBI.
In simple terms: AD Code is the bridge between your shipment at Customs and your bank account where export payment must arrive. Without this bridge, Customs will not allow you to file the shipping bill.
Who Needs AD Code?
Every Indian exporter who files a shipping bill at Indian Customs must have an AD Code registered on ICEGATE. This includes manufacturers exporting directly, merchant exporters, trading houses, SEZ units shipping to DTA, and e-commerce exporters using courier exports. Even if you export once a year, or are a first-time exporter — AD Code registration is mandatory before your very first shipment.
Importers also need AD Code registration on ICEGATE for filing Bills of Entry at ports. The ICEGATE AD Code registration process is the same for both exporters and importers.
AD Code: Step-by-Step Process
Obtain IEC (Import Export Code) from DGFT
If you don’t have IEC yet, apply at dgft.gov.in. IEC is the prerequisite for everything. Time: 1–3 working days. Once issued, IEC is valid for lifetime but must be updated annually on DGFT portal between April and June every year. Failing to update deactivates your IEC automatically, which in turn makes your AD Code invalid.
Open a current account with an Authorised Dealer bank
Your export current account must be with a bank that is on the RBI’s Authorised Dealer (Category I) list — essentially all scheduled commercial banks in India (SBI, HDFC, ICICI, Axis, PNB, Bank of Baroda, Canara Bank, etc.). If you already have a business current account, you likely don’t need a new one — just use that bank to get the AD Code letter.
Submit AD Code letter application to your bank
Write a request letter to your bank (branch manager) on your company letterhead asking for the AD Code certificate for export registration. Most banks have a standard format — ask the branch for it. Submit along with: IEC certificate copy, GST certificate copy, PAN copy, certificate of incorporation / partnership deed, and a cancelled cheque of the export account.
Receive AD Code letter from bank
The bank issues an AD Code letter on its letterhead within 3–7 working days. This letter contains: (a) the bank’s 14-digit AD Code, (b) your account number, (c) the bank branch address, (d) the bank’s SWIFT/BIC code. This letter is what you take to register on ICEGATE. Keep original copies safe — you may need them for multiple port registrations.
Register AD Code on ICEGATE for every port you will use
Go to icegate.gov.in → Services → AD Code Registration. Upload your AD Code letter, IEC, PAN, GST, and supporting documents. Select the specific port/airport/ICD where you want to export. This must be repeated for EVERY port. Exporting from JNPT Mumbai and Chennai Seaport? Register at both separately. Time: 1–3 working days per port.
Receive ICEGATE registration confirmation
ICEGATE sends an email confirmation that your AD Code is registered and active at the selected port. From this point, your Customs House Agent (CHA) can file shipping bills at that port using your IEC and AD Code. Keep this confirmation for your records and give a copy to your CHA.
→
Open Export A/C (AD Bank)
→
Request AD Code Letter
→
Receive Bank Letter
→
Register on ICEGATE (each port)
→
File Shipping Bill
Documents Required for AD Code Registration
| Document | Purpose | Key Requirement |
|---|---|---|
| AD Code Letter from Bank | Primary document — contains the 14-digit AD Code | On bank letterhead; sealed and signed by authorised bank official; not older than 3 months |
| IEC Certificate | Proves business is registered for import/export | Must be active (annual update done); name on IEC must match all other documents exactly |
| PAN Card | Tax identity of business | Business PAN (not personal PAN for companies/firms); must match IEC records |
| GST Registration Certificate | GST identity of exporter | Must be active; business name must match IEC and PAN exactly |
| Cancelled Cheque | Verifies bank account details | Of the same account for which AD Code letter is issued; account number must match the letter |
| Class 3 Digital Signature Certificate (DSC) | For online submission on ICEGATE | Must be signing + encryption type (not signing-only); must be valid (not expired); issued in name of authorised signatory |
| Authorised Signatory ID Proof | Identity of person signing the application | Aadhaar or passport of director/proprietor/partner who signs; must match DSC |
| Certificate of Incorporation / Partnership Deed / Trust Deed | Business constitution proof | As applicable to business type: Pvt Ltd / LLP / Firm / Sole Proprietor |
AD Code Letter — What It Looks Like and What to Check
The AD Code letter is issued by your bank on its official letterhead. It is addressed to the concerned Assistant Commissioner of Customs at the port you intend to export from. The letter typically states:
- Name and address of your company (the exporter)
- Your bank account number with the bank
- The bank’s 14-digit AD Code (Authorised Dealer Code)
- The bank branch name, branch address, IFSC code, and SWIFT/BIC code
- A request to the customs authorities to register the AD Code for the exporter
- Bank’s stamp and signature of the authorised bank official
Before you take the letter, verify these 5 things:
- Your company name is spelled exactly as on the IEC certificate (no abbreviations, no extra words)
- Your account number on the letter matches the cancelled cheque
- The bank’s AD Code (14 digits) is clearly printed — ask the bank to confirm it verbally
- The letter is stamped and signed by a bank officer (not just rubber-stamped)
- The letter is dated within the last 3 months (some ports reject outdated letters)
ICEGATE AD Code Registration — Online Process
ICEGATE (Indian Customs Electronic Gateway) at icegate.gov.in is the Customs Department’s online portal where shipping bills, bills of entry, and registration services are processed. AD Code registration on ICEGATE is free and can be done by the exporter directly or through their CHA (Customs House Agent).
Online registration steps on ICEGATE:
- Go to icegate.gov.in → click Register (if new user) or Login
- Under Services, select AD Code Registration
- Enter your IEC number — the system will auto-fetch your basic details from DGFT
- Enter bank details: AD Code, account number, bank name, branch name, IFSC, SWIFT code
- Select the port/customs location where you want to register (you must do this for each port separately)
- Upload scanned copies of AD Code letter, IEC, PAN, GST, cancelled cheque, and ID proof of signatory
- Sign the application digitally using your Class 3 DSC
- Submit. Note down the application reference number for tracking
- ICEGATE processes within 1–3 working days and sends email confirmation
The 9 Real Problems Exporters Face with AD Code — and Exact Solutions
These are not theoretical problems. These are the exact situations that exporters encounter, especially first-time exporters who discover the hard way what happens when AD Code is not done correctly.
The most painful AD Code problem. The exporter gets an export order, books the container, cargo reaches the port, and then the CHA calls to say the shipping bill cannot be filed because the AD Code is not registered at that port on ICEGATE. Container detention, demurrage, port storage charges begin immediately.
The company name appears as “M/s Jai Exports Private Limited” on IEC, “JAI EXPORTS PVT LTD” on PAN, and “Jai Exports Pvt. Ltd.” on the AD Code letter. ICEGATE’s system does exact string matching. Even punctuation differences cause rejection. This is the #1 reason for ICEGATE registration failure.
Exporter or their CA buys a DSC for ICEGATE registration, but ICEGATE rejects the signature. Two common reasons: (a) the DSC is “signing only” type, but ICEGATE requires “signing + encryption” Class 3 DSC; (b) the DSC is valid but the browser Java settings or ICEGATE plugin is outdated.
The exporter has an order, the buyer is waiting, and the bank is taking weeks to issue what is essentially a one-page letter. Branch staff are unfamiliar with the process, the request keeps moving between departments, and no one gives a clear timeline.
Exporter switches from Bank A to Bank B for better export services. Files shipping bills using the new AD Code (Bank B), but EDPMS (RBI’s export tracking system) still shows the old bank. Foreign payment arrives and gets credited to Bank A’s nostro account, creating an EDPMS mismatch. RBI generates a show-cause notice for unrealized export proceeds because the payment cannot be matched to the shipment.
Exporter has AD Code registered at JNPT Mumbai but gets an order requiring airfreight from Delhi (IGI Airport). The CHA in Delhi cannot file the shipping bill because the AD Code is not registered on ICEGATE for INDEL4 (Delhi Air Cargo). The exporter did not know that ICEGATE registration is port-specific, not national.
IEC holders must update their profile on the DGFT portal between April 1 and June 30 every year — even if there are no changes. Miss this window and DGFT automatically deactivates the IEC. An inactive IEC means the AD Code linked to it also becomes invalid on ICEGATE. Shipping bills cannot be filed. The exporter discovers this in August when a shipment is blocked, not in June when the deadline passed.
The buyer paid in full. The money is in the exporter’s bank account. But the bank did not submit the Export Bill Realization Certificate (BRC / eBRC) to RBI’s EDPMS system. Months later, the exporter gets a notice from their AD bank (on behalf of RBI) asking why export proceeds against a shipping bill are still showing as outstanding in EDPMS. This is not the exporter’s operational failure — it is a paperwork closure failure.
An e-commerce seller on Amazon Global or eBay wants to export small parcels through courier (DHL, FedEx, Blue Dart). They try to register AD Code on ICEGATE for regular ports, but their shipments are processed under the Courier Imports and Exports (Electronic Declaration and Processing) Regulations — a different customs procedure (Courier Shipping Bill, not the regular Shipping Bill). The regular ICEGATE AD Code registration path does not apply the same way.
AD Code and FEMA 2026: Key Rules Every Exporter Must Know
| FEMA Rule | What It Means for Your AD Code | Consequence of Non-Compliance |
|---|---|---|
| Export proceeds realization: 15 months (FEMA 2026, w.e.f. Oct 1, 2026) | Payment for every export shipment must arrive in your AD bank account within 15 months of shipment date. Earlier limit was 9 months. | EDPMS shows outstanding entry. Bank issues notice. Repeat non-realization can trigger RBI compounding proceedings under FEMA. |
| INR export proceeds: 18 months (FEMA 2026) | If your export invoice is in Indian Rupees (exports to certain countries under Rupee trade arrangement), realization period is 18 months. | Same as above — EDPMS mismatch, FEMA notice. |
| Payment must come to the AD bank linked to AD Code | Foreign payment must be credited through the same bank whose AD Code was used in the shipping bill. You cannot file shipping bill with Bank A’s AD Code but receive payment in Bank B. | EDPMS mismatch. FEMA non-compliance for unrealized proceeds even though money exists in a different account. |
| AD bank empowerment: Extensions without RBI approval (FEMA 2026) | Your AD bank can now grant extensions on export realization period without referring each case to RBI. Approach your bank early if you foresee delay. | If you wait until after the deadline, extension may not be granted and FEMA proceedings start. |
| Future exports only on advance or LC if proceeds overdue >1 year (FEMA 2026) | If any previous export proceeds remain unrealized for more than 1 year beyond due date, RBI/FEMA 2026 requires future exports to be only against full advance payment or an irrevocable LC — open account exports are stopped. | Your AD bank must comply and will refuse to process shipping bills on open account basis until outstanding EDPMS entries are closed. |
AD Code for Importers: How It Differs
Importers also need AD Code registration on ICEGATE for filing Bills of Entry. The process is essentially the same — get AD Code letter from the bank that handles your import payments, register on ICEGATE for the port(s) through which goods will arrive. The key difference:
- For imports, the AD Code links your import payment outflow (foreign remittance) to the specific shipment (Bill of Entry) in RBI’s IDPMS (Import Data Processing and Monitoring System)
- Import advance payments and remittances must flow through the AD bank whose code is registered on ICEGATE for the import
- Under FEMA 2026: if a previous import advance payment has remained unadjusted (goods not received, not refunded) for more than the prescribed period, future import advances are only allowed against an irrevocable LC or Bank Guarantee until the old entry is settled
How to Check if Your AD Code Is Active on ICEGATE
Before every new shipment from a new port (or if you suspect any issue), verify AD Code status:
- Go to icegate.gov.in
- Navigate to Services → AD Code Enquiry (or use the ICEGATE inquiry module)
- Enter your IEC number
- The system will show all ports where your AD Code is registered and the status (active/inactive)
- If a port you need is not listed, do the ICEGATE registration immediately
Alternatively, ask your CHA to verify your AD Code status on ICEGATE before the first shipment of any new season, or whenever you switch banks or open a new account.
AD Code Registration — Timeframe Summary
AD Code — Timeframe at a Glance
| IEC from DGFT | 1 to 3 working days |
| AD Code letter from bank | 3 to 7 working days |
| Class 3 DSC (if not already held) | 1 to 3 working days |
| ICEGATE registration (per port) | 1 to 3 working days |
| Total time (first-time exporter) | 7 to 12 working days end-to-end |
Master Checklist: AD Code Done Right
Complete AD Code Checklist for New Exporters
- IEC obtained from DGFT (dgft.gov.in) and is currently active (annual update done if April–June passed)
- Export current account opened with an Authorised Dealer bank
- AD Code letter requested from bank in writing on company letterhead
- AD Code letter received — company name verified to exactly match IEC, PAN, and GST
- Bank account number on AD Code letter matches cancelled cheque
- Class 3 DSC (signing + encryption) obtained in name of authorised signatory
- ICEGATE registration done for EVERY port/airport/ICD you plan to export from
- ICEGATE registration confirmation email received and saved for each port
- Port-wise AD Code registration list shared with all CHAs
- Calendar reminder set for April 1 every year for IEC annual update on DGFT portal
- Process in place to track eBRC generation after every payment realization
- EDPMS checked quarterly to ensure no outstanding (unrealized) shipping bill entries