← Blog

EU Data Act AI Controls Mapping: Switching, Residency and Trade Secrets at the Request Boundary

Chapter VI of Regulation (EU) 2023/2854 governs switching between data processing services, Article 32 governs third-country governmental access to non-personal data held in the Union, and Articles 4 and 5 carry trade-secret protections into shared data. This maps those obligations onto the technical control that enforces each one for AI traffic, the point in the request path where it fires, and the evidence artifact a customer, a regulator, or an exit clause reads.

ByParminder Singh· Founder & CEO, DeepInspect Inc.
Compliance & Regulationcomplianceregulationpolicy-enforcementai-governanceai-security
EU Data Act AI Controls Mapping: Switching, Residency and Trade Secrets at the Request Boundary

Article 32 of the EU Data Act asks a provider of data processing services to prevent third-country governmental access to non-personal data held in the Union where that access would conflict with Union law. For a stored database, satisfying that starts with a region setting. For AI traffic, it starts with a routing decision that a library can make automatically at 03:00 in response to a health check, sending a context window full of commercial data to whichever endpoint answered fastest.

Regulation (EU) 2023/2854 became applicable on 12 September 2025, and from 12 January 2027 no switching charges may be imposed at all. The obligations that reach AI deployments cluster in three places: Chapter VI on switching and interoperability, Article 32 on international governmental access, and the trade-secret protections carried in Articles 4 and 5. Each one resolves to a control that fires in the same HTTPS request.

Article 32: destination and region as an enforced choice

The obligation covers adequate technical, organisational, and legal measures to prevent access to and transfer of non-personal data held in the Union where that conflicts with Union or member state law. Third-country judgments and administrative decisions are enforceable where they rest on an international agreement in force, such as a mutual legal assistance treaty.

The control is destination-aware routing against a region-scoped allowlist, with the request failing closed when no compliant endpoint is available rather than falling back to the nearest healthy one. It fires at routing, before the connection opens. The evidence is a per-request destination and region record, and the two halves are covered in AI gateway data residency and AI data residency controls.

Article 30: exportable evidence, not just exportable data

Article 30 requires source providers to facilitate switching with capabilities, information, documentation, and technical support, and to offer open interfaces free of charge with enough documentation for interoperable software to be built against them. Providers of infrastructural services take reasonable measures so the customer reaches functional equivalence on a destination service of the same type.

For AI the control is producing decision records in a published schema held outside any single vendor's console. It fires at write time, on every request, which is the only point at which the schema decision can still be made cheaply. The evidence is an on-demand export, and the field set is covered in AI audit log schema JSON.

Article 25: contractual switching terms that survive contact with engineering

Article 25 governs contractual terms concerning switching, including notice periods for initiating a switch and the transitional period during which the source provider keeps assisting. A clause committing to a return of customer data inside a defined window commits an engineering team to a retrieval path that works under a deadline.

The control is a rehearsed export with retention set to cover the contractual window. It fires long before any switch, which is what makes it the row teams skip. The evidence is a timed export run against a named date range, with the retention policy behind it documented in AI audit log retention requirements.

Article 29: itemising what a switch actually costs

Until 12 January 2027, reduced switching charges may not exceed the costs directly linked to the switching process. After that date they go to zero. A provider charging anything in the meantime has to be able to itemise the work.

The control is instrumentation of the export path so the operations involved are countable. It fires during the switch itself. The evidence is an itemised switching record, which is also the artifact that makes the eventual move to zero charges a pricing decision rather than a scramble.

Articles 4 and 5: trade secrets inside the context window

Article 4 sets the rights and obligations of users and data holders over product data and related service data, and Article 5 covers sharing that data with third parties. Both condition disclosure of trade secrets on agreed measures that preserve confidentiality.

The control is prompt-level classification with per-role policy, so content categories carrying commercial confidentiality are evaluated before they enter a payload bound for a third-party endpoint. It fires after payload assembly and before transmission. The evidence is a per-request classification decision joined to the policy outcome, produced by prompt-level DLP.

Articles 33 and 35: interoperability of the record itself

Article 33 sets essential requirements for interoperability of data, data sharing mechanisms, and services. Article 35 covers interoperability of data processing services, including open interfaces and published specifications.

The control is a documented, versioned record schema with stable field semantics. It fires at design time and is enforced at write time. The evidence is the published specification alongside a sample record, which is what lets one store answer several frameworks instead of one.

The mapping at a glance

[@portabletext/react] Unknown block type "code", specify a component for it in the `components.types` prop

Why fail-open routing is the row that fails an audit

A routing layer configured to retry against any healthy endpoint is doing what a reliability engineer asked it to do. Under Article 32 that same behaviour is an unrecorded transfer of non-personal data outside the region the customer was told it stayed in, made by software, at a time nobody was watching.

My frank opinion: this is the control where compliance and reliability genuinely pull against each other, and the resolution has to be an explicit decision rather than a default. Failing closed on a residency constraint means accepting that some requests return an error instead of an answer. Teams that have not made that call have made it implicitly, in favour of availability, and the fail-open versus fail-closed trade-off deserves to be written down before an auditor asks which way it goes.

One record, several obligations

Five of the six rows above are satisfied by the same per-request record with different fields read out of it. The destination and region answer Article 32, the schema and export answer Articles 30, 33, and 35, the classification answers Articles 4 and 5, and the retention window answers Article 25. The Data Act audit-evidence view covers what each artifact looks like when someone asks for it.

DeepInspect

Each row above resolves to an enforcement point in the request path, and DeepInspect is that point. It sits inline between your users or agents and the LLM APIs they call as a stateless proxy, evaluates identity, classification, and destination on every request, enforces per-role and per-route policy with a fail-closed default including region constraints, and writes a signed decision record before the response returns.

Because the record is written outside the application and held in a documented schema, an Article 30 export becomes a query and an Article 32 question about where non-personal data went has an answer with timestamps attached. Book a technical deep dive at deepinspect.ai.

Frequently asked questions

Does the EU Data Act apply to AI services?

The Act regulates data processing services, defined broadly enough to cover infrastructure, platform, and software services delivered on demand over a network. A hosted inference API offered on those terms falls inside the switching, interoperability, and Article 32 obligations, and an enterprise offering an AI feature to its own customers sits on the provider side of that relationship. Service-specific classification belongs with counsel.

What changes on 12 January 2027?

Switching charges go to zero. Between 12 September 2025 and that date, providers may impose reduced charges capped at the costs directly linked to the switching process. After it, no switching charge may be imposed at all, which turns portability from a commercial lever into a design constraint on how records are stored and exported.

How is Article 32 different from GDPR transfer rules?

Article 32 covers non-personal data held in the Union, which is the category the GDPR transfer regime leaves outside its scope. Commercial data with no personal element travelling inside a prompt to a third-country endpoint falls under Article 32 rather than under GDPR AI compliance obligations, and one per-request destination record answers both questions from the same store.

What does functional equivalence mean for an AI deployment?

Article 30 defines it as a minimum level of functionality in the environment of a new service of the same type after switching, and it applies to providers of infrastructural services. For AI deployments the practical reading is that prompts, completions, and the decision records around them have to arrive at the destination service in a state that lets the same policies run again, which requires a documented schema rather than a database dump.

Which control should we build first?

Region-scoped destination enforcement with recording, because it answers Article 32 and produces the destination log the switching rows depend on. A per-request record naming the endpoint and region is also the artifact that surfaces routing behaviour nobody documented, which is the finding that tends to reset the rest of the plan.