Popagain

Draft for solicitor review. Structured on UK GDPR Article 28. A solicitor must confirm the transfer mechanism for US sub-processors (clause 8), the breach timing (clause 9) and the audit clause (clause 11) before a health business signs. Not legal advice.

Data processing agreement

Last updated 13 October 2026. Version 0.1 (draft). Forms part of the terms of service.

1. Parties and roles

This agreement is between the business that has accepted the terms of service (the "Controller") and [Company name] trading as Popagain (the "Processor"). The Controller determines the purposes and means of processing its customers' personal data; the Processor processes that data only on the Controller's documented instructions as set out here and in the service's settings.

2. Definitions

"Customer Data" means personal data about the Controller's customers that the Controller or its systems give to the Processor, and data derived from it in the course of the service. "UK GDPR", "personal data", "processing", "controller", "processor", "sub-processor" and "personal data breach" have the meanings in the Data Protection Act 2018 and the UK GDPR.

3. Details of processing (Annex 1)

Subject matterAsking the Controller's customers for a public review after a visit and handling their replies.
DurationThe term of the terms of service plus the retention period in Annex 1 of the privacy notice (12 months, or 90 days for health settings), after which Customer Data is deleted or anonymised.
Nature and purposeReceiving visit notifications; scheduling and sending one request and one reminder by SMS or email; recording link opens; receiving and classifying replies; drafting responses for the Controller's staff to approve; maintaining an opt-out list; producing statistics and a monthly summary for the Controller.
Categories of data subjectThe Controller's customers (for health settings: patients).
Categories of personal dataFirst name; mobile number and/or email address; time the visit finished; for non-health settings only, a short label for the type of visit; the text of any reply the customer sends; whether and when the link was opened; a keyed one-way hash of the contact detail.
Special-category dataNot intentionally processed. For health settings the fact that a person attended may itself be health data; the Processor stores no detail of the visit for such settings and applies the shorter retention period. The Controller must not send clinical or treatment details. A customer's free-text reply may contain anything the customer chooses to write; it is held for the retention period and then removed.
InstructionsThese terms, the data processing agreement, and the settings the Controller chooses on the dashboard (delay, reminder timing, quiet hours, wording and tone, review link, connections).

4. Processor's obligations

The Processor shall:

  1. process Customer Data only on the Controller's documented instructions, including transfers outside the UK, unless required by law, in which case it will tell the Controller first where the law allows;
  2. tell the Controller immediately if, in its opinion, an instruction infringes data protection law;
  3. ensure that people authorised to process Customer Data are bound by confidentiality;
  4. implement the technical and organisational measures in Annex 2 and keep them under review;
  5. engage sub-processors only under clause 7;
  6. assist the Controller, by appropriate technical and organisational measures, in responding to data subject rights requests (clause 10);
  7. assist the Controller with security, breach notification, data protection impact assessments and prior consultation, taking into account the nature of the processing and the information available to the Processor;
  8. at the end of the service, delete Customer Data in accordance with clause 12;
  9. make available the information needed to demonstrate compliance and allow audits under clause 11.

5. Controller's obligations

The Controller shall ensure it has a lawful basis for the processing, including for contacting its customers by SMS or email in accordance with the Privacy and Electronic Communications Regulations; provide only the Customer Data described in Annex 1; not send special-category data beyond what is inherent in a visit having happened; complete a data protection impact assessment before onboarding where the processing is a health setting; and give instructions that comply with the law.

6. What the Processor will never do with Customer Data

7. Sub-processors

The Controller gives general authorisation to the sub-processors listed in Annex 3. The Processor will give the Controller at least 30 days' notice by email of any intended addition or replacement, during which the Controller may object on reasonable data protection grounds; if the objection cannot be resolved the Controller may terminate the service and receive a pro-rata refund. The Processor imposes on each sub-processor data protection obligations no less protective than this agreement and remains liable for their performance.

8. International transfers

Customer Data is stored and processed in [the United Kingdom]. Three sub-processors (Twilio, Resend, Anthropic) are established in the United States and may process data there. Transfers to them are made under the UK International Data Transfer Addendum to the EU Standard Contractual Clauses, or an adequacy decision where one applies [solicitor to confirm the mechanism for each and the transfer risk assessment]. The data sent to each is limited to what Annex 3 states.

