Module · Rights
The obligation is not to have a form. It is to answer, inside a period, a person whose identity you verified, and to be able to show afterwards what you did and when. Most organisations can do the first and fail the third, because the request arrived by email and the answer went out by email.
Section 11 gives a data principal the right to a summary of their personal data and of the processing activities undertaken, the identities of other fiduciaries and processors with whom it has been shared along with a description of what was shared, and any other information prescribed. Around it sit the right in §12 to correction, completion, updating and erasure, the right in §14 to nominate another individual to exercise these rights in the event of death or incapacity, and the separate right to a readily available means of grievance redressal.
The module accepts exactly five request types, which map onto that: access, correction, erasure, nominee and grievance. It does not offer a portability request, because the Act does not confer one and offering a right your statute does not grant creates an expectation you then have to manage.
There is a public page per organisation, reachable by slug, that does not require an account. A request needs the organisation, the type, an identifier — email, phone, a customer reference or an external reference — and a description, and it accepts a proof file if the person has one. A mistyped slug returns a did-you-mean rather than a dead end, and a hidden field catches the bots that fill everything.
Three other intake routes write into the same store. The consent widget carries a rights tab, where a person who has already verified against the widget is not asked to verify twice. An authenticated API lets a system that has already identified its customer file on their behalf. And an operator can log a request that arrived some other way — by post, over the phone, in a shop — which matters because the obligation attaches to the request, not to the channel it used.
Acting on an unverified erasure request is worse than being slow. Verification is a six-digit code sent to the identifier the person supplied — email if they gave an email, SMS if they gave a phone — valid for fifteen minutes, with five verify attempts per code, at most ten codes in any rolling twenty-four hours and a cooldown between sends. Codes are stored hashed; the raw value is never written down.
Around that sit the controls that stop the portal becoming an attack surface: a cap on requests per contact per hour and per source address per hour, automatic deletion of requests that were never verified after a day, and masked identifiers in every public view so a tracking link does not leak someone else's email. The clock does not start at submission — it starts when verification succeeds, because until then you do not know whose request it is.
Routing rules are evaluated in priority order and the first match wins. A rule can test the request type, the domain of the identifier, the identifier type, the grievance category, or text in the description, using equality, inequality, contains or set membership, and assigns the request to a named owner. A rule with no conditions matches everything, which is the way to express a default owner. If nothing matches, the request stays unassigned and visible rather than being routed somewhere plausible.
The response window defaults to thirty days from verification and is configurable per tenant anywhere from one to a hundred and twenty. An extension is possible, must be to a date after the current deadline and within the configured maximum, requires a written reason, and sends the principal a notice saying so. The inbox has one definition of overdue — the extension date if there is one, otherwise the deadline, and never for a closed request — so the number on the tile and the rows behind it always agree.
Be clear about what runs by itself and what does not. The clock is computed and displayed, tasks are created, and the principal is emailed at each transition. There is no background job that chases an owner as a deadline approaches. Escalation here is something a person does, prompted by a dashboard, not something the system does at three in the morning.
On verification, an access, correction or erasure request fans out into one task per party that is recorded as having actually received that person's data — export, update or delete respectively — each with its own deadline, a place to record what was discovered and how many records, and a slot for evidence. The parent request auto-fulfils when every task that was not skipped is complete. The principal's tracking page shows the party, the action and its status, and hides the internal notes.
The important behaviour is the refusal. If the platform cannot resolve which processors hold this person's data, it does not erase anything and does not mark the request done. It refuses, says why, and only an accountable role — compliance administrator, organisation administrator or platform administrator — can override by acknowledging that processors will be notified by hand. A request filed by a nominee waits until someone confirms the nominee's authority. These are deliberate stops, and they are the reason the timeline is worth showing to a regulator.
A refusal stores its reason on the request, writes a rejected event carrying that reason, and emails the principal a closure notice containing it. The operator interface offers a labelled taxonomy rather than a blank box — identity not verified, legally required to retain, a request without foundation, duplicate, not a data principal of this fiduciary, insufficient information to act — so the wording that reaches the person is professional and consistent.
The reason is not optional, and not only in the interface. A refusal whose reason is blank is rejected at the API on every request type, so a direct integration cannot close a request as refused without one either. What the platform cannot check is whether the reason is a good one; that is the judgement below.
Almost none of these are software problems, which is why they survive a platform rollout unless someone goes looking.
It does not find the person's data for you. It resolves which parties received data and creates the task; discovering what sits in a given system, and deleting it there, is work the owning system does. The platform records the outcome and the evidence.
It does not decide whether a request should be refused. Whether retention is legally required, or whether a request has any foundation, is a judgement. The platform captures the decision, the reason and the timestamp.
It does not chase people. There is no scheduler sending reminders, marking requests late by itself or escalating up a hierarchy on a timer. Deadlines are computed and surfaced; acting on them is a human responsibility with a dashboard behind it.
It does not offer data portability, because §11 does not confer it. If you offer portability for commercial reasons, that is a product decision, not a statutory one.
At successful identity verification, not at submission. Until the one-time code is verified you do not know whose request it is, and an unverified request is deleted automatically after a day. The deadline is then the verification time plus your configured window, which defaults to thirty days.
Yes, once the request is still open. The new date has to be later than the current deadline and inside the configured maximum extension, a written reason is required, and the principal is emailed a notice of the extension. The inbox treats the extended date as the deadline for overdue purposes.
The identifier has to be verified with a six-digit code sent to it, valid fifteen minutes, with limited attempts and issuances, per-contact and per-address rate limits, and hashed storage of the code. Identifiers are masked in public views, and a nominee-filed request will not complete until a person confirms the nominee's authority.
It creates one tracked task per party recorded as having received that person's data, with an action, a deadline and a place to attach evidence. If the platform cannot resolve which processors hold the data it refuses to erase anything rather than reporting success, and only an accountable role can override to notify processors by hand.
Yes — nomination is one of the five accepted request types, and the Act provides for it. The request is accepted and tracked, but it is held at fulfilment until staff confirm the nominee's authority, and the confirmation is recorded on the timeline alongside who made it.
The public request page is the part your customers judge you on, and the part most organisations never look at. We will file a request against a demo organisation with you and show the clock starting at verification rather than at submission.
Book a rights request walkthrough →Priya Gupta — Priya writes on compliance operations at ProtectComply, including data principal rights, grievance handling and sector-specific programmes.