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. From 13 May 2027, section 8(2) of the Digital Personal Data Protection Act 2023 lets a business use a processor only under a valid contract, and the business stays responsible for what the processor does. This is that contract, already in place.
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 India version, for customers in India. If you also hold personal data of people in the European Union in SorviAI, the terms the GDPR requires for that data are in Annex 4. How we handle data we decide about 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 Data Fiduciary 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. Under the SPDI Rules 2011 you are the body corporate that collects it.
- We are your Data Processor. We process that data only on your behalf, 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 decide about ourselves: our own signup, account, billing, support, website, newsletter and careers data. Our Privacy Policy governs that data.
- We are established in the United Kingdom and have no company or office in India. Our team works from the United Kingdom and India.
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 terms in Annex 4, for personal data of people in the European Union 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: section 43A of the Information Technology Act 2000 and the SPDI Rules 2011, until they cease to apply; the Digital Personal Data Protection Act 2023 and the DPDP Rules 2025, as each part comes into force; for personal data of people in the European Union, the GDPR (Regulation (EU) 2016/679), as Annex 4 sets out; 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.
- Onward transfer means sending customer personal data, or making it accessible, to a recipient in another country that is a separate legal entity from us.
- Personal data breach means any unauthorised processing of customer personal data, or its accidental disclosure, acquisition, sharing, use, alteration or destruction, or loss of access to it, that compromises its confidentiality, integrity or availability.
- Working day means a day other than a Saturday, a Sunday or a public holiday in England.
- Other terms, such as Data Fiduciary, Data Principal, Data Processor and processing, have the meanings they have in the Digital Personal Data Protection Act 2023.
What we process, for how long, and why
A processor contract should 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 where it processes data, under Sub-processors.
Your instructions
- We process customer personal data only on your documented instructions. 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 a law that applies to us, in India, the United Kingdom or elsewhere, 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 or the order forbids it. 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 Data Fiduciary, you are responsible for having a lawful ground, consent or a legitimate use, for what you put into SorviAI, for giving the people concerned the notice the law requires, 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.
- 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. Where your data is, and where it goes explains how access from India is treated.
Security
- We apply the technical and organisational measures in Annex 2 as our reasonable security safeguards (DPDP Act, section 8(5), and DPDP Rules 2025, rule 6) and reasonable security practices (SPDI Rules 2011, rule 8). 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. 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. 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.
Where your data is, and where it goes
The application, the database and uploaded files are hosted in London. Nothing is kept in India. Data leaves London in a few ways, listed here.
- 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. A backup in India is planned, but it is not in place and has no date; until it is, we keep no copy of customer personal data in India.
- Indian law sets no condition today on our keeping the data in the United Kingdom or on the onward transfers below. From 13 May 2027 the Government may restrict transfers to countries it names (DPDP Act, section 16). If it names a country where we or a sub-processor hold customer personal data, we tell you promptly and stop or move that processing as the restriction requires.
- The onward transfers we make are to the sub-processors in Annex 3 that are outside the United Kingdom, or reach the data from outside it. We make no other onward transfer without your authorisation.
- Everyone on our team in India is employed by SORVI AI LTD. A team member who reaches our systems from India is part of the same company, so that access is not an onward transfer, and it is covered by this agreement’s confidentiality and security terms.
- Before anyone works for us as a contractor or through another company and can reach customer personal data, we sign terms with them no weaker than this agreement and, for personal data of people in the European Union, the clauses in Annex 4. No one does today.
- If you are subject to a stricter rule, such as a sector regulator’s requirement to keep data in India, it is yours to meet, and SorviAI cannot meet it while the service is hosted in London.
- You can ask for a copy of the terms that apply to any transfer at [email protected].
| Where data goes | Who | Status |
|---|---|---|
| To us in the United Kingdom | DigitalOcean in London, for every workspace | In place |
| To the European Union and Switzerland | Sentry in Frankfurt, Stripe’s contracting entity in Ireland, and GeoNames in Switzerland | In place |
| To companies in the United States | DigitalOcean, Cloudflare, Twilio, Stripe, Functional Software (Sentry), Google and Microsoft, each under the terms in Annex 3 | In place |
| 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. unpkg is an open-source project with no published operating company or terms, so no terms can be agreed with it | Partial |
| To India | No copy of the data. Our team in India reaches it as employees of SORVI AI LTD | No copy in India |
Helping you answer requests from individuals
- A request from an individual about data in your workspace is yours to answer, because you are the Data Fiduciary. 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. 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 grievance about personal data 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 to information | 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 |
| Correction, completion and updating | You change 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 |
| Withdrawing consent | No feature for it; we work through a request with you by hand. | Manual only |
| Nomination | No field for it; keep a nomination in your own records. | Not in place |
From 13 May 2027 the DPDP Rules give you at most 90 days to answer a request, and the SPDI Rules give one month for a grievance today; our 10 working days is set well inside both.
Personal data breaches
From 13 May 2027 you must tell the Data Protection Board of India and each person affected of a personal data breach without delay, and give the Board a detailed report within 72 hours (DPDP Rules 2025, rule 7). 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.
- 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 the Data Protection Board, or the people in your workspace, about your data on your behalf, unless you ask us to or the law requires it.
- We report the cyber incidents CERT-In lists to CERT-In within 6 hours of noticing them, as its Directions require, whether or not your data is involved. That report is ours; it does not notify anyone on your behalf.
- 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 decide about ourselves, we notify the Data Protection Board and the people affected as rule 7 requires from 13 May 2027, as our Privacy Policy explains.
Impact assessments and regulators
The DPDP Act requires a data protection impact assessment and an audit only of a Significant Data Fiduciary (section 10), but you may want one anyway for Worklink attendance records and connected TeamEmail mailboxes.
- Where your processing needs an impact assessment or an audit, we give you the information we reasonably can about our processing to support it. We answer your assessment questions within 10 working days of your request.
- We cooperate with the Data Protection Board of India, CERT-In and any other authority with jurisdiction over the processing.
| Item | Answer | Status |
|---|---|---|
| A description of our processing | Annex 1 describes the processing we carry out for you, module by module. | In place |
| 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, so that you can meet your own duty to have your processor erase data (DPDP Act, section 8(7)), 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 Indian law requires you to keep: books of account for eight years (Companies Act 2013, section 128) and GST records for 72 months from the due date of the annual return (CGST Act 2017, section 36). 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 this agreement, and we allow for and contribute to audits, including inspections, by you or an auditor you mandate.
- 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 that reaches us. In India that includes a direction from CERT-In under section 70B(6) of the Information Technology Act 2000, a direction for interception, monitoring or decryption under section 69, a blocking order under section 69A, and a call for information under section 36 of the DPDP Act once it is in force; in the United Kingdom, where the data is hosted, a warrant or notice under the law there.
- 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 Data Fiduciary.
- We tell you before we disclose, unless the law forbids it, and for only as long as it forbids it. Directions under sections 69 and 69A of the IT Act are confidential, so for those we may not be able to tell you at all.
- A request from an authority of another country must reach us through a legal route that binds us. We do not give access to customer personal data on such a request unless an international agreement, or the law that applies to us, requires it.
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 the people whose data you hold have against either of us under data protection law, or the powers of the Data Protection Board of India or any other authority with jurisdiction.
Worklink: employee data
For employee records you are the Data Fiduciary as employer, with the duties Indian employment and data protection law add, and we process the data on your instructions. You may process employee data for employment purposes without consent (DPDP Act, section 7(i)), but the other duties still apply. What Worklink does today, and what that means for you:
- Aadhaar numbers. Do not enter them, on an employee record or as a visitor’s ID. The Aadhaar Act 2016 (section 29) limits how an Aadhaar number may be kept, displayed and shared, and Worklink has no masked or restricted field for one.
- PAN, other ID numbers and bank details. Worklink has free-text national ID, tax ID and social security number fields, and fields for bank name, account number and routing code. They are stored in plaintext and returned in full by the API to anyone you give employee access, with no restriction to payroll roles; detail screens show only the last four characters of the ID fields, but the edit form shows them in full. Financial details are sensitive personal data under the SPDI Rules 2011. Leave the fields empty unless you need them in Worklink, and limit who has employee access.
- 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. Medical records are sensitive personal data under the SPDI Rules 2011. 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.
- Identity documents. 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 as long as you need them: restrict access and diarise the deletion.
- Registers. The labour codes and state rules require employers to keep registers of attendance, hours and wages. Worklink records check-in and check-out times, hours, breaks and overtime, and deletes none automatically. The records are not tamper-evident, and Worklink produces no statutory register format; the attendance records export (CSV or Excel) carries each day’s times, breaks, hours and overtime, so export it and keep the registers the law requires.
- 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. Our error monitoring records one session in ten and every session with an error, with typed inputs masked but on-screen text not, so a recording can include an open employee record; tell your staff that too.
- 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. They are hidden in API responses but stored as entered, and nothing deletes them automatically. Record them only where you need them, and never an Aadhaar number.
- Connected mailboxes. Access to employees’ email through TeamEmail is monitoring too. 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 Indian law, or other data protection law applying to your processing, gives you or the people whose data you hold, and the Data Protection Board of India or a 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: the DPDP Act requires one only of a Significant Data Fiduciary, and we have not been notified as one. Deepak Gupta, director, is responsible for data protection. Our reasoning is on our DPDP and GDPR Compliance page.
Annex 1: Description of the processing
The processing this agreement covers, module by module.
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 |
Sensitive personal data. The SPDI Rules 2011 treat passwords, financial details, medical records and biometric information, among others, as sensitive personal data. In SorviAI that means: 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); bank details and pay; and anything sensitive you choose to put in an uploaded file, an email or a free-text field. SorviAI processes no biometric data; what you type into a free-text field or upload is yours to control.
Other sensitive data. PAN and other identification numbers, held in plaintext free-text fields; copies of identity documents; and visitors’ ID numbers. Do not enter Aadhaar numbers anywhere in SorviAI.
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 | What is in place | Status today |
|---|---|---|
| Separation of customers | 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 | 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 | 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 | 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 | 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 | 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 | 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 | 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 | 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 | Notice to you within 48 hours of confirming a breach, as Personal data breaches sets out | PartialCERT-In reports within 6 hours; written incident runbook in place |
| Logs of who reached the data | The audit log and email send logs are kept for the life of the workspace; we commit to keeping the logs of our systems for 180 days, in London | PartialError reports are kept for up to 90 days; the hosting platform’s and network edge’s log periods are not yet confirmed; direct database connections are not logged |
| 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 |
| Where the data is kept | As set out under Where your data is, and where it goes | PartialLondon, not India; a backup in India is planned but not in place |
| 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 | Terms we use it under |
|---|---|---|---|
| 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 | Its data processing terms |
| 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 | DigitalOcean’s terms, which engage Cloudflare for App Platform |
| Twilio SendGrid (Twilio Inc.) | Transactional and document email: recipient addresses, message content and attachments, and for document emails, opens and clicks | United States | 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 | Its data processing terms |
| 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 | Its data processing terms. Some account data is held in the United States whatever the region |
| GeoNames (Unxos GmbH) | Time-zone lookup from a postal code and country, with no name or account attached | Switzerland | Its standard terms |
| Google (Google Fonts) | Font delivery on the SorviAI app: the IP address and browser details of anyone opening the app | United States | Google’s standard terms |
| 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 | Google’s standard terms |
| 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 | Its data processing terms |
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 systems from there is part of the same company. Anyone who worked for us as a contractor or through another company would be a sub-processor, bound before their access began by terms no weaker than this agreement and, for personal data of people in the European Union, by the clauses in Annex 4.
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: Personal data of people in the European Union
This annex applies only to customer personal data that the GDPR (Regulation (EU) 2016/679) governs, such as data about your customers or suppliers in the European Union. For that data, and only for it, these terms add to the rest of this agreement.
Part A: the GDPR terms
- Roles. You are the controller and we are your processor. This agreement is the contract article 28 of the GDPR requires: its sections on instructions, confidentiality, security (with Annex 2 as the measures article 32 asks for), sub-processors, help with requests and assessments, breaches, deletion and audits are our article 28(3) commitments.
- Breaches. Our notice within 48 hours of confirming a breach leaves you time to notify your supervisory authority within the 72 hours article 33 allows.
- Into the United Kingdom. Your transfer of this data 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 the European Commission recognises as adequate, including Switzerland, is made on that basis, with no further safeguard. Recipients inside the European Union, such as Sentry in Frankfurt and Stripe’s contracting entity in Ireland, receive no international transfer.
- The Data Privacy Framework. A transfer to a recipient in the United States that is certified under the EU-US Data Privacy Framework relies on that certification, but only for the kinds of data the certification covers. DigitalOcean, Cloudflare, Twilio, Stripe, Functional Software (Sentry), Google and Microsoft are certified; the official list was checked on 28 September 2026. Cloudflare, Stripe, Google and Microsoft are certified for HR data too; for HR data, Twilio’s data protection addendum provides the transfer terms and Sentry holds its copy in Frankfurt, but DigitalOcean’s agreement adds no safeguard if HR data is reached from the United States.
- Transfer agreements. Any other international transfer of this data is made under the Standard Contractual Clauses adopted by the European Commission in Implementing Decision (EU) 2021/914, module 3 (processor to processor), after a transfer impact assessment that we record and repeat when the law or practice in the destination changes.
- Our team in India. They are employed by SORVI AI LTD, so their access is not an international transfer to another organisation.
- Foreign authorities. We do not give a public authority outside the European Union access to this data unless an international agreement, or the law that applies to us, requires it (GDPR article 48).
- Rights and supervision. Nothing in this agreement limits the rights of the people concerned under article 82 of the GDPR, or the powers of a supervisory authority in the European Union.
Part B: the Standard Contractual Clauses for contractors
We sign them before anyone outside the European Union who works for us as a contractor or through another company, in India or elsewhere, can reach this data. Today no one does: our team in India 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, 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 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 |
Key terms
Four phrases the GDPR terms in Annex 4 use 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 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 Privacy Framework
The EU-US Data Privacy Framework. The European Commission treats a transfer to a US company certified under it as adequate, for the kinds of data its certification covers. The official list is at dataprivacyframework.gov.