Skip to content

Exchange & Depository Registration

Before a customer can buy or sell a single share, their identity must be registered with two fundamentally different types of institutions: exchanges and depositories. Exchanges — such as the NSE (National Stock Exchange), BSE (Bombay Stock Exchange), and MCX (Multi Commodity Exchange) — are where trades happen. Depositories — CDSL (Central Depository Services Limited) and NSDL (National Securities Depository Limited) — are where securities are held in electronic form. Think of it this way: the exchange is the marketplace where you buy vegetables, and the depository is the refrigerator where you store them. This page covers the file formats, field requirements, and submission sequences for registering a new client at each of these five institutions.

The PAN (Permanent Account Number) is the universal linking key across all five systems. Every exchange and every depository uses PAN as the primary identifier to tie a customer’s trading activity to their demat holdings to their KYC (Know Your Customer) record. If PAN data is inconsistent across any of these systems, things break — settlements get blocked, accounts get frozen. That is why getting registration right the first time matters so much.

Let us start with the three exchange registrations, each of which creates a UCC for the customer.

NSE is the largest stock exchange in India by trading volume and is typically where most new customers will place their first trade. NSE offers three submission methods — a web portal, a REST API (Application Programming Interface), and a batch upload using pipe-delimited files. The batch format changed in July 2024, so make sure your integration uses the revised structure.

AspectDetails
Trading SystemNEAT / NOW (NEAT on Web)
Submission MethodsUCI Online (web) | API Upload (REST JSON) | Batch Upload (pipe-delimited, no headers)
API ReferenceNSE/ISC/60418 (API), NSE/ISC/61817 (Apr 2024 — revised structure)
Batch LimitMax 10,000 records per file
Format ChangeNew file structure effective Jul 15, 2024
SegmentsCM (Cash/Equity), FNO (F&O), CD (Currency), COM (Commodity)
Activation SLASame day (batch 5PM cutoff)

In plain English: if you submit a customer’s data to NSE before 5 PM, they should have an active trading code by end of day.

Full spec: NSE Integration

BSE runs alongside NSE and many brokers register their customers on both exchanges simultaneously.

BSE has a stricter PAN verification process than NSE — it mandates a 3-parameter check where the customer’s PAN, name, and date of birth must all match against the Income Tax Department’s records via Protean. If a customer’s name or DOB needs to be corrected after registration, BSE requires a formal “Unfreeze” request followed by re-verification through Protean, which makes getting it right the first time especially important.

AspectDetails
Trading SystemBOLT Plus
PAN Verification3-parameter mandatory: PAN + Client Name + DOB via Protean
Modification RuleName/DOB changes only via Unfreeze requests + Protean re-verification
Batch LimitMax 30,000 records. Segment activation: max 50,000.
SegmentsEquity, F&O, Currency, Debt
Activation SLASame day

Full spec: BSE Integration

MCX is the third exchange, but it only applies to customers who want to trade in commodities such as gold, crude oil, or agricultural products.

MCX has a unique requirement that the other exchanges do not: income proof is mandatory for all commodity traders. Additionally, every MCX client must be assigned a client category — Hedger (HE), Speculator (SP), or Arbitrageur (AR) — which affects their margin requirements and position limits. The connectivity uses a proprietary protocol called CTCL (Computer-to-Computer Link), which communicates via TCP/IP.

AspectDetails
Trading SystemMCX CONNECT
ConnectivityCTCL (Computer-to-Computer Link) — proprietary C-structure API via TCP/IP
Additional RequirementStandard KYC docs + income proof mandatory for commodity trading
Client CategoryHE=Hedger, SP=Speculator, AR=Arbitrageur
Activation SLANext working day

In plain English: MCX is the only exchange where income proof is required at registration. If your customer only wants equity trading, you can skip MCX entirely.

Full spec: MCX Integration

Now let us move to the depositories. While exchanges handle where trades happen, depositories handle where the resulting securities are stored.

