Data Processing Agreement
Last updated: 2026-05-07
CalProof (Crocker Digital Ltd) — customer-facing DPA for the customer-uploads-personal-data flow
This Data Processing Agreement ("DPA") is entered into between:
(1) Crocker Digital Ltd, a company incorporated in England and Wales with company number 17008789, registered office at 71-75 Shelton Street, Covent Garden, London, WC2H 9JQ ("Processor", also "CalProof", "we"); and
(2) the legal entity identified in the Customer's CalProof account (the "Organisation" record in the product), acting as controller of the personal data it uploads or causes to be processed through the service ("Controller", "Customer", "you").
This DPA forms part of and is incorporated into the CalProof Terms of Service at https://calproof.co.uk/legal/terms-of-service/ (the "Agreement"). In the event of conflict between this DPA and the Agreement in relation to the processing of Customer Personal Data, this DPA prevails.
This DPA is offered to any business Customer — typically a calibration laboratory, an in-house QA / metrology function, or a calibration service business — that processes personal data through the service. It takes effect automatically: this DPA is incorporated into the Agreement as a matter of contract when the Customer creates an Organisation in CalProof, and applies whenever the Customer uploads or causes to be processed personal data relating to people who are not users of the service (for example, named technicians, calibration-house contacts, instrument owners, named auditors). The Customer does not need to sign or tick a box separately for this DPA to apply — automatic incorporation into the Agreement is how we meet UK GDPR Article 28 for every business Customer. A printable copy is available at /legal/dpa/. If your procurement process requires a bilateral signed copy, contact us at support@calproof.co.uk; bilateral countersignature is not a condition of the DPA taking effect.
1. Interpretation
1.1 In this DPA, the following expressions have the meanings set out below. Terms not defined here have the meaning given in the Agreement, and capitalised terms not defined in either have the meaning given in UK Data Protection Law.
"Affiliate" — any entity controlling, controlled by, or under common control with a party.
"Applicable Data Protection Law" or "UK Data Protection Law" — the UK General Data Protection Regulation (as retained and amended by The Data Protection, Privacy and Electronic Communications (Amendments etc) (EU Exit) Regulations 2019), the Data Protection Act 2018, the Privacy and Electronic Communications (EC Directive) Regulations 2003, and any successor legislation, together with any guidance or code of practice issued by the Information Commissioner.
"Customer Personal Data" — personal data provided by or on behalf of the Customer to the Processor for processing under the Agreement. This includes data the Customer uploads or enters, data entered by individuals to whom the Customer has granted Organisation access (org-members), and metadata generated by the service in the course of processing that data.
"Data Subject", "Personal Data", "Personal Data Breach", "Processing", "Controller", "Processor", and "Special Category Data" — as defined in UK Data Protection Law.
"Restricted Transfer" — a transfer of Personal Data from the UK to a country which is not the subject of UK adequacy regulations.
"Schedule 1" — the processing description set out at the end of this DPA.
"Schedule 2" — the technical and organisational measures set out at the end of this DPA.
"Schedule 3" — the list of approved sub-processors referred to in clause 5.
"Standard Contractual Clauses" — the International Data Transfer Agreement issued by the Information Commissioner under section 119A of the Data Protection Act 2018 on 2 February 2022, or the International Data Transfer Addendum to the EU Standard Contractual Clauses issued on the same date, in each case as they may be updated from time to time.
1.2 In this DPA, references to "writing" include email.
2. Subject matter, nature, purpose, duration
2.1 The Processor processes Customer Personal Data only to provide the CalProof service in accordance with the Agreement and this DPA, and only on the Customer's documented instructions.
2.2 The full description of processing — subject matter, duration, nature, purpose, categories of Data Subjects, and types of Personal Data — is set out in Schedule 1.
2.3 This DPA takes effect on the day the Customer first uses the service and continues until the later of (a) termination of the Agreement, and (b) the Processor completing the deletion or return of Customer Personal Data in accordance with clause 9.
3. Roles of the parties
3.1 In respect of Customer Personal Data uploaded or caused to be processed by the Customer, the Customer is the Controller and the Processor is the Processor. This captures, for example, named technicians performing or witnessing calibrations, named calibration-house contacts on third-party certificates, instrument-owner contacts, named auditors / inspectors appearing in audit-trail entries, and the contents of customer-uploaded calibration documents.
3.2 In respect of the account data of the Customer's own users (names, email addresses, roles, passwords, audit-log entries, billing contact details, and Organisation-level configuration), the Processor is an independent Controller. Processing of that data is described in the Processor's Privacy Policy at https://calproof.co.uk/legal/privacy-policy/.
3.3 Nothing in this DPA creates a joint-controllership arrangement under Article 26 of the UK GDPR in respect of Customer Personal Data.
4. Processor obligations (UK GDPR Article 28(3))
The Processor shall:
4.1 Instructions. Process Customer Personal Data only on the documented instructions of the Customer, including with regard to Restricted Transfers. The Customer's instructions are those contained in (a) the Agreement, (b) this DPA, (c) the configuration options the Customer sets in-product, and (d) any further written instruction notified to support@calproof.co.uk. If the Processor considers that an instruction would infringe Applicable Data Protection Law, it shall notify the Customer without undue delay.
4.2 Confidentiality. Ensure that persons authorised to process Customer Personal Data have committed themselves to confidentiality or are under an appropriate statutory duty of confidentiality.
4.3 Security (Article 32). Implement appropriate technical and organisational measures to ensure a level of security appropriate to the risk. The measures in force at the date of this DPA are set out in Schedule 2. The Processor may update Schedule 2 from time to time provided the level of protection is not materially diminished.
4.4 Sub-processors. Engage sub-processors only in accordance with clause 5.
4.5 Data-subject rights assistance (Articles 12–23). Taking into account the nature of the processing, assist the Customer by appropriate technical and organisational measures, insofar as possible, to respond to requests from Data Subjects exercising their rights. In particular:
- The service provides Customer-operated data export and deletion through the following in-product routes: workspace-data export at
/app/export/(org-owner ZIP bundle of equipment register, calibrations, OOT events, certificate PDFs, audit log, and audit-report PDFs), personal-data export at/app/account/export/(signed-in user JSON archive of profile, account-state metadata, org memberships), personal auth-account deletion at/app/account/delete/, and subscription cancellation (which triggers the 30-day grace + day-31 hard delete of organisation data) at/app/settings/billing/. In-product correction of profile fields is available to every org-member. - For Data Subject requests that cannot be fulfilled through the self-serve tooling (e.g. requests made by named technicians, instrument owners, or third parties whose names appear in customer-uploaded documents), the Customer is responsible for responding to the Data Subject. The Processor will supply reasonably-necessary data or information on request to enable that response.
4.6 Article 32–36 assistance. Assist the Customer, taking into account the nature of the processing and the information available to the Processor, in ensuring compliance with the Customer's obligations under Articles 32 to 36 of the UK GDPR (security, breach notification, data protection impact assessments, prior consultation).
4.7 Return or deletion (clause 9). At the end of the provision of services, return or delete Customer Personal Data in accordance with clause 9.
4.8 Audit information (clause 10). Make available to the Customer all information necessary to demonstrate compliance with this clause 4, and allow for and contribute to audits in accordance with clause 10.
4.9 Records. Maintain records of all categories of processing activities carried out on behalf of the Customer as required by Article 30(2) of the UK GDPR.
5. Sub-processors
5.1 The Customer grants the Processor a general authorisation to engage the sub-processors listed in Schedule 3 (and those currently listed at https://calproof.co.uk/legal/subprocessors/, which forms part of Schedule 3 by reference), for the purposes set out against each entry.
5.2 The Processor shall:
(a) impose on each sub-processor, by written contract, data-protection obligations substantially equivalent to those imposed on the Processor under this DPA;
(b) remain liable to the Customer for the performance of each sub-processor's obligations;
(c) give at least 30 days' prior notice of the addition or replacement of a sub-processor, by email to the Customer's registered billing contact and by updating the public subprocessor list.
5.3 If the Customer has a reasonable, data-protection-based objection to a new sub-processor, it shall notify the Processor within 14 days of the notice. The parties shall work in good faith to resolve the objection. If no resolution is agreed within a further 30 days, the Customer may terminate the Agreement without penalty and the Processor shall refund any pre-paid but unused portion of the subscription.
6. International transfers
6.1 The Processor shall not transfer Customer Personal Data to a country outside the UK unless one of the following applies:
(a) the country is the subject of UK adequacy regulations; (b) the transfer is governed by the Standard Contractual Clauses; (c) another transfer mechanism permitted by Applicable Data Protection Law is in place.
6.2 Where the Processor relies on the Standard Contractual Clauses for a Restricted Transfer to a sub-processor, the Processor is authorised by the Customer to enter into those clauses on the Customer's behalf as exporter. The Customer acknowledges that the current Restricted Transfers supporting the service are set out in Schedule 3.
6.3 The Processor has completed a Transfer Risk Assessment for each Restricted Transfer it relies upon. A summary of those TRAs is available to the Customer on reasonable request.
7. Personal data breach
7.1 The Processor shall notify the Customer in writing without undue delay, and in any event within 48 hours, after becoming aware of a Personal Data Breach affecting Customer Personal Data.
7.2 The notification shall include, to the extent known at the time:
(a) the nature of the Personal Data Breach, including the categories and approximate number of Data Subjects and Personal Data records concerned; (b) the likely consequences of the Personal Data Breach; (c) the measures taken or proposed to be taken to address the Personal Data Breach and to mitigate its possible adverse effects; (d) the name and contact details of the Processor's point of contact for further information.
7.3 The Processor shall cooperate with the Customer in investigating, mitigating, and remediating the Personal Data Breach, including providing reasonable assistance with any notification to the Information Commissioner (Article 33) and to affected Data Subjects (Article 34).
7.4 For the avoidance of doubt, notification of a Personal Data Breach is not an admission of fault or liability by the Processor.
8. Data subject requests
8.1 If the Processor receives a request directly from a Data Subject to exercise any right under UK Data Protection Law in respect of Customer Personal Data, the Processor shall, without undue delay, forward the request to the Customer and shall not respond to the Data Subject directly except (a) to confirm receipt and forward, or (b) as instructed by the Customer or required by law.
8.2 Where the request is made by a Data Subject whose personal data is processed by the Processor as Controller under clause 3.2 (e.g. the Customer's own org-member exercising rights in relation to their account record), the Processor shall handle the request directly as Controller.
9. Return and deletion
9.1 On termination or expiry of the Agreement, the Processor shall, at the Customer's choice expressed in writing within 30 days of termination, delete or return to the Customer all Customer Personal Data, and delete existing copies, except to the extent that the Processor is required to retain a copy by applicable law.
9.2 If the Customer does not make a choice within the 30-day window, the Processor shall default to deletion in accordance with the Data Retention and Deletion policy at https://calproof.co.uk/legal/retention-and-deletion/.
9.3 Deletion is deemed complete when the data is no longer accessible in the Processor's production environment and ordinary backup rotation has expired that copy, which shall be no later than 90 days from the date of the deletion instruction (or the default date under 9.2).
9.4 The Processor may retain de-identified, aggregated, or anonymised data for product-analytics purposes where such data no longer constitutes Personal Data.
9.5 Audit-log carve-out. Notwithstanding clauses 9.1 to 9.3, each entry in the in-product audit log (Schedule 2 §8) is retained for 7 years from the date it was recorded to evidence continuity of compliance for ISO 9001 / ISO/IEC 17025 audit cycles and to meet the floor set by section 5 of the UK Limitation Act 1980. On account hard-delete, the actor_id column is nulled so that the trail remains without the user reference. The audit log holds only timestamps, action types, and affected-row identifiers — no calibration content, certificate content, or record bodies. The Customer may request earlier deletion of the audit log by writing to privacy@calproof.co.uk; the Processor will honour the request unless a regulatory or contractual hold applies.
10. Audit
10.1 The Processor shall make available to the Customer, on reasonable request and not more than once per 12-month period, the following information in order to demonstrate compliance with this DPA:
(a) the Processor's current Technical and Organisational Measures (Schedule 2); (b) the Processor's Records of Processing Activities to the extent relevant to the Customer; (c) the most recent independent audit reports or security certifications held by the Processor or any of its sub-processors (for example, SOC 2 reports or ISO 27001 certifications, as held by material infrastructure providers including Stripe, Supabase, and the AWS infrastructure underlying Supabase); (d) a summary of any material Personal Data Breach affecting Customer Personal Data in the preceding 12 months.
10.2 If the information provided under 10.1 does not reasonably address the Customer's concern, the Customer may, on 30 days' written notice and at the Customer's cost, conduct an on-site audit of the Processor's facilities and processing operations relevant to this DPA. The Customer shall appoint an independent auditor who is not a competitor of the Processor, and the auditor shall enter into reasonable confidentiality undertakings.
10.3 The parties shall agree the audit scope, timing, and methodology in good faith. Audits shall be conducted during business hours and shall not unreasonably interfere with the Processor's operations.
10.4 If the Processor is required to investigate or respond to an audit that does not identify a material compliance failure, the Customer shall reimburse the Processor's reasonable costs at the Processor's then-current professional-services rate.
11. Liability
11.1 The liability of each party arising from or in connection with this DPA is governed by the limitation of liability provisions of the Agreement. For the avoidance of doubt, the limitation-of-liability cap in the Agreement is a single cap that applies to the Agreement and this DPA together, and the Processor's total aggregate liability shall not exceed that cap.
11.2 Nothing in this DPA excludes or limits either party's liability for (a) death or personal injury caused by negligence, (b) fraud or fraudulent misrepresentation, or (c) any other liability that cannot be limited or excluded under applicable law.
11.3 As between the parties, the Customer shall remain responsible for ensuring that it has a lawful basis for the processing it instructs the Processor to carry out, including collecting any consents or providing any notices required of the Customer as Controller. The Customer shall indemnify the Processor against any claim, loss, or regulatory action arising from the Customer's failure to do so, except to the extent caused or materially contributed to by the Processor.
12. General
12.1 Order of precedence. This DPA prevails over any conflicting term of the Agreement in respect of processing of Customer Personal Data.
12.2 Variations. The Processor may amend this DPA on at least 30 days' notice to reflect changes in Applicable Data Protection Law or to the service. If the amendment materially reduces the Customer's protections, the Customer may terminate the Agreement for convenience on notice given within the 30-day window, and the Processor shall refund any pre-paid but unused subscription fees.
12.3 Governing law and jurisdiction. This DPA is governed by the laws of England and Wales. The parties submit to the exclusive jurisdiction of the courts of England and Wales.
12.4 Severability. If any provision of this DPA is held to be invalid or unenforceable, the remaining provisions continue in full force and effect.
12.5 Notices. Notices to the Processor shall be sent to privacy@calproof.co.uk and (for notices of a legal nature) copied to the Processor's registered office. Notices to the Customer shall be sent to the registered billing contact on the Customer's account.
12.6 Entire agreement. This DPA, together with the Agreement, constitutes the entire agreement between the parties in respect of processing of Customer Personal Data.
Schedule 1 — Processing description (UK GDPR Art 28(3))
| Element | Detail |
|---|---|
| Subject matter | Provision of the CalProof calibration-management service to the Customer. |
| Duration | From the date this DPA takes effect until the return or deletion of Customer Personal Data under clause 9. |
| Nature of processing | Storing, organising, retrieving, adapting, structuring, analysing (calibration scheduling, certificate completeness, measurement-uncertainty calculation), transmitting, erasing personal data. |
| Purpose | (a) tracking calibration schedules and due-dates against the Customer's instrument register; (b) storing calibration certificates and supporting evidence; (c) generating internal calibration records and audit trails; (d) supporting the Customer's ISO 9001 / ISO 17025 / UKAS-compliance workflows. |
| Categories of Data Subjects | (a) named technicians and engineers performing or witnessing calibrations; (b) calibration-house staff / external calibration laboratory contacts named in third-party certificates; (c) instrument owners and end-users named in customer documents; (d) named auditors / inspectors appearing in audit trails or correspondence. |
| Types of Personal Data | Names, contact details (email, telephone), technician qualifications and certifications, instrument-owner contact details, calibration dates, equipment serial numbers, calibration certificate contents, calibration result values and uncertainty figures, ISO 9001 / 17025 audit responses, named correspondents in uploaded supporting documents. |
| Special Category Data | Not actively solicited. Customers are instructed in the Acceptable Use Policy not to upload special-category data beyond what is strictly necessary as compliance evidence. Where special-category data appears incidentally in uploaded correspondence, the Customer must identify its lawful basis under Article 9 of the UK GDPR. |
| Children's data | Not expected. CalProof is a B2B service; no consumer / child-facing flows. |
| Frequency of processing | Continuous for the duration of the subscription. |
Schedule 2 — Technical and organisational measures
The Processor implements, at minimum, the following measures as at the date of this DPA:
- Encryption in transit. HTTPS enforced on all public endpoints. HSTS preload. TLS 1.2 minimum.
- Encryption at rest. Postgres volumes encrypted at rest (AES-256) by the Supabase-managed infrastructure. Storage objects encrypted at rest by the same.
- Access control. Row-level security policies on every table that stores Customer Personal Data. Org-member access is gated through the org_members membership lookup. Service-role calls are confined to the server runtime and never exposed to the browser. Sensitive columns (
is_admin,is_super_admin) are isolated on a separateaccount_statetable with deny-client-writes RLS; only the service role can update them. - Authentication. Supabase Auth with email + password. Password reset requires a signed link. Session cookies are first-party.
- Personnel. The Processor's personnel with production access are bound by written confidentiality obligations. Access is granted on the principle of least privilege and reviewed quarterly.
- Sub-processor management. Sub-processors are selected and engaged in accordance with clause 5. Material infrastructure providers (Stripe, Supabase, AWS) hold SOC 2 Type II reports or equivalent independent assurance. Other providers' assurance documentation is referenced in their respective DPAs linked from /legal/sub-processors/.
- Backups. Supabase's automated daily backups with point-in-time recovery (minimum 7 days on paid tiers). Backup media is encrypted.
- Logging. An in-product audit log captures security-relevant events (sign-in, data export, deletion, admin-state change). The audit log is append-only — a database trigger blocks UPDATE and DELETE so a compromised admin cannot rewrite history. Each audit-log entry is retained for 7 years from the date it was recorded in line with the Data Retention and Deletion policy at /legal/retention-and-deletion/; this period is the carve-out described in clause 9.5 below and is required to evidence continuity of compliance for ISO 9001 / ISO/IEC 17025 audit cycles, and meets the floor set by section 5 of the UK Limitation Act 1980. On account hard-delete the
actor_idcolumn is nulled so the trail remains without the user reference. PII is stripped from audit-log entries themselves; only identifiers and action metadata are retained. - Vulnerability management. Dependencies are tracked; security patches applied within 30 days of vendor release for high-severity CVEs, or sooner if actively exploited. Error monitoring via Sentry with request-body stripping.
- Incident response. The Processor operates a written incident-response runbook and notifies affected Customers under clause 7. A post-incident review is conducted for every P0/P1 incident.
- Deletion. Account / Organisation deletion follows the published Data Retention and Deletion policy — soft-delete window, then hard-delete by a scheduled sweep. Customer-triggered record-level soft-deletes follow the same cycle.
- Physical security. Delegated to the hosting sub-processors (Supabase, Netlify). The Processor does not operate its own data-centre.
Schedule 3 — Approved sub-processors
The current sub-processor list is maintained at https://calproof.co.uk/legal/subprocessors/ — single source of truth. The Processor's commitment to 30-day change notice is set out in clause 5.2(c).
As at the date of this DPA the sub-processors are:
| Sub-processor | Legal entity | Purpose | Region | Transfer mechanism |
|---|---|---|---|---|
| Supabase | Supabase Inc. (US) / Supabase Ltd (UK) | Database, auth, file storage (calibration certificates) | UK (London) — eu-west-2 |
Supabase processes in the UK region for this account; no Restricted Transfer triggered in ordinary operation. SCCs held in the Supabase DPA as a fallback. |
| Stripe | Stripe Payments Europe Ltd (Ireland — EU contracting entity) | Payments, subscription billing | EU + US for group support operations | UK Addendum to EU SCCs in the Stripe DPA. |
| Resend | Plus Five Five, Inc. (US) | Transactional + lifecycle email | EU + US | UK IDTA / UK Addendum. |
| Microsoft 365 | Microsoft Ireland Operations Limited | Inbound support email at support@calproof.co.uk |
EU | No Restricted Transfer in ordinary operation. |
| Sentry | Functional Software, Inc. (US) | Error monitoring. Request bodies stripped before reporting. | EU (de.sentry.io) | EU region selected; SCCs as fallback. |
| Cloudflare | Cloudflare, Inc. (US) / Cloudflare Limited (UK) | Turnstile bot challenge on signup | Global edge | UK IDTA / UK Addendum in the Cloudflare customer DPA. |
| Netlify | Netlify, Inc. (US) | Hosting, edge functions, CDN | US with EU edge | UK IDTA / UK Addendum. |
| GoatCounter | Martin Tournoij (sole trader) | Cookieless analytics — does not ordinarily process Customer Personal Data (aggregated only) | EU | Not a Restricted Transfer. |
| Upstash | Upstash, Inc. (US) | Rate-limiting cache (Redis) — hashed-identifier counters for abuse prevention. No application data passes through Upstash. | EU (Ireland) — eu-west-1 |
UK IDTA / UK Addendum in the Upstash DPA. |
Acceptance by the Customer. This DPA is incorporated into the Agreement automatically and applies to every business Customer without a separate acceptance step. For the avoidance of doubt, the Customer is deemed to have accepted this DPA by (a) creating a CalProof Organisation (the Agreement at https://calproof.co.uk/legal/terms-of-service/ incorporates this DPA by reference), or (b) continuing to use the CalProof service after the date shown below.
If your procurement process requires a bilateral signed copy, contact us at support@calproof.co.uk.
Date: 7 May 2026