Sub-processors
The third parties Scholé engages to process personal data on behalf of its customers, as referenced in section 8 of the Data Processing Agreement.
We give customers at least 30 days' written notice before adding or replacing a sub-processor, per DPA section 8. Entries marked to be confirmed are being verified with the provider and will be updated here.
- Transfer basis for US entities is stated as the mechanism we rely on in principle; per-provider DPA and Data Privacy Framework certification status is being verified and filed (see 'to be confirmed').
- LLM inference requests routed through OpenRouter may reach only the seven hosts listed under OpenRouter below (settings.OPENROUTER_PROVIDER_ALLOWLIST, PR #3342): every request carries provider.only with that allowlist, data_collection=deny and zdr=true (OpenRouter's Zero Data Retention filter), and the same policy is enforced on the wire for every HTTP client pointed at OpenRouter. The per-host data policy shown below is OpenRouter's published data policy (openrouter.ai/api/frontend/v1/all-providers and /api/v1/endpoints/zdr, read 2026-09-27), not a contractual commitment to Scholé (DPIA R3).
- Cardholder data is entered on Stripe-hosted pages and never reaches Schole systems.
- MiniMax, StreamLake, SiliconFlow and DekaLLM, Black Forest Labs (FLUX.2 Pro image generation), and the first-party OpenAI and Anthropic endpoints are not on the allowlist and receive no data through OpenRouter (PR #3342, founders' decision of 2026-09-27). FLUX.2 Pro stays off until Black Forest Labs confirms a training opt-out for OpenRouter traffic; lesson illustrations use google/gemini-2.5-flash-image on Google Vertex AI.
- Known uncertainty: OpenRouter does not publish which region serves its requests. The Microsoft Azure, Google Vertex AI and Amazon Bedrock slugs also match those companies' global endpoints (any region), and GroqCloud serves from the United States, Helsinki (EU), Canada and Dammam (Saudi Arabia, no adequacy decision). Serving region to be confirmed.
Current sub-processors
| Sub-processor | Country | Region of processing | Purpose | Data categories | Transfer basis | Added |
|---|---|---|---|---|---|---|
| Microsoft Azure (hosting) Microsoft Ireland Operations Ltd | IE | Switzerland North (AKS cluster, PostgreSQL, Blob Storage, Front Door, Key Vault, Log Analytics, Video Indexer, AI Search) | Platform hosting: application servers, database, file and media storage, edge network, logs and metrics, video indexing and search indexes |
|
Swiss/EU adequacyDPA: Microsoft Products and Services DPA (to be confirmed on file) | 2026-09-25 |
| Microsoft Azure AI (Azure OpenAI, Azure AI Foundry, Document Intelligence) Microsoft Corporation | US | Azure OpenAI and AI Foundry accounts in East US 2, Central US and Switzerland North; 29 of 30 deployments are GlobalStandard, so inference may run in any Azure region while data at rest stays in the account region. Document Intelligence in West Europe. Two Azure Speech accounts exist (East US and Switzerland North, resource group ScholéAvatar) but no code in the schole_backend repository calls them as of 2026-09-25. Inference region decision pending (issue #3279) | AI inference: lesson and chat generation when OpenRouter is disabled or as fallback, embeddings, realtime voice (gpt-realtime), text-to-speech (gpt-4o-mini-tts), Anthropic models via Azure AI Foundry, document text extraction (Document Intelligence) |
|
EU SCCs + UK Addendum + Swiss addendum; DPF where certified (to be confirmed)DPA: Microsoft Products and Services DPA (to be confirmed on file) | 2026-09-25 |
OpenRouter
OpenRouter, Inc.
Model vendors (whose models are used; they receive data only if listed as a host below):
|
US | United States (routing); inference by one of the seven allowlisted hosts below, in a region the host chooses (not pinned; see each host) | LLM request routing for lesson generation, tutoring chat, role-play voice agents and content authoring (OPENROUTER_ENABLED=true in production) |
|
EU SCCs + UK Addendum + Swiss addendum; DPF where certified (to be confirmed)DPA: to be confirmed | 2026-09-25 |
| Groq (direct API) Groq, Inc. | US | United States | Speech-to-text (Whisper large-v3) for chat voice input and role-play voice, called directly at api.groq.com when GROQ_API_KEY is configured; also the OpenAI-compatible fallback endpoint when no Cerebras key is set |
|
EU SCCs + UK Addendum + Swiss addendum; DPF where certified (to be confirmed)DPA: to be confirmed | 2026-09-25 |
| OpenAI (direct API) OpenAI, L.L.C. | US | United States | Speech-to-text fallback (whisper-1) at api.openai.com when the Groq transcription path fails |
|
EU SCCs + UK Addendum + Swiss addendum; DPF where certified (to be confirmed)DPA: to be confirmed | 2026-09-25 |
| Cerebras (direct API) Cerebras Systems Inc. | US | United States | Direct OpenAI-compatible inference endpoint (gpt-oss-120b) for a legacy routing path when CEREBRAS_API_KEY is configured |
|
EU SCCs + UK Addendum + Swiss addendum; DPF where certified (to be confirmed)DPA: to be confirmed | 2026-09-25 |
| Amazon Web Services (browser-extension agent only) Amazon Web Services EMEA SARL | LU | eu-central-1 (Frankfurt) | Amazon Bedrock (Anthropic Claude Haiku) inference, Amazon Transcribe and Amazon Polly for the Ole browser-extension companion agent. Not used by the web platform. |
|
Swiss/EU adequacyDPA: AWS GDPR DPA (to be confirmed on file) | 2026-09-25 |
| PostHog PostHog, Inc. | US | EU cloud, Frankfurt (eu.i.posthog.com), project 92916; a separate US-cloud project "Schole Studies" serves the pre-test study site (backend/config/settings.py comment; apps/curriculums/services/end_survey.py) | Product analytics and in-product surveys; consent-gated for analytics events |
|
EU SCCs + UK Addendum + Swiss addendum; DPF where certified (to be confirmed)DPA: to be confirmed | 2026-09-25 |
| Sentry Functional Software, Inc. | US | EU data residency, Frankfurt (ingest.de.sentry.io) | Error and performance monitoring for the backend and the web app |
|
EU SCCs + UK Addendum + Swiss addendum; DPF where certified (to be confirmed)DPA: to be confirmed | 2026-09-25 |
| HubSpot HubSpot, Inc. | US | United States (data hosting region to be confirmed) | CRM, lifecycle and marketing email, support tickets; marketing consent mirrored from ConsentRecord |
|
EU SCCs + UK Addendum + Swiss addendum; DPF where certified (to be confirmed)DPA: to be confirmed | 2026-09-25 |
| Stripe Stripe Payments Europe, Ltd. | IE | European Union (Stripe may process in the United States under its own transfer mechanisms) | Subscription payments and invoicing. Cardholder data is entered on Stripe-hosted pages and never reaches Schole. |
|
Swiss/EU adequacyDPA: Stripe Data Processing Agreement (to be confirmed on file) | 2026-09-25 |
| Mercury (bank-transfer invoices) Mercury Technologies, Inc. | US | United States | Invoice creation and payout reconciliation for organizations paying by bank transfer |
|
EU SCCs + UK Addendum + Swiss addendum; DPF where certified (to be confirmed)DPA: to be confirmed | 2026-09-25 |
| Certifier (credential issuing) Certifier sp. z o.o. (Kraków, Poland; KRS 0000863560) | PL | AWS, Europe region, according to Certifier's legal and security page (exact AWS region to be confirmed) | Hosts the credentials issued before the in-house credential cutover at credsverse.com (Certifier's credential domain); 436 vendor-era credentials stay live there. New issuing through Certifier is off in production (CERTIFIER_ENABLED=False in infra/k8s/overlays/prod/configmap-backend-patch.yaml); badges now issue from Scholé's own verification page |
|
Intra-EEA (Poland): no third-country transfer from the EEA; Swiss/EU adequacy for Swiss dataDPA: Certifier DPA (to be confirmed on file) | 2026-09-25 |
| Google Workspace Google LLC | US | United States and European Union | Company email (transactional mail is sent through the hey@schole.ai mailbox), shared documents and drives, Google sign-in (OAuth) |
|
EU SCCs + UK Addendum + Swiss addendum; DPF where certified (to be confirmed)DPA: Google Cloud / Workspace Data Processing Addendum (to be confirmed on file) | 2026-09-25 |
| GitHub GitHub, Inc. | US | United States | Source code hosting, CI pipelines, issue tracking and automated review |
|
EU SCCs + UK Addendum + Swiss addendum; DPF where certified (to be confirmed)DPA: GitHub Data Protection Agreement (to be confirmed on file) | 2026-09-25 |
| Golpo AI Golpo (legal entity to be confirmed) | to be confirmed | Not yet confirmed. The code calls api.golpoai.com through the golpo SDK and shows nothing about where Golpo processes or stores data | Whiteboard explainer video generation for lesson sections (apps/lesson_lab/services/golpo.py): the section is uploaded as a JSON file and Golpo returns a narrated video and its script. Used for customer-authored lessons in Lesson Lab when an author asks for a video, and for Scholé's own lessons. The video is served from the URL Golpo returns |
|
To be confirmed once Golpo's location and processing region are known; EU SCCs + UK Addendum + Swiss addendum if outside an adequacy decisionDPA: to be confirmed | 2026-10-01 |
Internal systems (not sub-processors)
| System | Hosting | Purpose | Data categories | Why it is not a sub-processor |
|---|---|---|---|---|
| Langfuse (LLM tracing, being removed, PR #3325) | Self-hosted on the nonprod AKS cluster, Switzerland North (langfuse.dev.schole.ai), and receives production traces. Being removed entirely (issue #3280, PR #3325) | Traces of LLM calls for debugging and quality review |
|
Runs on Schole-controlled infrastructure; no third party receives the data. |