Effective date: 31 July 2026 · Governing law: Republic of South Africa (POPIA)
CoPortal Digital (Pty) Ltd (registration number K2026315446), trading as CoPortal (“we”, “us”, “our”), is a private company incorporated in South Africa that operates the software-as-a-service platform at coportal.io. We are the responsible party for personal information processed through this platform, as defined in the Protection of Personal Information Act 4 of 2013 (“POPIA”).
Our Information Officer is contactable at hello@coportal.io.
We collect and process the following categories of personal information:
We process personal information only for the following purposes:
We do not sell, rent, or trade personal information to third parties. We do not build advertising or marketing profiles about you, target advertising at you based on what you do inside your workspace, or use your workspace content for advertising. Our use of advertising technology is limited to measuring whether an advertisement we paid for resulted in a signup.
When you connect your Google account to enable CoPortal’s scheduling features, we request the following Google OAuth scopes:
How we use this data: Calendar access is used solely to check your availability and to create booking events on your behalf. We do not analyse, export, or use calendar data for any other purpose.
Storage: OAuth access and refresh tokens are stored encrypted. No calendar event content (titles, descriptions, attendee details) is stored on CoPortal’s servers — only the free/busy time windows retrieved in real time for availability computation.
Retention & deletion: Stored tokens and any Google-derived availability data are removed when you disconnect your Google Calendar connection from CoPortal’s settings, or when you close your CoPortal account. You can also revoke access at any time from your Google Account at myaccount.google.com/permissions.
Google’s use of information received from CoPortal is subject to the Google API Services User Data Policy, including the Limited Use requirements.
To deliver the service, we share data with the following sub-processors. Each is subject to their own privacy policy and data processing obligations:
| Provider | Purpose | Data location |
|---|---|---|
| Supabase | Database, file storage (including receipts and project update photos), authentication | AWS eu-west-1 (Ireland) |
| Vercel | Application hosting | US / EU (edge) |
| Resend | Transactional email delivery | US |
| Paystack | Payment processing | South Africa / Nigeria |
| Xero (optional) | Accounting sync (subscriber-initiated) | New Zealand / AU |
| QuickBooks (optional) | Accounting sync (subscriber-initiated) | US |
| Sage Business Cloud (optional) | Accounting sync (subscriber-initiated) | UK / EU |
| Microsoft (Business Central, optional) | ERP sync — invoices, customers, projects (subscriber-initiated, Enterprise plan) | EU / US (Azure) |
| Zapier (optional) | Automation event delivery (subscriber-initiated, Agency+ plan) | US |
| Google (SSO, optional) | Team member authentication via Google Workspace SSO (Enterprise plan, subscriber-configured) | US / EU |
| Google (Calendar, optional) | Availability checking (free/busy only) and booking event creation via Google Calendar OAuth — scheduling feature, subscriber-initiated | US / EU |
| Microsoft (SSO, optional) | Team member authentication via Microsoft 365 SSO (Enterprise plan, subscriber-configured) | EU / US (Azure) |
| OpenAI | AI-assisted content generation (quotes, invoices, summaries) | US |
| Anthropic (Claude) | AI-assisted content generation (quotes, invoices, summaries) — fallback / extended-context tier | US |
| Google (Gemini) | AI-assisted content generation (quotes, invoices, summaries) — additional fallback tier | US / EU |
| Google (Analytics & Ads) | Website analytics and advertising conversion measurement on coportal.io — active from arrival, and stopped for good in that browser once you decline (see section 8) | US / EU |
Where personal data is transferred outside South Africa, we ensure that appropriate safeguards are in place, including contractual protections with each sub-processor. Our AI sub-processors' data processing addenda — incorporating EU Standard Contractual Clauses and a UK Addendum where applicable — are auto-incorporated into our commercial terms with each provider and are publicly available:
Google Analytics and Google Ads are operated by Google LLC and, for users in the European Economic Area, Google Ireland Limited (together, “Google”). Google processes the measurement data described in section 8 partly on our instructions and partly for its own purposes as a separate responsible party under its own privacy policy. This processing begins when you arrive on coportal.io and stops in that browser as soon as you decline; for visitors in the EEA, the UK and Switzerland it does not begin at all unless they accept. Section 8.3 sets out the lawful basis for each case.
As a data subject, you have the following rights, which you may exercise by contacting us at hello@coportal.io:
We will respond to requests within 30 days of receipt.
We retain personal information only for as long as needed to provide the service, secure the platform, comply with law, and maintain required financial and contractual records.
Tax retention overrides erasure. Where you exercise a right of deletion (under POPIA section 24, or equivalent rights under the UK GDPR, EU GDPR, the Australian Privacy Act, the New Zealand Privacy Act, or the Singapore PDPA) over a record that we are legally obliged to retain — including receipts, invoices, signed quotes, payment records, and the corresponding tax registers — we will instead restrict processing of that record to the purposes required to satisfy our legal obligations until the applicable retention window passes, and only then delete it. We will confirm in writing when this exception is being applied and explain which retention rule is engaged. Where a receipt is deleted at the subscriber’s request, the corresponding expense row may be retained in restricted form for the remainder of the retention period.
Where we do not need to retain identifying information, we may delete, de-link, or anonymise personal account data while retaining the underlying business record.
CoPortal uses two categories of cookies and similar browser storage. They are treated differently, and you control the second one.
8.1 Strictly necessary cookies. These are required for the platform to work at all and cannot be switched off. They include the authentication and session cookies issued by Supabase, cross-site request forgery (CSRF) state cookies used during third-party connections, short-lived portal PIN and email-verification cookies, and your saved interface preferences (such as light or dark theme). No advertising or analytics identifiers are stored in these cookies. We rely on section 11(1)(b) and section 11(1)(f) of POPIA — processing necessary to perform our contract with you and necessary for our legitimate interest in operating and securing the service. You can block them in your browser, but the service will not function if you do.
8.2 Analytics and advertising cookies. We load Google Analytics 4 and Google Ads conversion measurement, supplied by Google LLC and, for users in the European Economic Area, Google Ireland Limited (together, “Google”). These set cookies and identifiers in your browser — typically cookies whose names begin with _ga (Google Analytics) and _gcl (Google Ads click measurement) — and record:
Why: to measure which of our advertisements and pages actually produce signups, so that we do not spend on advertising that does not work. That is the only purpose. We do not sell, rent, or trade this data. We do not use it to make automated decisions or profiling decisions about you under section 71 of POPIA. We do not send your workspace content, client records, invoices, messages, or uploaded files to Google, and we do not use analytics data to target advertising at you inside the product.
8.3 Lawful basis and your choice. This website is aimed at South Africa, and for visitors outside the European Economic Area, the United Kingdom and Switzerland we rely on section 11(1)(f) of POPIA — processing necessary for our legitimate interest in knowing whether the advertising we pay for actually works. We are not relying on your prior consent, so it matters that you know exactly what that means in practice.
Measurement starts when you arrive. The Google tag loads with the page and the cookies described in 8.2 are set from your first pageview, before you have made any choice. A cookie notice appears shortly after the page loads. This policy and that notice are the notification POPIA section 18 requires, and the Decline button is the objection route POPIA section 11(3)(b) requires. We are not asking you to accept anything in order to use the site, and declining costs you nothing.
You can decline at any time — on your first visit or months later — from the Cookie preferences link in the footer of our public coportal.io pages, or from the control at the end of this section, or from the notice itself when it is on screen. Declining does three things: it instructs Google to stop reading and writing analytics and advertising cookies and identifiers, it deletes the _ga and _gcl cookies already set in that browser, and it stops us sending any further measurement events. Your decision is stored in that browser and is applied before the Google tag loads on every later visit, so no analytics or advertising cookie is set or read again in that browser. To be precise rather than reassuring: the tag file itself still loads and, as described above for EEA visitors, may send Google cookieless pings that carry no identifier and cannot be tied back to you or to a returning browser. Being browser-local, the decision does not follow you to another device, and clearing your browser storage clears it. Declining does not erase what was already collected before you declined — for that, email our Information Officer and we will action an erasure request with Google.
Visitors in the EEA, the UK and Switzerland are treated differently, because consent must come first there. For those visitors the Google tag starts in a denied state: it sets no analytics or advertising cookie, reads none, and sends Google only cookieless pings, unless and until you press Accept on the notice. Where you do accept, you may withdraw that consent at any time by the same route, without affecting the lawfulness of the processing carried out beforehand.
You can also, independently of us: clear or block cookies in your browser settings; install Google’s Analytics Opt-out Browser Add-on; manage the advertising settings on your own Google account at myadcenter.google.com; or object to this processing by emailing our Information Officer at hello@coportal.io, in which case we will action it and confirm in writing.
8.4 Transfers and retention. Google processes this data on servers outside South Africa, primarily in the United States and the European Union, under the Google Ads Data Processing Terms and its own privacy policy. Analytics records are held by Google for the retention period configured on our Analytics property and are then deleted or aggregated by Google; CoPortal keeps only aggregated reporting derived from them. Google’s own handling of this data is described in the Google Privacy Policy and in How Google uses information from sites that use our services.
We implement appropriate technical and organisational measures to protect personal information, including:
No system is completely immune to security incidents. In the event of a data breach affecting your personal information, we will notify you and the Information Regulator as required by POPIA.
When you use CoPortal to manage your clients, you are the responsible party for your clients' personal information. We process it solely on your instructions as an operator. You are responsible for:
The Service is intended for business use by adults (18+). We do not knowingly collect personal information from anyone under the age of 18. If you believe a minor has provided us with personal information, please contact us at hello@coportal.io.
We may update this Privacy Policy from time to time. For material changes, we will notify subscribers by email at least 14 days before the new policy takes effect. The current version is always available at coportal.io/privacy.
For any privacy-related queries, data rights requests, or concerns, contact our Information Officer:
CoPortal Digital (Pty) Ltd (trading as CoPortal)
Registration number: K2026315446
Email: hello@coportal.io
Website: coportal.io
This Privacy Policy was last updated on 31 July 2026 and is compliant with the Protection of Personal Information Act 4 of 2013 (POPIA).