9. Personal data breach

The Processor will notify the Controller without undue delay, and in any case within 48 hours, after becoming aware of a personal data breach affecting Customer Data, by email to the alert address on the account, giving the information the Controller needs to meet its own notification duties, and will cooperate with the Controller's response. [Solicitor: confirm 48 hours is acceptable to health-sector controllers; some will ask for 24.]

10. Data subject rights

If a customer contacts the Processor directly, the Processor will pass the request to the Controller within two working days and will not respond substantively without instruction. The dashboard lets the Controller see and delete a customer's request record itself; for anything else the Processor will assist within five working days.

11. Audit

On written request, no more than once a year unless following a breach or at a regulator's requirement, the Processor will provide the Controller with the information reasonably needed to demonstrate compliance with Article 28, including this agreement, Annex 2, the current sub-processor list and a summary of its security testing. Where that is not sufficient, the Controller or an independent auditor bound by confidentiality may audit on 30 days' notice, during business hours, at the Controller's cost, without disturbing other controllers' data.

12. Deletion and return

During the service, Customer Data is removed on the retention schedule in Annex 1 of the privacy notice. Within 90 days of termination the Processor deletes all Customer Data, except (a) the keyed hash of opted-out contacts, which is retained to honour opt-outs and cannot identify a person on its own, and (b) anything the law requires it to keep. Before deletion the Controller may export its request records from the dashboard.

13. Liability and precedence

Liability under this agreement is subject to the limits in the terms of service. If this agreement conflicts with the terms of service on a data protection matter, this agreement prevails.

Annex 2: technical and organisational measures

As implemented at the date above. These describe what the software does, not aspirations.

Access controlNamed staff logins per business; passwords hashed with bcrypt; 12-character minimum; login locked after 10 failures per account or 30 per address in 15 minutes; a business can disable a login at any time and the person's sessions end immediately; sessions expire after 30 minutes idle. API keys are 256-bit random values stored only as SHA-256 hashes and revocable.
Tenant separationEvery database read of Customer Data is keyed by the business identifier; automated tests prove one business cannot read, change or trigger another's records.
EncryptionAll connections over TLS. Connected calendar links encrypted at rest with AES-256-GCM under a key held outside the database. Opt-out contacts stored as HMAC-SHA256 with a server-side key. Disk encryption at the hosting provider [confirm].
Data minimisationOnly first name, one contact detail, visit time and (non-health only) a visit label are accepted. Health settings store nothing about the visit. The model receives a first name and reply text, never contact details.
RetentionAutomated purge removes names, contact details, visit labels, reply text and draft text after 12 months (90 days for health settings); forwarded emails after 30 days; counts and dates retained.
Message controlsA single sending path enforces: at most one request and one reminder per visit (database-level uniqueness), opt-out check before every send, quiet hours, expiry of stale requests. Model output is checked by software for prohibited content (ratings, incentives, visit details) and replaced by a fixed template if it fails; drafted replies are never sent without a person.
Inbound verificationWebhooks from SMS, email and payment providers are rejected unless their cryptographic signature verifies.
Logging and auditApplication logs carry request and business identifiers only, never names, contact details or message text. Every staff action on the dashboard is recorded with the person and time.
Vulnerability managementDependencies reviewed on every change and scanned weekly; the runtime image scanned weekly; security headers including a content security policy; automated test suite of 150+ tests run on every change.
Backups and resilienceDaily encrypted database backups with [30]-day retention and a tested restore [confirm once hosting is live]. Single UK region.
Personnel[Number] people with production access, each under a confidentiality obligation; access reviewed [quarterly].

Annex 3: sub-processors

Sub-processorServiceCustomer Data it receivesLocation
[Hosting provider]Application and database hostingAll Customer DataUnited Kingdom
Twilio Inc.SMS delivery and repliesMobile number, message textUnited States
Resend Inc.Email delivery and repliesEmail address, message textUnited States
Anthropic PBCLanguage model: wording, reply classification, draft replies, theme summariesFirst name, reply text, forwarded report textUnited States

Stripe processes the Controller's own billing details and is a controller in its own right for payments; it receives no Customer Data.