DPDP KAVANCH FOR CAS
AI & Audit

DPDP KAVANCH FOR CAS

Author : CA Siddharth Agrawal

Watch on Youtube





ℹ️ Key compliance references: •Section 5 read with Rule 3— Notice before consent •Section 6 — Consent mechanics •Section 9 — Minor data principals •Section 13 — Data Principal rights •Section 16 — Cross-border / NRI data transfer


2. System Requirements


Operating SystemWindows 10 / 11 (64-bit recommended)
Python VersionPython 3.8 or higher
Required Librariestkinter (bundled with Python), openpyxl (auto-installed on first Excel import)
Internet ConnectionRequired for Email (SMTP) dispatch and WhatsApp (web.whatsapp.com)
Gmail AccountAn App Password is required if using Gmail SMTP (standard password will not work)
Disk SpaceMinimal — client and log data are stored in ~/DPDP_Tool_Data/


3. Installation & First Launch


3.1 Running the Application

DPDP Kavach is distributed as a single .pyw file (DPDP_Kavach.pyw). No installer is required.


  1. Ensure Python 3.8+ is installed on your Windows PC.
  2. Double-click DPDP_Kavach.pyw to launch the application (no console window will appear).
  3. On first launch, a data folder is automatically created at: C:\Users\<YourName>\DPDP_Tool_Data\
  4. Go to the Settings tab and fill in your CA details before anything else.


3.2 Gmail App Password Setup

If you intend to send notices via email using a Gmail account, you must generate an App Password:


  1. Log in to your Google Account and go to Security settings.
  2. Enable 2-Step Verification if not already active.
  3. Navigate to Security → App Passwords, and generate a new password for “Mail”.
  4. Copy the 16-character App Password and paste it into the App Password field in the Settings tab of DPDP Kavach.


4. Feature Guide — Tab by Tab


Tab 1 —⚙ Settings


📋CA DetailsEnter your name, email address, phone number, and optional website. These appear on every notice as the Data Fiduciary identity.
📧SMTP Email SettingsConfigure your outgoing mail server. Default values are set for Gmail (smtp.gmail.com, port 587). Paste your App Password here.
🔌Test Email ConnectionClick this button to verify your SMTP credentials before sending real notices. A success or error message will appear immediately.
📂Data StorageYour settings and client database are stored locally in ~/DPDP_Tool_Data/. No data is sent to the cloud.


Tab 2 — 👥 Client Management


This tab is your central address book. Every client you add here becomes available in the Send Notices tab.


Adding Clients Manually

  1. Click Add Client to open the client entry dialog.
  2. Required fields: Name, Email, Phone (10-digit Indian mobile number).
  3. Set Minor to Y if the data principal is below 18 years old. A Parent Email field then becomes mandatory.
  4. Set NRI to Y if the client is a Non-Resident Indian. Section 16 cross-border transfer disclosures will be appended automatically.


Importing Clients from Excel or CSV

You can bulk-import clients by clicking Import from Excel / CSV. The expected column order is:


Column AClient Name (required)
Column BClient Email (required)
Column CMobile Number (10 digits)
Column DMinor (Y / N or TRUE / FALSE)
Column ENRI (Y / N or TRUE / FALSE)
Column FParent Email (required if Minor = Y)
Column GParent Mobile Number


⚠️ Note on Excel Minor / NRI columns:The tool correctly handles booleans, integers, and text from Excel.Values TRUE, 1, Y, YES, YES (any case) are all treated as Y.Values FALSE, 0, N, NO, or a blank cell are all treated as N.


Editing & Deleting Clients

  1. Double-click any row or select it and click Edit Client to modify details.
  2. Select one or more rows and click Delete Client to remove them (with confirmation).




Tab 3 — 📤 Send Notices


This is the core operational tab. Select one or more clients, choose a document type and channel, then dispatch notices individually or in bulk.


Step-by-Step: Sending a Notice

  1. Select clients — tick the checkboxes next to the clients you want to notify. Use Select All for bulk sends.
  2. Choose Document Type — IT (Income Tax), GST, or Both.
  3. Choose Channel — Email or WhatsApp.
  4. Choose Language — English or Hindi (for WhatsApp notices).
  5. Preview — click Preview Notice to review the generated text before sending.
  6. Send — click Send Notice(s). Each dispatch is logged automatically in the Consent Log.


Document TypeDocuments Covered
ITSalary Slips, Form 26AS, AIS, TIS, Bank Statement, Demat P&L, P&L Statement, Balance Sheet, Capital Gain Reports
GSTPurchase Register, Sales Register, Invoices, GSTR 2A, Bank Statement, E-Way Bills, Common Credit Register
BothAll IT documents plus all GST documents in a single combined notice


Tab 4 — 👁 Notice Preview


