Data Processing Agreement
In this document
Introduction
This agreement sets out how SorviAI handles the personal data our customers put into their workspaces. When a business stores its customers, suppliers and staff in SorviAI, the business decides what happens to that data and we hold it for them. Data protection law in the European Union and the United Kingdom requires that relationship to be written down, in the terms article 28 of the GDPR and of UK GDPR lists, and this is where it is written down.
It forms part of our Terms of Service, so it applies to every customer without a separate signature. Each section opens with a sentence of context, and the numbered paragraphs that follow are the terms. Where the platform does not yet support something, the agreement says so rather than promising it, because every statement in it, including the security measures in Annex 2, is a contractual commitment.
This is the Global version. It applies to every workspace that is not set up for the United Kingdom; workspaces set up for the United Kingdom are covered by the United Kingdom version. How we handle data we control ourselves is in our Privacy Policy.
Who this agreement is between
Two parties, two roles, one body of data.
- This agreement is between the organisation that has accepted our Terms of Service (“you”, the customer) and SORVI AI LTD, a company registered in England and Wales with company number 16927720, whose registered office is at Unit 5a Victoria Road, Stoke-On-Trent, England, ST4 2HS, United Kingdom (“SorviAI”, “we”, “us”).
- You are the controller of the personal data in your workspace: you decide why it is processed and how. That includes everything you and your authorised users enter, upload, sync or send through SorviAI.
- We are your processor. We process that data only to provide the service to you, on your documented instructions, and for no purpose of our own.
- This agreement does not apply to personal data we control ourselves: our own signup, account, billing, support, website, newsletter and careers data. Our Privacy Policy governs that data.
- We are registered with the Information Commission (the ICO) under number ZC254426. We are established in the United Kingdom.
How this agreement is made, and which document wins
This agreement is not signed on its own: it travels with the Terms of Service.
- This agreement forms part of the Terms of Service and is concluded when they are: when a workspace is created or the service is first used for your organisation, or when both parties sign an order form. It applies for as long as we process personal data for you under the Terms of Service.
- If you need a copy signed by us for your records, ask at [email protected] and we will send one. A signed copy carries the same terms as the version published here on the date it is signed.
- If documents conflict, they apply in this order, each only to the extent of the conflict: (a) the transfer terms in Annex 4, for an international transfer they cover; (b) this agreement, for personal data we process for you; (c) an order form, for the commercial terms it sets out, where it says expressly that it overrides the Terms of Service; (d) the Terms of Service; and (e) the other documents the Terms of Service list. It is the same order the Terms of Service set out.
Words used in this agreement
- Customer personal data means personal data in your workspace that we process for you, as described in Annex 1.
- Data protection law means, to the extent each applies to the processing: the EU General Data Protection Regulation (Regulation (EU) 2016/679, the GDPR) and the national laws that supplement it; the ePrivacy Directive as implemented in each country; the UK GDPR and the Data Protection Act 2018, as amended by the Data (Use and Access) Act 2025, and the Privacy and Electronic Communications Regulations 2003; and any other data protection law that applies to your processing.
- Sub-processor means a third party we engage that can reach customer personal data. Services you connect yourself are not sub-processors, as Sub-processors explains.
- International transfer means sending customer personal data, or making it accessible, to a recipient that is a separate legal entity from us and is outside the European Economic Area, for data the GDPR governs, or outside the United Kingdom, for data UK GDPR governs.
- Personal data breach means a breach of security leading to the accidental or unlawful destruction, loss, alteration, unauthorised disclosure of, or access to, customer personal data.
- Working day means a day other than a Saturday, a Sunday or a public holiday in England.
- Other terms, such as controller, processor, data subject and processing, have the meanings they have in data protection law.
What we process, for how long, and why
Article 28(3) requires the agreement to describe the processing itself. Annex 1 does that module by module; this section sets the frame.
- Subject matter. Providing the SorviAI platform and the applications you subscribe to, such as Finance, Inventory, Worklink, Repairs, Storefront, the Customer and Vendor Portals, Nest and TeamEmail.
- Duration. For as long as the Terms of Service run, and after that until the data is deleted under Deletion and return at the end.
- Nature. Hosting, storing, backing up, retrieving, displaying, transmitting, syncing, exporting and deleting, together with the support, security and incident work needed to run the service.
- Purpose. Only to provide, support and secure the service for you. We do not use customer personal data for our own purposes, we do not sell it, we do not use it for advertising, and we do not use it to train artificial intelligence models.
- SorviAI does not currently use an AI provider. If we add one, it will be listed as a sub-processor with its transfer basis, under Sub-processors.
Your instructions
- We process customer personal data only on your documented instructions (article 28(3)(a)). Your instructions are: (a) the Terms of Service and this agreement; (b) what you and your authorised users do in the product, such as creating a record, uploading a file, connecting a mailbox, sharing a Nest link or sending a document by email; and (c) any further written instruction you give us that is consistent with the service, for example about a rights request or a breach.
- The one exception is where the law of the European Union, of a Member State or of the United Kingdom to which we are subject requires us to process the data in some other way, such as under a lawful order from a court or a public authority. In that case we tell you before we act, unless the law forbids it on important grounds of public interest. Requests from public authorities describes how we handle those requests.
- We tell you promptly if, in our opinion, an instruction infringes data protection law. We are not obliged to carry out an instruction we reasonably believe is unlawful while we discuss it with you.
- As controller, you are responsible for having a lawful basis for what you put into SorviAI, for telling the people concerned what you do with their data, and for the lawfulness of your instructions. For Worklink in particular, Worklink: employee data sets out what that means for an employer.
Confidentiality of our people
Our people reach workspace content in two ways only. Both are described plainly here, including what neither of them records.
- Everyone at SorviAI who can reach customer personal data is bound by a duty of confidentiality, by contract or by law (article 28(3)(b)).
- Support access. A SorviAI super administrator can sign in to your workspace on a user’s behalf through an impersonation route. We use it only to resolve a support request from you, to investigate a credible abuse report or to meet a legal duty, and a senior engineer approves each use. The start of each session is recorded in our platform audit log in the same database transaction as the access, so it cannot happen unrecorded, and your interface shows a banner for as long as it lasts. A session can last up to 30 days. What the staff member does during the session is not recorded separately.
- Direct database access. Our director and one or two senior engineers can connect to production databases directly from their work computers to run operational and diagnostic tasks. The list of people with this access is reviewed every quarter. These connections leave no audit record.
- Before access. Background checks are carried out before anyone is given access to production systems or customer personal data. Security and data protection training is given at onboarding, with a refresher each year.
- Devices. Work laptops have full-disk encryption, a screen lock and automatic updates. Personal devices are not used for production access.
- Leavers. When someone leaves, their access to our code repository, our hosting, our payment provider, email and the platform is removed on the day they leave. Our director is accountable for it.
- Where we work. Our team works remotely, from the United Kingdom and India, and no office holds customer personal data. International transfers explains how access from India is treated.
Security
- We apply the technical and organisational measures in Annex 2 (articles 28(3)(c) and 32). Annex 2 is taken from our Security page, row for row, with each measure’s status today. Where a measure is not in place, Annex 2 says so, and we do not claim it.
- We may change the measures as the service develops, but we will not reduce the overall level of protection they give. When a measure listed as not in place is put in place, we update Annex 2 and the Security page together.
- You are responsible for the security of what sits on your side: who you give access to, which roles they hold, and whether your users turn on two-factor authentication, which an administrator cannot yet require.
Sub-processors
- General authorisation. You give us general written authorisation to engage sub-processors (article 28(2)). Those in place on the date of this version are listed in Annex 3, and the maintained list is published on our Compliance page.
- Notice. Before a new or replacement sub-processor starts handling customer personal data, we announce it on the published list and email your workspace account owners at least 30 days in advance. There is no separate subscription for these notices.
- Objection. You may object on reasonable data protection grounds within that period by writing to [email protected]. We will discuss the objection with you in good faith. If we cannot resolve it, you may end the affected subscription by written notice before the change takes effect, and we will refund, pro rata, the fees you have paid for the unused part of the period.
- The same obligations, passed down. Each sub-processor that holds or processes customer personal data for us (our hosting, email, payment, error monitoring and support mailbox providers) is bound by a written contract imposing data protection obligations no weaker than those in this agreement, including sufficient guarantees on security (article 28(4)). Google Fonts, Google Docs Viewer, jsDelivr, unpkg and GeoNames are public services we use under their providers’ standard terms, with no separate data processing contract; Annex 3 states what each receives.
- We stay responsible. We remain liable to you for the performance of each sub-processor’s obligations as if they were our own.
- Services you connect are not our sub-processors. UPS, FedEx and DHL, Microsoft 365 for TeamEmail, and your own Stripe account receive data because you switch them on for your workspace. That data goes at your direction and under your own agreement with each provider, and Annex 3 lists them separately. One works differently: online invoice payment through the Customer Portal uses Stripe Connect, so payments go to your own connected Stripe account, but SorviAI creates that account and makes the charges with its own Stripe platform key, and the payer’s email address and the invoice number are sent to Stripe.
International transfers
The application, the database and uploaded files are hosted in London. Data from the European Economic Area arrives there under the European Commission’s adequacy decision for the United Kingdom, and leaves it again in a few ways, each needing a lawful basis of its own.
- We host customer personal data on DigitalOcean in its London region: the application, the database and uploaded files, for every workspace wherever the customer is. DigitalOcean keeps database backups off-site and does not publish where.
- Your transfer of customer personal data from the European Economic Area to us relies on the European Commission’s adequacy decision for the United Kingdom, renewed on 19 December 2025 and valid until 27 December 2031. If that decision ends, we will agree the EU Standard Contractual Clauses with you before the date it ends.
- The onward international transfers we make are to the sub-processors in Annex 3 that are outside the United Kingdom and the EEA, or reach the data from outside them. We make no other international transfer without your authorisation.
- Everyone on our team in India is employed by SORVI AI LTD. A team member who reaches our UK systems from India is part of the same company. Neither the ICO nor the European Data Protection Board (Guidelines 05/2021) treats that access as a transfer to another organisation, and it is covered by this agreement’s confidentiality and security terms.
- For data the GDPR governs, each onward transfer meets chapter V of the GDPR: an adequacy decision, the EU-US Data Privacy Framework, or the Standard Contractual Clauses. For data UK GDPR governs, it meets the UK “data protection test”: the protection the data receives abroad must not be materially lower than in the United Kingdom. The table below sets out the mechanism for each transfer and whether it is in place today; Annex 4 sets out the terms.
- Before we rely on the Standard Contractual Clauses, the International Data Transfer Agreement or the UK Addendum for a transfer, we carry out and record a transfer risk assessment confirming that the data remains protected to the standard the law requires.
- If the law or practice in a destination changes so that a transfer no longer meets that standard, we tell you promptly and either put a further safeguard in place or stop that transfer.
- You can ask for a copy of the safeguards that apply at [email protected].
| Transfer | What makes it lawful | Status |
|---|---|---|
| From the EEA to us in the United Kingdom | The European Commission’s adequacy decision for the United Kingdom, valid until 27 December 2031. No extra safeguard is needed. | In place |
| To Sentry in Frankfurt, Stripe’s contracting entity in Ireland and GeoNames in Switzerland | Inside the European Union, or in Switzerland, which the European Commission recognises as adequate; for UK data, UK adequacy regulations for the EEA and for Switzerland. No extra safeguard is needed. | In place |
| To sub-processors in the United States, for data other than HR data | The EU-US Data Privacy Framework and its UK Extension (the data bridge). DigitalOcean, Cloudflare, Twilio, Stripe, Functional Software (Sentry), Google and Microsoft are certified; the official list was checked on 28 September 2026. | In place |
| To sub-processors in the United States, for HR data such as Worklink records | Cloudflare, Stripe, Google and Microsoft are certified for HR data too. Twilio’s data protection addendum provides the transfer terms. Sentry holds its copy in Frankfurt. DigitalOcean holds your data in London, but its agreement adds no safeguard if that HR data is reached from the United States. | Partial |
| To jsDelivr and unpkg | They receive only the IP address and browser details of the person loading parts of the app, answered from the network location nearest them. jsDelivr is operated by Volentio JSD Limited, a company registered in England and Wales. unpkg is an open-source project served from Cloudflare’s network, with no published operating company or terms, so no safeguard can be agreed with it. | Partial |
| Access from India by our team | Not an international transfer: everyone on our team there is employed by SORVI AI LTD. India has no adequacy decision, so before anyone works for us there as a contractor or through another company, we sign the EU Standard Contractual Clauses (module 3, processor to processor) and, for UK data, the International Data Transfer Agreement with them, with a transfer risk assessment covering access by Indian public authorities, on the terms in Annex 4. | Not needed today |
Helping you answer requests from individuals
- A request from an individual about data in your workspace is yours to answer, because you are the controller. If one reaches us, we pass it to you without undue delay and do not answer it ourselves, unless you instruct us to.
- We help you answer it by appropriate technical and organisational measures, as far as that is possible, taking into account the nature of the processing (article 28(3)(e)). Where a request needs our help, we respond within 10 working days of your written request.
- When we help with an access request, we search every system that can hold data about the person, and tell you which ones we searched.
- If a data protection complaint concerns processing we carry out for you, we help you answer it within the same 10 working days.
What SorviAI supports today
| Right | What the product does | Status |
|---|---|---|
| Access | Exports run per module and stop at 20,000 rows. Nothing assembles everything held about one person across modules; we do that by hand on request. | Manual only |
| Rectification | You correct records yourself in the application. | In place |
| Erasure | Some records outside Trash are deleted immediately, but many are only hidden, including customers, contacts, visitors and attendance records. Deleting a contact or customer hides the record but keeps its name, email addresses, phone numbers, postal addresses and contact persons. | Not in place |
| Restriction and objection | No feature for either; we work through a request with you by hand. | Manual only |
| Portability | Per-module list exports as CSV or Excel, capped at 20,000 rows; no whole-workspace export. | Partial |
You generally have one month to answer the individual, extendable by two further months for complex or numerous requests (GDPR article 12(3)), and our 10 working days is set well inside it.
Personal data breaches
You have 72 hours to notify your supervisory authority of a personal data breach, unless it is unlikely to result in a risk to people. Our commitment is set so that you can still meet yours.
- If we become aware of a personal data breach affecting customer personal data, we notify you without undue delay, and in any case within 48 hours of confirming it (article 33(2)).
- We notify the workspace administrators on record, and any additional contact you have given us for this purpose.
- We tell you what happened; which categories of your data, and roughly how many people, were involved; when it occurred and when we detected it; what we have done; the likely consequences; and what you need to do. Where we do not yet know something, we tell you what we know and follow up as we learn more.
- We take reasonable steps to contain the breach and reduce its effects, keep a record of it, and cooperate with your investigation.
- We do not notify a supervisory authority, or the people in your workspace, about your data on your behalf, unless you ask us to or the law requires it.
- A suspected incident can be reported to us at [email protected] or by telephone on +44 20 7509 3731.
Where a breach affects data we control ourselves, we notify the ICO, and any other supervisory authority the law requires, within 72 hours of becoming aware of it, unless it is unlikely to result in a risk to the people concerned, as our Privacy Policy explains.
Impact assessments and supervisory authorities
Supervisory authorities in the European Union and the United Kingdom generally expect an impact assessment for systematic monitoring of workers, which is how they will usually treat Worklink attendance records and connected TeamEmail mailboxes.
- Where your processing needs a data protection impact assessment, or prior consultation with a supervisory authority, we give you the information we reasonably can about our processing to support it (articles 28(3)(f), 35 and 36). We answer your assessment questions within 10 working days of your request.
- We cooperate with the supervisory authorities in the performance of their tasks.
| Item | Answer | Status |
|---|---|---|
| Processor’s record of processing activities (article 30(2)) | Annex 1 describes the processing we carry out for you, module by module. A separate record in the article 30(2) format has not yet been written. | Partial |
| Impact assessment input for Worklink and TeamEmail customers | Answered on request, from this agreement and the Security page. A ready-made assessment starter has not yet been written. | Partial |
Deletion and return at the end
When the Terms of Service end, we return your data to you and delete it when you ask us to (article 28(3)(g)), on the exit terms in our Terms of Service.
- Return. While you are subscribed you can export per module: list exports are capped at 20,000 rows, Nest downloads one file at a time, and TeamEmail, Storefront, POS and Escalate have no export. There is no whole-workspace export in the product, so our team exports your data for you on request, at any time and free of charge. When a subscription ends, every application locks at once, leaving only sign-in and billing; for at least 30 days after that, our team exports your data on request.
- Deletion. Nothing deletes a workspace automatically. Customer personal data stays in our systems, on the terms of this agreement, until you ask us in writing to delete it, so that you can re-subscribe and regain access. We delete it from our live systems within 30 days of that request, and confirm the deletion to you in writing.
- Backups. Deleted data remains in backup copies until they are overwritten, within 7 days after deletion from our live systems. We use backups only to recover the service from a failure.
- What the law makes us keep. Where the law requires us to keep something, we keep only what that law requires, protect it under this agreement, and use it for nothing else.
Your own retention duties continue
Deleting your workspace does not end what your own country’s law requires you to keep, which for accounting and tax records is often many years. Our seven-day backups are not an archive and meet none of those duties, so ask for your export and keep your records before you ask us to delete them.
Audits and information
SorviAI holds no third-party security certification or attestation today: no Cyber Essentials certificate, no ISO 27001 certificate and no SOC 2 report. Cyber Essentials is first on our roadmap. Until a certificate exists, this section is how you check us.
- We make available to you the information reasonably necessary to show that we meet article 28, and we allow for and contribute to audits, including inspections, by you or an auditor you mandate (article 28(3)(h)).
- We offer first: our Security page, which is the source of Annex 2, with the gaps stated; your security questionnaire, completed on your own form at no charge, within 10 working days; and a call with an engineer who has read the code, usually within a week.
- If that information does not answer a reasonable concern, you may audit our processing of your data: on at least 30 days’ written notice; no more than once in any 12 months, unless a personal data breach or a regulator requires it; during working hours and without unreasonably disrupting the service; by you or an independent auditor who is not our competitor, under a written duty of confidentiality; and at your own cost.
- An audit may not give access to another customer’s data, or to our systems beyond what is needed to verify our processing of yours.
- We tell you immediately if, in our opinion, an audit instruction infringes data protection law.
Requests from public authorities
- If a public authority asks us for customer personal data, we check that the request has a valid legal basis, for example a warrant or notice under the Investigatory Powers Act 2016, an order under the Crime (Overseas Production Orders) Act 2019, or a request made under the UK-US Data Access Agreement.
- We disclose only what the request compels, and we refuse or challenge a request that does not have a proper basis.
- Where we can, we direct a request for your business records to you, as the controller.
- We tell you before we disclose, unless the law forbids it, and for only as long as it forbids it.
- A request from an authority outside the United Kingdom must reach us through a legal route that binds us. We do not transfer or give access to customer personal data on such a request unless an international agreement, or the law that applies to us, requires it (GDPR article 48).
Liability
- Each party’s liability arising out of or in connection with this agreement is subject to the limitation of liability in the Terms of Service and counts towards the same limit: the fees paid or payable by the customer in the 12 months before the event giving rise to the claim. Claims under this agreement sit inside that limit, not beside it.
- Nothing in this agreement limits or excludes liability for death or personal injury caused by negligence, for fraud or fraudulent misrepresentation, or for any other liability that cannot lawfully be limited or excluded.
- Nothing in this agreement limits the rights of individuals against either of us under article 82 of the GDPR or of UK GDPR, or the powers of any supervisory authority.
Worklink: employee data
For employee records you are the controller as employer, with the obligations your own country’s employment, immigration and data protection law add, and we process the data on your instructions. What Worklink does today, and what that means for you:
- Health data. SorviAI sets up a “Sick Leave” leave type in every workspace that uses Worklink, and every leave request needs a free-text reason, so details of an illness can be typed into the record. A leave request can also carry a supporting document such as a doctor’s note. Health information is special category data: you need a condition under article 9 of the GDPR and any conditions your national law adds. Record the fact and dates of absence, tell staff not to put a diagnosis in the reason field, and ask for a doctor’s note only where you need it.
- National identification and social security numbers. Worklink has free-text national ID, tax ID and social security number fields. The numbers are stored in plaintext and returned in full by the API to anyone you give employee access, with no separate restriction; detail screens show only the last four characters, but the edit form shows them in full. Some countries restrict when these numbers may be processed (GDPR article 87). Leave them empty unless you need them in Worklink, and limit who has employee access.
- Right-to-work and identity documents. Worklink has no right-to-work field or document type. A copy uploaded to an employee record is an ordinary document, visible to anyone with access to that record, and nothing deletes it automatically. Keep such copies only for the period your law requires, then delete them: restrict access and diarise the deletion.
- Working-time records. Many countries require employers to record daily working time and keep those records for a set period. Worklink records check-in and check-out times, hours, breaks and overtime, and deletes none automatically. The records are not tamper-evident, and there is no dedicated working-time report; the attendance records export (CSV or Excel) carries each day’s times, breaks, hours and overtime, so export it and keep it for the period your law sets.
- Monitoring. Worklink records the IP address of every check-in and check-out, and there is no setting to switch it off, so tell your staff. It uses no biometrics, no location coordinates and no photographs at check-in; the only image it holds is an optional profile picture. We will not add biometric check-in without a separate data protection review. In some countries you must consult a works council or other employee representatives before introducing a system that records attendance.
- Automatic records. Worklink marks employees absent automatically each day when no check-in is recorded, and can clock people out automatically if you switch that on (off by default). These are records for you to review and correct, not decisions: nothing in Worklink takes a decision with legal or similarly significant effect on its own.
- Visitors. The visitor desk can record a visitor’s ID type and number, including passport and residence-permit numbers. They are hidden in API responses but stored as entered, and nothing deletes them automatically. Record them only where you need them.
- Connected mailboxes. Access to employees’ email through TeamEmail is monitoring too, and the same rules apply. Tell staff which mailboxes are connected and who can read them.
An employee who asks us about their record is referred to you, and we help you answer.
Changes to this agreement
- We may update this agreement to reflect changes in the law, in the service or in our sub-processors. Changes to the sub-processor list follow Sub-processors.
- For any other change that reduces your rights or our obligations, we give workspace account owners at least 30 days’ notice by email, and you may leave before it takes effect. A change the law requires takes effect when the law requires.
- Version 1.1 records that Session Replay runs only for users who allow analytics in our consent banner. It replaces version 1.0, effective 1 October 2026. Every later version will be published here with its date, and earlier versions will be kept at this address.
- This agreement ends when we have finished deleting customer personal data under Deletion and return at the end. The duties in Confidentiality of our people, Deletion and return at the end and Liability continue for any data we still hold after that.
Governing law and courts
- This agreement, and any dispute or claim arising out of or in connection with it or its subject matter (including non-contractual disputes or claims), is governed by the law of England and Wales, and the courts of England and Wales have exclusive jurisdiction, as under the Terms of Service.
- The transfer terms in Annex 4 are governed by the law they themselves specify.
This agreement is between businesses. The choice of English law does not take away any protection that the data protection law applying to your processing gives you or the people whose data you hold, and a supervisory authority or court with jurisdiction under that law keeps it.
How to contact us
Three kinds of request, each with its own commitment. All three reach the same desk, so an urgent one is never parked behind a routine one.
This agreement, a signed copy, or an objection to a sub-processor
A request from an individual that needs our help
A suspected incident affecting your workspace
No data protection officer is appointed, and none is required; Deepak Gupta, director, is responsible for data protection. Our reasoning is in our Privacy Policy.
Annex 1: Description of the processing
The processing this agreement covers, module by module. It is also the description our article 30(2) record will be built from.
Data subjects, overall. Your authorised users (for their activity in your workspace; their accounts with us are covered by our Privacy Policy); your employees and other staff, including repair technicians, and the family members and dependants an employee record names; visitors signed in at your visitor desk; your customers and suppliers and their contact persons; people who report a repair, raise a help desk request, send a storefront enquiry, sign in to your portals or open a file you shared by public link; people who exchange email with your team; and shipment recipients.
Frequency. Continuous, for the duration set out under What we process, for how long, and why.
| Module | Data subjects | Personal data |
|---|---|---|
| Finance and Inventory | Your customers, suppliers and their contact persons | Names, job titles, email addresses, phone numbers and postal addresses, with quotes, sales orders, invoices, credit notes, bills, purchase orders, goods receipts, payments, expenses, inventory items, price lists and tax records |
| Worklink | Your employees, and the family members and dependants named in their records | As the employer chooses to record: profile photograph, date of birth, gender, marital status, personal email address and mobile number, home and other addresses, national ID, tax ID and social security numbers (free text, stored in plaintext), emergency contact name, phone and relationship, dependants with their dates of birth, bank name, routing code and account number, annual pay, education, work experience and career history, performance reviews, assets issued, training, offboarding and exit interview records, and uploaded documents such as contracts or copies of right-to-work documents; daily attendance (check-in and check-out times, hours, breaks, overtime, lateness or early leaving and any reason given, check-in method and kiosk tablet, and the IP address of each check-in and check-out), automatic absence marks, live presence status, shifts, timesheets, and leave with the free-text reason each request requires, including sick leave |
| Worklink visitor desk | Visitors | Name and contact details, the host and times of the visit, and the ID type and number recorded, including passport, national ID, driving licence and residence-permit numbers (hidden in API responses, stored as entered) |
| Repairs | People reporting a fault; your repair technicians | Details of the fault and the device or item, what the person chose to write, and the contact details needed to keep them updated; the technician assigned; your staff’s internal comments |
| Escalate help desk | People who raise requests with you; your staff | The requester’s name, email address, phone number and company, and any notes about them; the ticket subject and messages, attachments, internal comments and mentions, time entries and an activity trail; and which staff member viewed each ticket |
| Storefront | People sending an enquiry | The enquiry and the contact details given with it. There is no checkout |
| Customer and Vendor Portals | Portal users | Sign-in details, the documents and statements shared with them, online invoice payments, and the files they upload. Every portal login for a customer sees every upload on that customer’s record, including other logins’ and your staff’s files. Statement views are not recorded |
| Nest | Anyone named in your files; people opening a public link | Uploaded files; for public links, each view, download and failed password attempt with the time, IP address and browser user agent, and the email address a visitor gives before a download |
| TeamEmail | Your staff and the people they correspond with | Message content, subject lines, sender and recipient addresses, attachments and threading metadata of connected Microsoft 365 mailboxes |
| Email sent from SorviAI | Recipients of your documents | The send log: sender, recipients including copy and blind copy, subject, the full rendered message, copies of attachments, the time sent and the delivery outcome. Document emails have open and click tracking on by default, so SendGrid records opens and clicks on its side |
| Shipments | Recipients | Names, addresses, phone numbers and parcel details, sent to the carrier you choose |
| Point of sale | Your customers at the till; your staff | The customer attached to a sale, the staff member who made it, the items, amounts, payment method and reference, receipts and notes. No card numbers are stored |
| Procure and PriceMesh | Your suppliers’ contact persons; your staff | Purchase orders and their lines, receipt notes, supplier price lists you upload, and an activity trail naming the staff member |
| Call and meeting logs | People your staff speak or meet with; your staff | Contact name, phone number and email address, the subject, notes and follow-up notes, comments, and any file attached, such as a recording you upload |
| Campaigns, budgets and stock counts | Your staff | The staff member who created or changed each record |
| Audit log | Your authorised users | What was done, when, by which account, with the IP address and browser user agent |
| Sign-in sessions | Your authorised users | For each signed-in session: the IP address, the browser, and a location label derived from the IP address |
Special category data. Health information in Worklink: every workspace that uses it has a Sick Leave type, every leave request needs a free-text reason, and a doctor’s note can be attached. Any special category data you choose to put in an uploaded file, an email or a free-text field. SorviAI processes no biometric data and has no field for criminal offence data; what you type into a free-text field or upload is yours to control.
Other sensitive data. National identification and social security numbers, held in plaintext free-text fields; bank details and pay; copies of right-to-work documents, which contain passport and immigration details; and visitors’ passport and residence-permit numbers.
Annex 2: Technical and organisational measures
These measures come from our Security page, with the same status. Where a row says a measure is not in place, it is not promised.
| Measure (GDPR article 32) | What is in place | Status today |
|---|---|---|
| Separation of customers (32(1)(b)) | Each customer has a dedicated PostgreSQL schema (django-tenants), not shared tables filtered by a column. The tenant is resolved from the subdomain before any view runs, and tokens carry the tenant schema and are validated against it on every request. User accounts, their two-factor secrets and pending invitations sit in a shared platform schema, because one person can belong to several workspaces. Public storefronts use the same tenant resolution and read only published records | In place |
| Encryption in transit (32(1)(a)) | Browser to SorviAI: TLS 1.2 or 1.3 only, with forward secrecy (ECDHE with AES-GCM); TLS 1.0 and 1.1 are refused at the edge (checked 28 September 2026). API responses carry an HSTS header (one year, including subdomains). Between our services: PostgreSQL with sslmode=require, the task broker over TLS with certificate verification, and object storage over HTTPS | PartialThe cache (which holds sessions), the real-time Channels layer and TeamEmail’s real-time state use TLS without verifying certificates; the GeoNames lookup uses plain HTTP; the public storefront reaches the backend over plain HTTP on the private network; the website and the app’s pages are served without HSTS, and the domain is not on browsers’ preload list |
| Encryption at rest (32(1)(a)) | DigitalOcean encrypts the managed database volumes with LUKS (AES-XTS, 512-bit key) and database backups with AES-256, and states that data in its object storage is encrypted at rest. The application also encrypts some values itself before storing them (Fernet: AES-128-CBC with HMAC-SHA256): two-factor secrets, shipping-carrier credentials and Microsoft 365 connection tokens | In placeOperated by DigitalOcean. Other fields, including Worklink ID numbers, are not encrypted by the application |
| Private file access | Uploaded files are private and served through signed links that expire after an hour. Company logos and storefront images are public by design and reached by permanent links | In place |
| Confidentiality: who can sign in (32(1)(b)) | Access tokens expire after 60 minutes, and no session renews beyond 30 days. Per-user two-factor authentication (authenticator app) with recovery codes, an encrypted secret and no code replay. Passwords of at least eight characters, checked against similarity, about 20,000 common passwords and all-numeric values. Sign-in limited to 15 attempts a minute per IP address, second-factor codes to 5 per five minutes. Portal accounts lock for 15 minutes after 5 failures | PartialAdministrators cannot require two-factor authentication; it is not offered to Portal users; the two Django administration sign-ins take a password only, with no attempt limit; no hardware keys or single sign-on; no per-account lockout on staff accounts; an invitation link signs an existing account in without a password |
| Confidentiality: what each account can reach (32(1)(b)) | Role-based permissions scoped per application, from a central registry; tiered administration (platform, application, user) | PartialA user with no role gets a small view-only default set; a screen that declares no required permission is open to any member of the workspace; Worklink ID fields are not restricted to payroll roles; direct database connections by our staff leave no audit record |
| Integrity: a record of changes (32(1)(b)) | An audit log in the customer’s own schema, read-only through every interface, kept for the life of the workspace. It covers sign-in through the workspace’s own sign-in page, sign-out, password, role, permission, access and invitation changes, and record changes across Finance, Inventory, Worklink, Packages and Shipments. The Activity Log report exports user actions in Finance and Inventory as CSV, Excel or PDF | PartialRepairs logs deletions only; about 4 of 30 settings areas write records; public sign-in, workspace selection and token exchange write none; failed sign-ins are not logged with the account and IP address; CRM, TeamEmail, Escalate, Nest, POS, Procure, PriceMesh, Storefront and Reports write none; the log is not tamper-evident, and writes are not bound to their transaction |
| Availability and resilience (32(1)(b)) | Hosting on DigitalOcean App Platform in London, with the managed database and object storage in the same region, behind Cloudflare, which App Platform places in front of every app domain. Per-address limits of 60 requests a minute for the public storefront catalogue and 15 for sign-in. Daily database backups with continuous write-ahead logs, and recovery to any point in the previous seven days; DigitalOcean stores backups off-site and does not publish where. The application connects to the database over TLS; the staff named in Confidentiality of our people can also connect to it directly | PartialNest public links and the public quote and invoice pages have no rate limit; there is no written network segmentation design beyond DigitalOcean’s platform networking |
| Restoring availability (32(1)(c)) | No restore from backup has been tested, so no recovery point objective or recovery time objective is committed | Not in place |
| Regular testing and evaluation (32(1)(d)) | Code reaches the main branches through pull requests: two approvals for main and production, one for develop, with deletion and force-pushes blocked. Django defaults for CSRF protection, parameterised queries and template auto-escaping are left in place | PartialContinuous integration runs no tests or scans (its one required check only confirms a pull request exists); no code-owner rule; no penetration test; no dependency, secret or static analysis scanning; no set patch window for critical advisories; no Content Security Policy; uploads are not scanned for malware |
| Breach handling (28(3)(f), 33) | Notice to you within 48 hours of confirming a breach, as Personal data breaches sets out | PartialWritten incident runbook in place; steps run by hand |
| People | Background checks before production or customer-data access; security and data protection training at onboarding and each year; work laptops with full-disk encryption, screen lock and automatic updates, and no personal devices for production access; access removed on the day someone leaves; remote working from the United Kingdom and India, with no office holding customer data | In place |
| International transfers | As set out under International transfers and in Annex 4 | PartialHR data reached from the United States by DigitalOcean has no separate safeguard |
| Certification | None held: no Cyber Essentials, Cyber Essentials Plus, ISO 27001 or SOC 2. Cyber Essentials is first on our roadmap. The Software Security Code of Practice self-assessment has not been done | Not held |
Annex 3: Sub-processors
The sub-processors in place on the date of this version. The maintained list is on our Compliance page.
| Sub-processor | What it does, and what it can reach | Location | Transfer safeguard |
|---|---|---|---|
| DigitalOcean (DigitalOcean, LLC) | Application hosting, managed database, cache, background queue, object storage for uploaded files, and backups: all workspace data | London, United Kingdom; database backups off-site, at a location DigitalOcean does not publish | Hosting in the UK, which the European Commission recognises as adequate. Any access from the United States: the EU-US Data Privacy Framework and its UK Extension (non-HR data only) |
| Cloudflare (Cloudflare, Inc.), through DigitalOcean | Network delivery and protection in front of every SorviAI host: all traffic, including IP addresses and request details | Its global network, answering from the data centre nearest the visitor | EU-US Data Privacy Framework and its UK Extension (HR and non-HR data) |
| Twilio SendGrid (Twilio Inc.) | Transactional and document email: recipient addresses, message content and attachments, and for document emails, opens and clicks | United States | EU-US Data Privacy Framework and its UK Extension (non-HR data); for HR data, the transfer terms in Twilio’s data protection addendum |
| Stripe (Stripe Payments Europe, Limited; Stripe Payments UK Ltd) | Payment processing for SorviAI subscriptions: billing contact and payment details (our own data, which we control) | Ireland and the United Kingdom; Stripe, LLC in the United States | Ireland is in the European Union, and covered by UK adequacy regulations; EU-US Data Privacy Framework and its UK Extension for Stripe, LLC (HR and non-HR data) |
| Functional Software Inc. (Sentry) | Error and performance monitoring: error reports carry the user’s account identifier, email address and username, the workspace name and request details. Session Replay records 10% of app sessions and every session with an error, with form inputs masked but on-screen text and images not masked, and runs only for users who allow analytics in the consent banner | EU region: Frankfurt, Germany | Inside the European Union, and covered by UK adequacy regulations for the EEA; Functional Software Inc. is also certified under the EU-US Data Privacy Framework and its UK Extension (non-HR data) |
| GeoNames (Unxos GmbH) | Time-zone lookup from a postal code and country, with no name or account attached | Switzerland | Recognised as adequate by the European Commission and by UK adequacy regulations |
| Google (Google Fonts) | Font delivery on the SorviAI app: the IP address and browser details of anyone opening the app | United States | EU-US Data Privacy Framework and its UK Extension (HR and non-HR data) |
| Google (Google Docs Viewer) | Previews of Word, Excel and PowerPoint attachments wherever the app shows one, including Finance, Inventory, TeamEmail, Escalate and shared documents: a signed, time-limited link to the file is sent to docs.google.com, which fetches the file; also the viewer’s IP address and browser details | United States | EU-US Data Privacy Framework and its UK Extension (HR and non-HR data) |
| jsDelivr (Volentio JSD Limited), with unpkg as fallback | Content delivery for the PDF preview component, flag and emoji images and the animation player in the app: the IP address and browser details of the person loading them | jsDelivr: a company registered in England and Wales, serving through Cloudflare, Fastly and Gcore; unpkg: an open-source project on Cloudflare’s network | Answered from the network location nearest the visitor; no workspace content is sent |
| Microsoft (Microsoft Corporation, Microsoft 365) | Our support mailbox: the messages you send to support, and our replies | Microsoft’s data centres for our tenant | EU-US Data Privacy Framework and its UK Extension (HR and non-HR data) |
Contracts. DigitalOcean (which engages Cloudflare for App Platform), Twilio, Stripe, Functional Software (Sentry) and Microsoft process data under their data processing terms. Google Fonts, Google Docs Viewer, jsDelivr, unpkg and GeoNames are public services used under their providers’ standard terms, with no separate data processing contract.
Our own team. Not a sub-processor. Everyone on our team in India is employed by SORVI AI LTD, so a team member who reaches our UK systems from there is part of the same company. Anyone who worked for us there as a contractor or through another company would receive an international transfer, covered by the terms in Annex 4, signed before their access began.
Services you connect (not our sub-processors)
| Service | What it is used for | What it receives |
|---|---|---|
| Microsoft 365 | Mailbox integration in TeamEmail | Mailbox content, held in your own Microsoft region. SorviAI also keeps copies of synced messages and attachments in your workspace (Annex 1) |
| UPS, FedEx and DHL | Creating shipments and labels | Sender and recipient names, addresses, contact details and parcel details |
| Your own Stripe account, through Stripe Connect | Collecting invoice payments from your customers through the Customer Portal | Payment and payer details for your transactions, including the payer’s email address and the invoice number. The connected account is created, and each charge is made, with SorviAI’s Stripe platform key |
Annex 4: Transfer terms
The terms on which we make international transfers of customer personal data, and the transfer agreements we would sign for access from India by anyone who is not our employee.
Part A: how international transfers are made
- Into the United Kingdom. Your transfer of data the GDPR governs to us relies on the European Commission’s adequacy decision for the United Kingdom, renewed on 19 December 2025 and valid until 27 December 2031. If it ends, we agree the Standard Contractual Clauses with you before it does.
- Adequacy. An onward transfer to a country or territory the European Commission recognises as adequate, including Switzerland, or, for UK data, one covered by UK adequacy regulations, including the EEA and Switzerland, is made on that basis, with no further safeguard. Recipients inside the EEA receive no international transfer of data the GDPR governs.
- The Data Privacy Framework. A transfer to a recipient in the United States that is certified under the EU-US Data Privacy Framework, and for UK data under its UK Extension, relies on that certification, but only for the kinds of data the certification covers: HR data, non-HR data or both, as the recipient has declared.
- Transfer agreements. Any other international transfer of data the GDPR governs is made under the Standard Contractual Clauses adopted by the European Commission in Implementing Decision (EU) 2021/914, module 3 (processor to processor); of UK data, under the International Data Transfer Agreement (version A1.0), or the International Data Transfer Addendum to those clauses (version B1.0), issued under section 119A of the Data Protection Act 2018. We sign them as exporter, with the recipient as importer. Where the recipient is our sub-processor, its own data processing terms may supply them, as Twilio’s do.
- Transfer risk assessment. Before relying on a transfer agreement, we carry out and record a transfer impact assessment (for data the GDPR governs) or transfer risk assessment (for UK data), confirming that the data remains protected to the standard the law requires, and we repeat it when the law or practice in the destination changes.
Part B: the Standard Contractual Clauses for access from India
We sign them before anyone in India who works for us as a contractor or through another company can reach customer personal data the GDPR governs. Today no one does: our team there is employed by SORVI AI LTD. The clauses are used as the European Commission adopted them, without change, with these choices:
| Part of the clauses | Our entry |
|---|---|
| Module | Module three: transfer processor to processor |
| Clause 7 (docking clause) | Included |
| Clause 9 (use of sub-processors) | Option 1, specific prior authorisation: the importer may not engage a sub-processor without our prior written authorisation |
| Clause 11 (redress) | The optional independent dispute resolution body is not used |
| Clause 13 (supervision) | The supervisory authority of the Member State in which the data subjects whose personal data is transferred are located |
| Clauses 17 and 18 (governing law and courts) | The law of Ireland, and the courts of Ireland |
| Annex I (parties and description) | Exporter: SORVI AI LTD, a company registered in England and Wales with company number 16927720, registered office Unit 5a Victoria Road, Stoke-On-Trent, England, ST4 2HS, United Kingdom, acting as processor. Importer: the contractor, or the company, in India named in the signed clauses, acting as our sub-processor. The description of the transfer is Annex 1, reached only by remote access to our UK systems, continuously, for as long as the importer can reach it |
| Annex II (technical and organisational measures) | The measures in Annex 2, with the staff measures in Confidentiality of our people |
| Annex III (sub-processors) | None |
Part C: the International Data Transfer Agreement for UK data
For UK data, we sign the International Data Transfer Agreement with the same importer at the same time. Its tables are completed as below, and its mandatory clauses are used as the Information Commissioner issued them, without change.
| Part of the agreement | Our entry |
|---|---|
| Table 1: Parties | Exporter: SORVI AI LTD, a company registered in England and Wales with company number 16927720, registered office Unit 5a Victoria Road, Stoke-On-Trent, England, ST4 2HS, United Kingdom. Importer: the contractor, or the company, in India named in the signed agreement |
| Table 2: Transfer details | Governing law and place for legal claims: England and Wales. Status of the exporter: processor. Status of the importer: our sub-processor, acting only on our documented instructions. Linked agreement: this Data Processing Agreement. Term: for as long as the importer can reach customer personal data, ending with the linked agreement. Further transfers by the importer: not permitted. Review: every 12 months, and whenever the law or practice in India changes |
| Table 3: Transferred data | The categories of personal data and of data subjects in Annex 1, including the special category data it describes, reached only by remote access to our UK systems |
| Table 4: Security requirements | The measures in Annex 2, with the staff measures in Confidentiality of our people |
| Part 2: Extra protection clauses | Any measure the transfer risk assessment requires |
| Part 3: Commercial clauses | None |
Key terms
Six phrases this agreement uses that most readers will not have met before.
Standard Contractual Clauses
Contract terms adopted by the European Commission (Implementing Decision (EU) 2021/914) that make a transfer of personal data out of the EEA lawful where the destination has no adequacy decision. They come in modules for different relationships; ours is module three, processor to processor.
Adequacy decision
A finding by the European Commission, or by UK regulations, that a country protects personal data to an essentially equivalent standard, so data can go there without further safeguards. The European Commission recognises the United Kingdom as adequate until 27 December 2031.
HR data
In the EU-US Data Privacy Framework, personal data about employees, past or present, collected in the context of the employment relationship. A US company certifies for it separately.
Worklink’s employee and attendance records are HR data, so a certification that covers non-HR data only does not cover them.
Data bridge
The EU-US Data Privacy Framework, and its UK Extension. The European Commission and UK regulations treat a transfer to a US company certified under them as adequate, for the kinds of data its certification covers. The official list is at dataprivacyframework.gov.
IDTA and UK Addendum
The two contracts the UK uses for transfers to countries without UK adequacy regulations. The International Data Transfer Agreement is a UK-only agreement; the UK Addendum adapts the EU Standard Contractual Clauses for UK transfers. Both remain valid after the Data (Use and Access) Act 2025.
Transfer risk assessment
The assessment behind a transfer made under a transfer agreement: whether the law and practice of the destination country, including access by its public authorities, undermine the protection the agreement is supposed to provide. The EU calls it a transfer impact assessment; under UK law the question is whether protection abroad is “not materially lower” than in the UK.