EDIS (Approval) Page Redirect – CDSL
This API is used to initiate a browser-based approval request for EDIS (Electronic Delivery Instruction Slip) transactions via CDSL. It opens a pop-up that redirects to the depository interface, where the user approves the delivery of selected securities. Upon success or failure, a response is posted back to the main application.
📝Request Body Schema
| Field | Type | Description | Example/ENUM |
|---|---|---|---|
| userCode | string | User code received after login | "AABVV" |
| managerIP | string | IP address of the manager system | "10.0.156.11" |
| sessionID | string | Unique session identifier | 0x034567uy789890 |
| Channel | string | Source of the request | "MOB", "WEB" |
| ISIN | string | ISIN of the main security | "INE78654389" |
| isinName | string | Name of the main security | BATA India Ltd |
| exchangeCd | string | stock echange code | "NSE", "BSE" |
| product | integer | Product (1 = Cash Segment) | "1" |
| Instrument | string | Financial instrument type | "Equity" |
| Quantity | string | Quantity of the main security | "10" |
| dpId | integer | Depository Participant ID | "6523300" |
| clientId | integer | Client ID under depository | "125800000058" |
| depository | string | Target depository | "NSDL", "CDSL" |
| productcode | string | Product code / application source | "ODINAERO""WAVE" |
| MarketSegId | integer | Market segment identifier | 521 |
| ScripDetails | integer | JSON array of all securities to be approved | {"ISIN":"INE176A01028","Quantity":10,"ISINName":"BATA INDIA LTD","SettlmtCycle":"T1"} |
| userId | string | Unique Cleint code (UCC) | "UCC12345" |
| groupID | string | Group Identifier | HO |
| amo | string | After Market Order Flag | "N""Y" |
| SettlmtCycle | string | Settlement cycle | T1, T2 |
| theme | string | UI theme for approval screen | "L" (default/light) |
All the parameters above are combined into a query string, then Base64 encoded, and sent as enct in the final URL.
🔁User Flow
- The frontend assembles the full query string using the parameters above.
- This string is Base64 encoded.
- The encoded string is appended to the URL as ?enct=....
- A browser pop-up opens with this URL.
- User approves/rejects the delivery via the depository interface (CDSL).
- Upon completion, the response is sent back to the parent window and then posted to your configured webhook.
🟢Success Response - 200 Ok
| Field | Type | Description | Example/ENUM |
|---|---|---|---|
| Despository | string | Name of depository | CDSL |
| dpId | string | Depository Participant ID | "092200" |
| clientID | string | Client ID | "52886666000" |
| isin | string | ISIN of the main security | "IEN87976500" |
| OriginalQty | string | Quantity requested | 10 |
| BlkQty | string | Quantity blocked | 10 |
| Channel | string | Channel used | MOB |
| Status | string | Approval status | "success" |
| Remark | string | Any additional message or reason | "Approved" |
RefNum | string | Reference number from depository | 0 |
| TransRefNum | string | Transaction reference number | 131025258077 |
| StatusCode | string | Status code for error handling | ERR035, "" |
| ScripDetails | string | JSON list of status for each ISIN | "[{\"ISIN\":\"INE263A01024\",\"Qty\":2,\"Status\":\"Success\",\"StatusCode\":\"\",\"RefNo\":\"NS301604L66\",\"ISINName\":\"BHARAT+ELECTRONICS+LTD\",\"ErrorDesc\":null}]", |
| BrokerOrdrNo | string | Internal broker order number | "AABBVVN123545OP" |
| ReqID | string | Request ID | GER123 |
| UserId | string | Unique Client code (UCC) | "UCC12345" |
| GroupId | string | Group ID | HO |
The final JSON response is posted to your webhook URL, which should be configured in web.config