Before dispatching, use this tab to read the full formatted notice text. You can save any preview to a .txt file using the Save Notice button. This is useful for record-keeping or manual delivery.


Tab 5 — 📜 Consent Log


Every notice sent by the tool is automatically timestamped and recorded here. The log forms the audit trail required under the DPDP Act. Each entry captures:


  1. Date and time of dispatch
  2. Client name
  3. Channel used (Email or WhatsApp)
  4. Target address or phone number
  5. Document type (IT / GST / Both)
  6. Delivery status
  7. Whether the client is a Minor and/or NRI


Log Actions

🔄 RefreshReload the log from disk to see the latest entries.
📋 Export LogSave the entire log as a CSV file for archiving or sharing.
🗑 Delete Selected EntriesRemove one or more specific entries (select rows first). Right-click also works.
🗑 Clear All LogPermanently delete all log entries. Requires confirmation.


5. Notice Types Generated


5.1 Standard Notice (English or Hindi)

A formal, multi-section notice sent via email. Includes the full Data Fiduciary identity, itemised list of personal data, specified purpose, Data Processor disclosure (Claude/Anthropic), consent validity period, and a complete enumeration of Data Principal rights.


5.2 WhatsApp Notice (English or Hindi)

A concise, emoji-formatted notice designed for WhatsApp. Covers all mandatory elements of Section 5 and Rule 3, but in a mobile-friendly layout. Opens in web.whatsapp.com pre-filled with the message text.


5.3 Minor Notice (Section 9)

When a client is flagged as a Minor, the notice is automatically addressed to the parent or lawful guardian. A prominent disclosure is inserted stating that verifiable parental consent is required under Section 9 before any data of the minor can be processed.


5.4 NRI Notice (Section 16)

When a client is flagged as an NRI, a dedicated Section 16 block is appended to both email and WhatsApp notices. This block covers:


  1. Cross-border data transfer disclosure
  2. Applicable Government restrictions and compliance undertaking
  3. Safeguards in place for international transfers
  4. Confirmation that all Data Principal rights remain enforceable
  5. Request for the client’s current country of residence




6. Data Storage & Privacy


Storage locationAll data is stored locally on your PC at: C:\Users\<Name>\DPDP_Tool_Data\
dpdp_tool_config.jsonYour CA profile and SMTP settings
dpdp_clients.jsonYour client database
dpdp_notice_log.jsonThe full consent audit log
No cloud syncNo data is transmitted to any server by the tool itself
SMTP credentialsStored locally in plain JSON. Keep the config file secure.


 Security tip: The SMTP App Password is stored in dpdp_tool_config.json in plain text.Ensure only authorised users have read access to the DPDP_Tool_Data folder.Restrict folder permissions via Windows File Explorer → Properties → Security.


7. Troubleshooting


IssueSolution
Email connection failsVerify that 2FA is enabled on your Google account and that you are using a 16-character App Password, not your regular password.
Excel import failsThe tool will attempt to auto-install openpyxl. If it fails, run: pip install openpyxl from a command prompt, then retry.
Minor column reads incorrectlyEnsure the Minor / NRI columns contain Y, N, TRUE, FALSE, 1, or 0. Formatted text like “yes” (with spaces) is also accepted.
WhatsApp does not openCheck that your default browser is set and that web.whatsapp.com is accessible. You must be logged in to WhatsApp Web.
Application does not launchRight-click DPDP_Kavach.pyw and select “Edit with IDLE”, then press F5 to run. The console will display any Python errors.
Phone number rejectedEnter a 10-digit Indian mobile number (e.g. 9876543210) or include the country code +91 prefix. Spaces and hyphens are stripped automatically.



8. Version History


v1.2 (Current)NRI column added to Send Notices tab. Section 16 NRI-specific notice generation added. Individual log entry deletion. Edit Client feature (double-click or Edit button). Excel Minor/NRI column now correctly reads Y/N from bool/int/str.
v1.1Hindi language support for WhatsApp notices. Minor (Section 9) notice generation. Bulk import from Excel and CSV.
v1.0Initial release. Email and WhatsApp notice dispatch. Client management. Consent log with CSV export.


9. Legal Disclaimer


This tool is designed to assist Chartered Accountants in operationalising notice and consent workflowsunder the Digital Personal Data Protection Act, 2023. It does not constitute legal advice. CAs remainresponsible for ensuring that all notices are appropriate to their specific practice and clientcircumstances. The notices generated are templates that may need to be reviewed or adapted inconsultation with a data protection or legal professional where necessary.
The Data Processor disclosed in notices (Claude / Anthropic) is referenced as an example AI tool.Update the Data Processor section if a different tool is used in your practice.


DPDP Kavach for CAs |Version 1.2Compliant with Digital Personal Data Protection Act, 2023 & Rules