Data Processing Summary

    Last updated: October 25, 2026

    A one-page account of what Vera Croft does with the personal data your team puts into it: who decides what, which providers are involved, where it sits, what protects it, and what happens when it is deleted.

    1. What this summary is

    A short, factual description of the personal data Vera Croft processes on a customer's behalf, who else is involved and where it sits. It is meant to be enough for a security or procurement review to proceed without a call.

    It sits alongside the Privacy Policy (what we do with your own account data) and the Terms of Service. It describes practice; it does not certify compliance with any particular regime.

    2. Who decides what

    • The customer organisation determines the purposes of processing personal data in its project content. Its authorised project administrators express its instructions through the product. We process that content on its behalf. Holding an owner role in the application does not by itself make an employee a separate legal controller.
    • VERA GRP LLC, a Delaware limited liability company, at 1895 Tyler Street, Suite 404, Hollywood, Florida 33020, United States, provides Vera Croft (“we”, “us”) and determines the purposes of account administration, billing, security, support and website enquiries and subscriptions. We remain responsible for the personal data we process for those purposes. The Privacy Policy covers it.
    • The customer chooses the connected Dropbox or Google Drive account. Its storage account holder controls that account on the customer's behalf; that technical role does not override the customer's legal responsibilities or individuals' rights. See section 5 for legacy Storage files and processing in transit.

    3. Data subjects and categories

    Data subjects and the categories of data processed about them
    WhoWhat is processed about them
    Project members (your staff and subcontractors with accounts)Name, email address, optional profile details (job title, phone, company, location, bio, website, birthday, avatar), project role and membership status, authored records and comments, activity-log entries carrying their name, work-time sessions and breaks including the client IP address recorded at clock-in and clock-out, online presence while the app is open, and one stored “last seen” timestamp per person — the latest moment only, not a session history — visible inside a project only to the roles that manage the team.
    People invited but not yet registeredEmail address and the role they were invited to, until the invitation is accepted or deleted.
    People offered a complimentary workspaceThe email address our staff offered it to, the length of the free period if it has one, and a note our staff may add on why. The address is kept while the offer is open, at most a year after it was made, and is removed when the offer is used, 30 days after it is withdrawn or lapses (with the note), at once on request, or when the account that confirmed it is deleted. Vera Croft's own record, not customer content: platform administrators see it, and no other account does.
    People named inside project contentWhatever your team writes into tasks, logs, documents, receipts, access-code assignments and security records. We do not inspect it and impose no schema on it — which is exactly why you should keep it to what the job needs.
    Everyone who creates an accountThe record of their acceptance of the Terms of Service and acknowledgement of the Privacy Policy at sign-up: the account id, the sentence, the dates of the two documents, how and where it was given and when, by the server's clock — no name or email address. It is Vera Croft's own record, not project content: the person's own account can read it, no other account can, and it survives the deletion of the account.
    Storage account holdersThe provider account id, email address and display name reported by Dropbox or Google, plus encrypted access and refresh tokens.

    4. What we do with it

    • Store it, and serve it back to the members of the project who hold a role that permits it.
    • Attribute records to their author, and keep an activity log that a project owner can review.
    • Send the transactional emails the product needs: confirmation, password reset, project invitations, and the billing notices sent to a workspace's billing administrators whether or not the workspace has a subscription — trial, plan-transition, complimentary-period, subscription, renewal, payment, refund and export notices.
    • Make a workspace complimentary when an account that has confirmed an email address our staff offered one to creates it while the offer is open, or when our staff apply the offer to a workspace that account administers. Making the offer sends nothing to the offered address; once the workspace is complimentary, its billing administrators, the account that confirmed that address among them, receive the complimentary-period notices above.
    • Read and write files in the storage owner's connected provider account on request.
    • When a budget or estimate import cannot be mapped by the local parser, send a masked sketch of the sheet to an inference gateway, which answers with a column mapping. Every amount, cost code, number and date is replaced by a placeholder token before the request leaves our server, which refuses to forward a sample that still contains one; email addresses, phone numbers and street addresses are stripped from the remaining text, which is otherwise the row labels as your team wrote them. Nothing is sent where no gateway key is configured.
    • Record each new account's acceptance of the Terms of Service and acknowledgement of the Privacy Policy, and, where it is switched on, check the sign-in, sign-up and password-reset forms for bots through Cloudflare Turnstile.
    • Diagnose failures and investigate abuse.
    • We do not profile users, train models on customer content, sell data, or use it for advertising.

    5. Files: connected accounts and legacy storage

    New project files are stored in the connected Dropbox or Google Drive account under a VeraCroft folder, and downloads are fetched from there. File contents can pass through our server functions during uploads, downloads and migrations. Older project attachments, documents, project images and avatars also remain in Supabase Storage in our United States project. Those legacy objects are an exception to the connected-account arrangement; database backups contain their metadata, not their file bytes. Our database holds only the metadata — name, path, size, type, uploader, timestamps and the provider's file id. On Google Drive our access is limited to the drive.file scope, which reaches only files the application itself created; the Dropbox grant is broader — read and write over the connected account's files — though the application only ever touches its own VeraCroft folder. The account holder can delete provider-hosted files directly, and authorised product operations can delete files while the connection and permissions allow it. Account deletion alone does not instruct us to erase a customer's project files. Requests concerning project files or legacy objects must be handled with the responsible customer. We do not maintain an independent backup of files in the connected provider account. Disconnecting a provider deletes the account holder's connection to it from our database, together with the access tokens stored with that connection, but it does not withdraw the account holder's grant to our application at Dropbox or Google, and neither does deleting their Vera Croft account: the account holder removes our application in their provider's own settings — the connected apps of their Dropbox account, or the third-party apps with access to their Google Account.

    6. Providers and their roles

    Subprocessors and what each one processes
    ProviderProcessingLocation
    SupabaseDatabase, authentication, realtime, serverless functions, legacy avatars and some older project files.United States — us-east-1
    VercelApplication hosting and delivery; request logs including IP addresses.Global edge network
    DropboxFile storage in the customer's own account, where the project uses Dropbox.Per that account
    Google DriveFile storage in the customer's own account, where the project uses Drive.Per that account
    Google Sign-InIdentity, for users who choose it.Per Google
    Cloudflare (Turnstile)Bot check on the application's sign-in, sign-up and password-reset forms and on the website's contact form and email field for updates — only once it is switched on, and only after a person starts using one of those forms; nothing is loaded when a page opens. Cloudflare receives the visitor's IP address, user-agent and TLS fingerprint, and the site key with the page's origin, directly from the browser. The check on the server's side is switched on separately, and until it is, nobody checks the token; once it is, the one-time token is checked with Cloudflare once: by the website's server function with the token alone, and by Supabase Auth for the application's forms, which also sends the request's IP address.Per Cloudflare
    Timeweb (SMTP)Delivery of invitation notices to addresses that already have an account, and of the billing notices sent to a workspace's billing administrators. Also delivers each message sent through the contact form on veracroft.com to info@veracroft.com, the confirmation e-mail sent to an address submitted through the email field for updates in the site's footer, and, once its owner confirms, that address to info@veracroft.com.Per the mail provider
    Bitrix24Vera Croft's CRM, at crm.veragrp.com — website contact-form submissions and confirmed footer sign-ups for updates only. A Bitrix24 installation self-hosted by us, on a server provided by Timeweb. Each message sent through the contact form on veracroft.com is recorded as a lead: name, email address, phone number and message, with the company and the form used added to the message. Each address submitted through the email field for updates in the site's footer is recorded as a lead too, once its owner has confirmed it from the e-mail sent to it, with the form used, the page it was submitted from and the times the subscription was requested and confirmed added in place of a message. Reached by our server, never by a visitor's browser. No account or project data is sent. Leads that do not become customers, and the e-mails that go with them, are kept for three years after the last contact; customer, contract and project records for seven years after the relationship ends; the server's backup copies, made daily, for 30 days.Russia (Saint Petersburg)
    Inference gateway (a Timeweb Cloud agent)Column mapping for a budget or estimate import the local parser could not read. Receives a masked sketch only — amounts, cost codes, numbers and dates replaced by placeholder tokens, contact details stripped, row labels otherwise verbatim — and returns a mapping, never a value. Silent unless a gateway key is configured.Per the provider
    StripePayment provider, for workspaces that subscribe: hosted checkout where the card is entered and kept, subscription charges and renewals, receipts, refunds and the billing portal. Receives the billing contact's name and email address, billing address, tax id if given, and the plan and amounts, and, if a charge is disputed, the order, acceptance, payment and usage records we may give it to respond. The full card number never passes through Vera Croft; the copies of Stripe's payment events we keep can include the card's brand, last four digits and expiry date. No project content is sent.Per Stripe
    SentryCrash and error reports, only where a monitoring key is configured — separately for the browser and for our server functions. From the browser: no default personal information attached, no performance traces sampled. From a server function: the log line it had already written for the failure, after that line has been stripped of secrets — which function failed, the request id, the error and its stack trace, the deployment and build, operational codes and the record ids needed to find it, with every other field dropped and only its name sent. Never the original error, and never the request itself — not its body, its headers, its address or the caller's IP address.Per Sentry
    Open-MeteoForecast for the project's configured city, requested by the browser. No account data is sent.Per Open-Meteo

    7. Location and transfers

    The database, authentication and functions run in the United States (Supabase region us-east-1). The interface is delivered from Vercel's edge network. New project files are wherever the connected provider account keeps them; legacy Supabase Storage files remain in our United States project. Website enquiries and confirmed subscriptions also reach the Russia-hosted CRM described in section 6. Our current commercial offering is limited to United States businesses; this summary does not establish an EU or UK international-transfer mechanism. If your users are outside the United States, using Vera Croft transfers their account data there.

    8. Technical measures actually in place

    • Row-level security on every table, with project membership and role checked in the database rather than in the interface.
    • Privileged operations (account deletion, role changes, ownership transfer, revealing an access code, reading a teammate’s last-seen time) run through server-side functions scoped to the caller, not through open table permissions. The columns those functions guard — an access code’s password, a person’s last-seen time — are withheld from browser requests outright, so the function is the only way to them.
    • Storage provider tokens encrypted with AES-GCM before storage, decrypted only inside a server function.
    • A project export, available to the project's owner and administrators, carries the project's invitations without the token that joins one, and of its direct messages only the conversations the person exporting took part in.
    • HTTPS everywhere. Enforced response headers: framing by any other site refused, MIME-type sniffing off, a strict-origin-when-cross-origin referrer policy, and a permissions policy that denies camera, geolocation, payment and USB outright and allows the microphone only to the application itself, for voice notes on daily logs. A Content-Security-Policy is delivered alongside them in report-only mode, so as things stand it reports what it would have blocked rather than blocking it — worth knowing rather than counting as a control.
    • Passwords hashed by Supabase Auth, reachable by no console. The platform console reaches every profile, a roster of every project with its owner, its members and their email addresses, its record counts and its budget totals, the offers of a complimentary workspace with their email addresses, and the administrator audit log — but not the content of a project, which row-level security withholds from an administrator exactly as it does from any non-member. Platform administrators can also export a project's data from outside it; each such export is written to the audit log and carries none of the project's direct messages. At most two protected administrators can additionally grant administrator access and permanently delete a project with all of its rows.
    • A per-project activity log that is append-only for a member: they may add entries attributed to themselves and can neither edit nor delete any. A project owner or administrator can amend or delete an entry, but not re-attribute one — the actor's id and name on a row are pinned by a database trigger. Membership and role history is written only by server-side functions and cannot be altered from a client at all, and administrator actions go to a separate platform audit log with the same property, readable only by platform administrators.

    9. Retention and deletion

    • Deleting a record in the product deletes the row.
    • A person’s stored “last seen” timestamp stops being shown thirty days after the moment it records and is cleared from the database the next time anyone signs in, and it is deleted immediately when the account is deleted.
    • Deleting an account relabels the profile to “Deleted user” and clears its optional fields; replaces the person's name with “Deleted user”, and removes their email address, in every record that links the name to the account by its id; removes every membership, every pending invitation and the person's own notifications; withdraws an open complimentary-workspace offer for the person's confirmed address and removes that address from every offer that holds it; then deletes the authentication account and the avatars we hold. Authored records stay with their project. Relabelling and removing direct identifiers does not guarantee anonymisation; retained ids and free text can remain personal data.
    • Text that nothing ties to the account can still carry the person's name: notifications other people received that quote it, a task's assignee text and task owner, some RFI assignee text, the summaries and details of log entries, a workspace named after the person, the address in text not linked to the account, and what people typed. Privacy Policy section 9 lists them.
    • An offer of a complimentary workspace holds its email address and its note while it is open, at most a year after it was made, and for 30 days after it is withdrawn or lapses; both are removed then, the address sooner when the offer is used, and both at once on request. Neither is copied into the audit log. A used offer keeps its dates, the length of the free period, its note, the account that used it and the workspace it became, with that workspace's billing records.
    • The record of a person's acceptance of the Terms and the Privacy Policy at sign-up survives the deletion of their account, and cannot be changed or deleted through the application: an id, the sentence, the two documents' dates, how, where and when — no name or email address.
    • Account deletion is refused while the person is the sole owner of an active project, while their connected storage holds the files of a project other people are still using, or while they are the only billing administrator of a workspace that others still use or that has a live subscription.
    • A workspace's billing records — orders, amounts, dates, Stripe references and the consent accepted at checkout — survive the deletion of the person who placed them, under the name “Deleted user”, together with the copies of Stripe's payment events we keep, which account deletion does not change. When a subscription or trial ends, or a free workspace reaches the date by which a plan is needed without one, the workspace stays readable and exportable for thirty days, then is blocked and scheduled for deletion from active systems within the following thirty days, apart from those records and anything the law requires to be kept.
    • Provider-hosted files can be deleted by the storage account holder or through authorised product operations. Legacy Supabase Storage objects require their applicable deletion process; the account-deletion process removes identifiable legacy avatars, not all project files.

    Residual records — what an account deletion leaves behind — are kept for up to seven years after the account is deleted. Those that belong to a project can go sooner: a member whose role allows it can delete them inside the project, and they are deleted with the project when a platform administrator deletes it or its workspace is purged. The database is backed up once a day and each backup is kept for seven days, so a backup may still contain deleted database data for up to seven days after it is deleted. This is not a backup or deletion schedule for provider-hosted files, legacy Storage file bytes, the CRM or mailboxes. A specific legal retention obligation or documented legal hold can require longer retention, restricted to that purpose.

    10. A written agreement

    We offer a data processing agreement to a customer who needs one, on request. Requests and questions go to info@veracroft.com. This summary is not itself a signed data processing agreement. Mandatory security, assistance and notification duties apply regardless of whether a separate agreement has been signed. Under a customer data processing agreement we notify the customer of a personal data breach affecting their data without undue delay, and no later than 48 hours after we become aware of it, or earlier where applicable law requires. We provide information available at the time and supplement it as the investigation continues; the initial notice is not delayed until every fact is confirmed. Any other commitment — on audits, or on notice before a subprocessor changes — would live in that agreement rather than on this page; nothing here should be read as one.