CDSL, promoted by BSE, is where the majority of India’s retail demat accounts are held — over 11 crore accounts as of early 2026. The BO (Beneficial Owner) account is the electronic equivalent of a physical share certificate locker. CDSL uses a fixed-length positional file format with numbered “lines,” where Line 01 carries the header and DP (Depository Participant) ID, Line 02 carries contact and KYC data, Line 05 carries bank details, and Line 07 carries nomination information. All four of these lines are mandatory for a new account.

AspectDetails
Core SystemCDAS
BO ID Format16 digits (numeric): 8-digit DP ID + 8-digit Client ID
SubmissionAPI (BO Setup) | Portal (one-by-one) | Batch (fixed-length positional)
File Lines01: Header/DP ID (mandatory), 02: Contact/KYC (mandatory), 03-04: Joint holders, 05: Bank (mandatory), 06: Additional, 07: Nomination (mandatory)
DDPIOptional, replaces PoA. Activation within 24 hours (online).
Activation SLA1-2 hours (API). 1-3 days (batch).

Full spec: CDSL Integration

NSDL is the other depository and has a notably different architecture and timeline.

NSDL, promoted by NSE, was India’s first depository (established 1996) and tends to hold more institutional and high-value accounts. Its file format — UDiFF (Unified Distilled File Formats) — uses ISO-tagged fields and was adopted in March 2024, replacing the older format. The most critical difference from CDSL is the activation timeline: NSDL takes approximately 15 working days end-to-end, primarily because the PAN flag enablement step (the final gate) can take 5-7 working days on its own.

AspectDetails
Core SystemDPM (Depository Participant Module)
BO ID Format”IN” + 14 chars (alphanumeric): IN + 6 DP ID + 8 Client ID
SubmissionVia Insta Interface → CDS → Local/Cloud DPM
File FormatUDiFF (Unified Distilled File Formats) — ISO-tagged since Mar 2024
DDPIPrimarily offline. Processing: 2-3 business days.
Activation SLA~15 working days including PAN flag enablement

Full spec: NSDL Integration

To help you understand the practical differences between the two depositories, the following comparison table covers everything from BO ID formats to DDPI processing times.

AspectCDSLNSDL
BO ID Format16 digits (numeric)“IN” + 14 chars (alphanumeric)
Core SystemCDASDPM
Online TransfersEASIESTSPEED-e
View-only PortaleasiIDeAS
File FormatFixed-length positional (line-based)ISO-tagged UDiFF
PromoterBSENSE
Market Share~11.27 crore accounts (more retail)~3.54 crore accounts (higher value)
DDPI ActivationOnline (Aadhaar eSign), 24 hoursOften offline (physical), 2-3 days

In plain English: CDSL is faster, more retail-friendly, and has a larger user base. NSDL is older, more institutional, and takes significantly longer for account activation. Most retail-focused brokers default new customers to CDSL.

Finally, knowing the most common rejection reasons will save your operations team significant time. These are the issues your system should proactively validate before submission.

#Rejection ReasonFix
1Multiple email addresses in email fieldSingle email only
2PAN not verified / invalidVerify PAN before submission
3PAN-Aadhaar not linkedClient must link at incometax.gov.in
4Name mismatch across sourcesNormalize to PAN name
5DOB inconsistency across databasesUse PAN DOB as master
6Missing mandatory file lines (01,02,05,07)Ensure all mandatory lines present
7Incomplete 6 KYC attributesAll 6 must be populated
8Missing nomination or opt-out declarationMandatory since Mar 1, 2025
9Duplicate PAN with same status at same DPVerify no existing account
10Missing guardian details when disability flag = YValidate conditional fields

In plain English: the top three rejection reasons — multiple emails, unverified PAN, and PAN-Aadhaar not linked — account for the majority of failed registrations. Validate these upfront during the user journey, not at the batch submission stage.