Reference

Signing Keys by Proxy

Every signature answers two questions: who issued the key, and who granted the signer the right to use it. When a consultancy, a plugin or a platform signs on your behalf with a certificate authority (CA) you never chose, you inherit that CA by proxy: its trust, its revocation service, its jurisdiction, and its failures. October 2026 showed what that costs when the CA is distrusted. This article sets out when you use a CA by proxy, what locks out when its chain breaks, how ECC/SAP signing fits, what each market requires, and how to build a Globalization MVP security first, with a cutover checklist to get there.

What are signing keys, and where are they used?

A signing key is a business's digital seal. It comes in two halves. The private key stays with whoever signs, like the stamp locked in a notary's drawer. The public key is shared with everyone, so anyone can check that a stamp is genuine without asking the signer. A valid signature proves two things: who signed, and that nothing changed after they signed. Change one character of a signed contract, firmware file or code release and the check fails.

You already rely on signing keys every day, usually without seeing them:

WhereWhat is signed, by whomWhat it provesIf the key fails
Code on GitHubCommits and pushes, with a developer's RSA or Ed25519 keyWho made the change, and that it wasn't alteredAnyone with the key can push as that person: revoke it and issue a new one
Firmware and SBOMsThe firmware image and its parts list (SBOM), by the manufacturerThe device runs the real update, and the parts list matches what shipped; the EU Cyber Resilience Act expects thisDevices reject updates, or accept a fake one
E-signatures on legal documentsContracts, SOWs and filings, with a certificate from a certificate authority (CA)This person agreed to this exact document, at this timeSigned documents show as invalid if the CA is distrusted
QA attestations in AgileReview approvals, test runs and release builds, by reviewers and the CI pipelineThe build was reviewed and tested, and no gate was skippedNo proof a release passed QA: an audit gap

The business question is never only "is it signed?" It is also: whose key, issued by whom, and who granted them the right to sign for us? A developer's key proves who pushed, but not whether they were allowed to push to that repository. A consultant's certificate proves who signed, but not whether they could sign for your company. That gap between issuer and grant is what this article is about, and it grows when the key belongs to someone else: a vendor, a plugin, or a consultancy signing by proxy.

Why this matters now: keys have to move on events

Historically, signatures lived inside SLA-bound enterprise applications with a heavy price tag, such as SAP and AEM, and governance of those keys was assigned to a consulting team. The keys sat inside the application, and changing who could sign meant a change request, a consulting ticket and a release window. That worked when signing happened a few times a quarter.

It also fitted what those systems were built for. SAP grew from accounting: accumulated ledger rows, in effect spreadsheets at enterprise scale, posted in batches by trusted staff on an internal network. Records like that never needed memory safety, because nothing untrusted reached the code at run time. Attestation was a timestamp, the posting date and the change log, not a signature anyone outside could verify. Data subject request (DSR) evidence was held in pay-to-use data repositories: vendor add-ons and archives billed by volume or by query, so proving a deletion meant paying to read your own records.

Then: SLA applicationNow: event-driven AI
RecordsLedger rows posted in batches by trusted staffEvents from shoppers, partners and agents, arriving all the time
Runtime exposureInternal network; memory safety not a requirementInternet-facing edge, where memory-safe code (Rust, Wasm) is the baseline
AttestationA timestamp and a change logA signature anyone can verify offline, against a key you publish
DSR evidenceHeld in pay-to-use repositoriesAn append-only ledger you own, with a receipt from every system that acted
Key changesChange request, consulting ticket, release windowIssued, rotated or revoked on the event

AI work signs on every event: each pull request, each consent change, each new market. Three capabilities stay blocked until the organization can exchange keys on the event, issuing, rotating or revoking a key or grant at the moment something happens:

AI capabilityWhat it has to sign on each eventBlocked when keys live in an SLA application
AI code reviewA review attestation per pull request, with a short-lived key the CI pipeline can verifyKeys are held in vendor or consultancy tooling, with no way to issue one per review
Data governance by mandateA scoped, expiring mandate on every agent action, revoked the moment consent changesGrants change through tickets and release windows, not on the consent event
AI globalization weightingEach market's weighting or adapter, published as a signed record when that market's rules or data changeWeights and configuration ship on the application's release cycle, so a market can't be signed for when its rule changes

The risks of leaving keys there. When signing and its governance sit with an external team inside an SLA application, the organization carries risks it doesn't control:

RiskWhat happensWith key exchange on events you own
Single point of failure: one developerThe one person who holds a key, or knows how to rotate it, is away or leaves. Releases and revocations stallKeys live in the organization's key store, not with a person; rotation needs two approvers and follows a written runbook
External supply chain accessA per-seat plugin or application, run by an outside team, holds standing credentials into your systems. Their compromise becomes yoursEach vendor gets a scoped, expiring grant and its own certificate, revocable alone, and every access is a signed record
Knowledge and training data lost at the endWhen the subscription or the external team's contract ends, the knowledge base, prompts, labelled data and adapters stay on their platformThe corpus is published as signed records you hold; adapters and training sets sit in your own registry; exit terms require export
Time zone gapAn incident starts while the external team is offline, and nobody on your side can rotate or revokeRevocation is automated on the event, and your own on-call staff hold pre-approved emergency mandates
Crisis mitigation on breachDuring a breach, nobody can say who holds which key, revoke it quickly, or show regulators what happened when. GDPR allows 72 hours to notifyOne switch per key and per grant; revocation reaches every system on the event; the ledger's timestamps are the evidence for the notification
Plugins without memory safety, with hard-coded upsertsA plugin or application writes straight into the database with hard-coded upserts, outside the event path: no signature, no consent check, no ledger entry. A memory bug in it can expose keys held in the same processPlugins hold no signing keys and no direct write access; every write passes the gate as a signed event; the gate runs memory-safe code (Rust, Wasm)
Unsigned device commands and soft firmware: householdsHome appliances accept commands from anyone who reaches their login page, as the supermarket controllers did in October 2026, and stream usage data that shows when the home is emptyAn encrypted streaming gate the household controls, a certificate per appliance with household-held keys, signed commands within firmware limits, and hardened, signed firmware

Distributed keys and rolling data gating. The answer to these risks is to spread keys across the systems that act, each with its own scoped grant, and to have AI check every write against consent, market rules and mandates as it arrives: a gate that rolls with the data instead of a batch review after it. That model only holds if nothing writes around the gate. A plugin that hard-codes upserts into the data store, or runs in a runtime without memory safety, is a side door: its writes carry no signature, and a single memory-corruption bug can hand an attacker the keys and the write path together. October 2026 made the point twice: php2shell gave unauthenticated code execution in the PHP runtime under every WordPress, Drupal, Magento, Joomla and Laravel host, whatever the plugin code, and an AI gateway package was compromised for the second time this year, again stealing signing keys and AI provider keys from the environment it ran in.

Key exchange on events is what moves signing out of the SLA application and into infrastructure the organization owns. The rest of this article shows what that takes: whose keys, which grants, and where each market's rules apply.

Does the client use eMudhra by proxy? Three parties, four situations, relying-party dependencies, AI/trust/boundary lockout, contract clauses, certificates you control, ECC/SAP signing and per-country rules

1. When you use a CA by proxy

Three parties are involved: the client (you), the consultancy or vendor, and the CA that issued the consultancy's certificate. Whether you use that CA depends on whose certificate signs and who runs the system.

SituationDo you use the CA?Why
The consultancy signs its own documents (SOW, invoice, sign-off)NoYou are a relying party: you validate the chain and revocation. No account, key or contract with the CA
Your people sign through the consultancy's setup (its Acrobat Sign account or eSign portal)Yes, indirectlyYour signers' identity data goes to the CA: effectively a subprocessor you never chose
The consultancy builds or runs your systems and installs the CA's certificates in your AEM, Acrobat Sign or SAPYes, directlyIt is now your configuration; the consultancy only made the choice
You sign with your own CA and only receive the consultancy's signed documentsNoYou need to trust the CA's root, usually through Adobe's trust list (AATL) or the OS store

Even as a relying party only, you depend on the CA for revocation checks (its OCSP responder or CRL; long-term validation helps only if it was embedded at signing), trust in its root, and the legal weight of the signature in your jurisdiction.

These are patterns, not claims about any firm. A contract, or the certificate chain of a signed PDF, shows which provider a given consultancy uses.

2. Why it is not hypothetical: October 2026

A key ceremony at eMudhra on 30 April 2025 generated eight intermediate CA keys with too little randomness. Between 17 and 20 October 2026 a researcher recovered all eight private keys from the public certificates, and Chrome, Mozilla, Apple and Microsoft blocked them: six TLS intermediates and two code-signing intermediates. Chrome removes the emSign ECC Root CA - G3 from devices from 27 October. Go, NSS, Ubuntu, Debian and Composer shipped trust-store fixes on 20 October, and the Node.js releases of 21 October also reject the chains. India's Digital Signature Certificates run under India's own CA licensing rather than the browser root programs and, as reported, were not directly affected.

The keys were not stolen; they were computable. An audited process with certified hardware still produced weak keys, so the lesson is about provenance: know which of your certificates chain through which CA, and sign your own records with keys you own and can retire. Background: Hydrogen or bespoke stack, Org Trust Layer, and reporting by The Hacker News and Help Net Security.

The same month, on the shop floor: refrigeration controllers in France and the UK

The eMudhra keys were weak; in October's other incident there were no keys at all. On the night of 11 October 2026, attackers reached the refrigeration controllers of hundreds of French supermarkets, including Intermarché, Netto, Coopérative U, Carrefour, Monoprix and E.Leclerc stores. The Danfoss controllers ran web servers open to the internet, and many accepted the username admin with the current date as the password. The attackers set cases to defrost with food inside: some reached about 50 °C within six hours, some equipment melted or caught fire, and the change went unnoticed because it raised no alarm and no staff were present. No data was stolen; the losses ran to tens of millions of euros. Danfoss had shipped a fix for its current AK-SM800A series in August 2025, but older units were end-of-life. The Prime Minister asked ANSSI to investigate, and its director said the controllers urgently needed disconnecting from the internet.

On 13 October, UK Cyber Defence found more than 800 UK refrigeration and building controllers with their login pages on the open internet. By early November, UK victims were confirmed: a West London wholesaler, Langridge Organic, found six of its ten cold-room controllers, running Copeland's Dixell XWEB software, set to defrost with a 150 °F maximum and their temperature alerts switched off. Manual checks saved its stock. The NCSC said it was aware of a small number of affected UK organisations. On 2 November, similar attacks hit supermarket refrigeration in Belgium, Luxembourg, the Netherlands, Sweden, Estonia, Ireland and Portugal. No one has been publicly identified as responsible.

Both incidents are the same signing-keys problem. A controller that accepts any command from anyone who reaches its login page has no issuer (no device or operator certificate) and no grant (nothing says who may change a setpoint, by how much, or when). The attacker also switched off the alarm through the same channel, so the record of what changed was lost with it. Sources: Wikipedia, Public Sénat, and The Grocer on UK exposure and UK victims.

Households: where humans matter the most

Security counts the most where humans matter the most: in our households. The October attacks hit shops, but the same class of device sits in homes: fridges and freezers, heat pumps, boilers, thermostats and EV chargers, all on the household network and most talking to a manufacturer's cloud. A home has no security team and no morning temperature check. If a supermarket controller can be set to defrost from the internet, a home appliance with an open login page or a default password can be too, and its data stream says far more about the household: when the fridge door opens, when the heating comes on, when nobody is home.

Why households wire them up. The benefits are real, and they are why the answer is to secure the stream, not to unplug:

UseBenefit to the household
Heating, heat pumps and thermostatsLower bills: heating runs on schedules and on cheaper time-of-use tariffs, and only in rooms in use
Fridges and freezersLess food waste: a warning when the door is left open or the temperature drifts
Cameras, doorbells and baby monitorsWatching over children, pets and deliveries while away
Sensors for older relativesLiving independently for longer, with an alert to family if something changes
EV chargers and home batteriesCharging when power is cheapest and cleanest
The TV and phone togetherOne screen and one remote for the whole home

The TV and the phone have become the home's micro-network. Many households now run the home from a phone on the sofa and a smart TV on the wall: casting to the screen, using the phone as the remote, and letting the TV act as the hub for lights, cameras, speakers and appliances. Newer devices join a local mesh (Thread) and a common smart-home standard (Matter), so the phone, the TV and each device talk inside the home, without a round trip to every maker's cloud. That is good for speed, for working when the internet is down, and for privacy.

It also makes the TV and the phone the gate. Whatever reaches them can reach every device paired to them, and TVs often run for years without updates while streaming viewing data to their makers. Matter shows the right pattern: every certified device carries its own device attestation certificate from its manufacturer, and pairing gives it a fresh operational certificate issued by the household's own network, so the household, not the maker, holds the keys that let a device join or leave. The household's gate should work the same way for everything else: local first, encrypted, and under keys the household holds.

Cameras show what is at stake. In late November 2025, Korean police arrested four people over the hacking of about 120,000 internet-connected cameras in homes and businesses, including private homes, a Pilates studio and a gynecology clinic. Two of them accounted for most of the hacks and made sexually exploitative videos from the footage, which were sold on an overseas site; police also arrested buyers and moved to close the site. The way in was simple: the cameras had weak passwords, such as repeated characters or sequential numbers and letters. Many had been installed to watch over children and pets. A leaked video can't be recalled the way a spoiled freezer can be restocked, which is why the stream itself has to be gated. Sources: BleepingComputer, Kaspersky, The Star.

Households need two things before anything else: an encrypted data streaming gate, and hardened firmware.

RequirementWhat it means at homeWhat it stops
No open login page, no default passwordEach appliance ships with a unique credential and no management page on the internetThe October method: find the page, type admin and the date
An encrypted data streaming gateTelemetry and camera video leave the home only encrypted, through one gate the household controls, and only for the purposes the household agreed toUsage data revealing when the home is empty; silent streaming to parties the household never chose
Keys held by the householdEvery appliance has its own certificate, and the household holds the keys that pair it to apps and services, so access can be revoked one device or one service at a timeA manufacturer, installer or app keeping standing access after the household has moved on
Signed commands within safe limitsRemote commands from an app or cloud are signed, checked against what the household granted, and kept within limits set in firmwareA fridge told to run a 50 °C defrost, or a heating system turned off in winter
Hardened firmwareUpdates are signed and verified before install, the device boots only signed code, memory-safe components handle network input, and an SBOM lists what is insideA forged update, a memory-corruption bug becoming remote control, or an unpatched unit nobody knew was vulnerable
A stated support periodThe maker says how long security updates will come, and the device warns before they stopAppliances that keep running years after their last patch, as the end-of-life French controllers did
The TV and phone as the gateThe hub (TV, phone or home hub) gets security updates for as long as it runs the home, appliances sit on their own network segment, and pairing uses the household's own certificates (as Matter does)An old, unpatched TV becoming the way into every device paired to it
Local alarms and local controlAlerts sound on the device and work without the cloud; the cloud can't switch them offAn attacker silencing the warning while changing the setting

The rules are arriving. The UK's product security regime has banned universal default passwords on connectable consumer products since April 2024 and requires a stated support period. In the EU, the Radio Equipment Directive's cybersecurity requirements have applied to wireless devices since August 2025, and the Cyber Resilience Act adds vulnerability reporting from September 2026 and full security obligations, including secure updates and an SBOM, from December 2027.

The same controls protect lights-out sites, where cold rooms, chillers and server cooling run with nobody on the floor; see Entitlement Security.

3. AI security: trust and boundary lockout

A distrusted chain is not a warning. Browsers and runtimes refuse the connection, and everything that depended on it stops.

LockoutWhat stopsSignal
AI lockoutAgents, AI gateways and MCP tools calling an API whose certificate chains through a blocked intermediate fail the TLS handshake, so the tool call never happens. Mandates signed with keys from an exposed environment must be rejected; code-signed packages and adapters fail verificationDenied tool calls, handshake errors in agent logs
Trust lockoutBrowsers, operating systems, Node, Composer and Python's certifi refuse the chain: the site or API is unreachable. Signed documents on the chain show as invalid wherever they are openedUnreachable origins, invalid signature banners
Boundary lockoutEvery crossing (edge to origin, webhooks, feed syncs, partner APIs) is a TLS handshake. Feeds stall and webhooks fail. Consent, opt-out and deletion events stop propagating: a DSR lockoutStalled feeds, growing webhook retries, unacknowledged deletions

Recover faster: keep an inventory of which certificates chain through which CA, automate reissue (ACME) with a second CA ready, queue DSR events so they can be replayed with their timestamps, and sign records with keys you own so they still verify when a public CA does not.

4. Tools and permissions: a certificate is not a grant

A CA proves who holds a certificate. It does not prove what they may sign or do. That needs a grant from the organization: who, what, for how long, revoked on exit. For AI agents the grant is a mandate: scoped to tools and markets, expiring, and checked on every action.

Certificates you control

crm-sync certificate linkXano self-host certificate
What it isLicence grants, upload attestations and deletion records signed with crm-sync's Ed25519 key, published at /.well-known/jwks.jsonSelf-hosted Xano on infrastructure you operate, with a TLS certificate from a CA you choose
How it is checkedcrm-sync.dev/license/verify: anyone verifies offline, with no account and no CA chain that can be distrusted; short links at /v/<hash>, print QR at /license/qr/<hash>.svgYour trust store: confirm the Node and Composer bundles reject the October 2026 eMudhra chains
Key custodyThe platform's signing key; the public half is publishedYour own HSM or key vault, in country

Assets that prove provenance (PDFs and firmware, images, 3D files, docs) are vaulted the same way: each file under its own key, every upload certified, every download granted and recorded in a hash-chained ledger. See the Protected Firmware Asset Management and Download Service and Firmware asset publishing.

ECC/SAP signing: the same scrutiny, plus two ECC-specific risks

What gets signedMechanism in ECCWho usually sets it upProxy risk
PDF forms (invoices, POs, delivery notes)Interactive Forms by Adobe through Adobe Document Services (ADS), with a .pfx credentialConsultants, during the buildDirectly: the CA behind that credential is now yours
Approvals and records (QM, batch records, change master, 21 CFR Part 11)SAP digital signature through SSF, keys in PSE files managed in STRUSTBasis team or consultantsDirectly, if they imported keys or certificates from their CA
Outbound HTTPS (Shopify, Google, banks, tax portals)ICM web server, SSL client PSEs in STRUSTBasis team or consultantsTrust store: ECC may still trust a chain everything around it now refuses
India statutory filings (GST, e-invoice, company filings)Digital Signature Certificates on USB tokensOften the consultancy or an outside CA firmGrant problem: the certificate names a consultant, not the client
Spreadsheets (migration templates, LSMW, Migration Cockpit, reports)Usually unsigned; sometimes Office signatures with a personal certificateConsultantsNo signature at all, so no provenance

Stores: POS registers in sync with warehouse and RMA systems

A point-of-sale register is a device that moves money and stock. When registers, the warehouse management system (WMS) and the returns system (RMA, return merchandise authorization) sync by batch file or shared credentials, nobody can say which register recorded a return, who authorised the refund, or whether the item ever reached the warehouse. Keeping them in sync safely means every step is a signed event from a known device, under a grant, and each system acts only on events it can verify:

EventSigned byWhat the receiving system checksWithout it
Sale at the registerThe register's device certificate, plus the cashier's sessionPrice matches the published record; stock is reduced once; payment is a token, never card dataStock drifts, prices are disputed, and card data enters PCI scope
Return at the counterThe register and cashier, citing the original sale's signed recordThe return matches a real sale and is within policy; an RMA number is issuedRefunds on items never sold there: return fraud
RMA authorisedA service agent, or an AI agent under a mandateRefund limit, market and reason within the grantAgents, contractors or plugins issuing refunds without authority
Item received at the warehouseThe scanner's device certificateThe item matches the RMA and its condition is gradedA refund paid before the item arrives, or stock counted twice
Refund releasedThe payment service, only after the receipt record existsOne refund per RMA, enforced by an idempotency keyDouble refunds when a sync retries
Store goes offlineThe register queues its signed events, each with an ISO 8601 UTC timestampEvents replay in order; duplicates are dropped by keyLost sales and returns, and a store that never reconciles with the warehouse

The same rules from the rest of this article apply: a certificate per register and scanner, revocable one at a time; no plugin writing stock or refunds around the gate; and a ledger that shows, for any refund, which register, which person or agent, and which warehouse receipt it rested on.

5. Knowledge base: publish, don't unlock

Chatbots that answer from locked PDFs, docs, Markdown and spreadsheets, or from raw images and 3D files (JPG, PNG, SVG, WebP, OBJ, STL, FBX, GLB), read sources nobody approved, signed or versioned. A knowledge base for AI is published once as structured records carrying issuer, version, market, locale and consent scope, hashed and signed with a key you own. Media and 3D files become a manifest (alt text, dimensions, product link, licence) while the file stays in the vault under its own key.

The chatbot then climbs a decision ladder on that evidence: retrieval (RAG), corrective retrieval when evidence is weak (CRAG), a locale or personalisation adapter (LoRA) only where consent allows, and a hand-off to a person when the answer carries money, law or risk. No rung opens a locked file, no agent acts without a mandate, and price and stock come live from the system of record, never from embeddings. More in The AI ladder.

Publish the knowledge, don't let AI unlock it: private assets in, published records out, the decision ladder, how the knowledge base is built, and seven gaps with fixes

Chatbot plugins: what they can't include

Most Shopify stores answer shoppers through a third-party app: helpdesk suites such as Gorgias, Zendesk and Sprinklr; SMS and conversational marketing such as Attentive and Postscript; on-site chat such as Tidio, Shopify Inbox and Intercom; and the AI agents each of them now adds. They run the bot as a third-party script or service with the vendor's own storage, keys and certificates. That makes them a signing-keys-by-proxy problem of their own: whatever the shopper types lands in the vendor's transcripts, in the vendor's region, under the vendor's CA. Three things should stay out of them.

WhatTypical chatbot app (Gorgias, Attentive, Tidio, Sprinklr and others)Published-KB chatbot
Card data (PCI)Must not be typed into chat: a transcript holding card numbers puts the vendor, and you, in PCI DSS scope, and masking depends on the vendorNever accepted. Payment happens only in Shopify checkout
Personal data (PII) such as address, email, phone or ID numbersKept in the vendor's transcripts and region, outside your consent ledger, and missed when a deletion request runsNot collected in chat. Identity comes from the signed-in account; consent is attached and deletion propagates
Checkout linksA generic product or cart link, without the shopper's market, consent state or grantA URL hand-off to Shopify checkout with market and consent resolved; payment never in chat
Knowledge sourceThe vendor's copy of your help content, or private files uploaded to itPublished, signed records; helpdesk articles and macros (Gorgias, Sprinklr, Zendesk) are migrated into them, then retired as a live source
Keys and certificatesThe vendor's CA and keys, inherited by proxyKeys you own, verifiable offline

Check each vendor's terms and data-processing addendum for where transcripts are stored and how card numbers are masked; the point is that none of those choices are yours.

What each kind of app holds, and so what moves by proxy when you install it:

Kind of appExamplesWhat it holds about your shoppersWhat to check
Helpdesk and support chatGorgias, Zendesk, SprinklrConversations, order lookups, macros and help articles, often with read and write access to orders and refundsWhich order and refund actions its AI agent can take without a person, and whether it writes around your gate
SMS and conversational marketingAttentive, PostscriptPhone numbers, marketing consent, purchase and browsing signals, two-way message historyThat marketing consent stays per channel and per market, and that opt-outs and deletions reach it on the event
On-site chat widgetsTidio, Shopify Inbox, IntercomChat transcripts, visitor identifiers, and whatever the shopper typesThat card data and personal data are blocked at input, and where transcripts are stored
AI agents added to any of the aboveThe vendors' own AI featuresTraining or retrieval over your help content and past conversationsWhether your content trains a shared model, and what happens to it when the subscription ends

Chatbot build requirements

A headless Shopify proof of concept, the chatbot preview built on public product feeds and chatbot articles, shows the gap this section describes. It uses public data on purpose, to show the difference between being visible and being governed. Anything public can be viewed by AI, but that does not incorporate it into a knowledge base corpus with rules and permissions: no issuer, version, locale or consent scope, and no grant saying who may use it for what. Public articles an AI can read are still ungoverned until they are published as records. Its chatbot still answers from legacy Sprinklr articles that were never published through the knowledge base ladder, so its answers carry no issuer, version, locale or consent scope, and nothing traces back to a canonical record. Closing that gap is the build:

Why an ungoverned ladder hallucinates. A chatbot or AI escalation ladder that retrieves from public docs without a governed corpus pulls anything that matches: an old article, another market's price, a machine translation, a page written for a different audience. With no guardrails, no global ISO rules and no personalised consent state, it has nothing to check an answer against, so it fills the gaps:

MissingWhat the ladder does without itGoverned corpus
GuardrailsAnswers from any matching page, including retired or off-topic ones, and blends themRetrieval reads published records only; weak evidence goes to CRAG or a person, never a guess
Global ISO rulesMixes countries, languages, currencies and dates: a US price in a Korean answer, a stale date shown as currentEvery record keyed by ISO 3166 country, BCP 47 language, ISO 4217 currency and ISO 8601 UTC time; retrieval filters on them
Personalised consent statePersonalises for everyone, or for no one, and can't tell whichEach answer checks the shopper's consent at the moment it's given; the locale adapter by default, personalisation only with consent
ProvenanceCites nothing, or cites a page that says something elseEach answer names its record, its issuer and its grant

The chatbot preview on a test store: KR market selected, headset matches priced in won with the USD charge shown, Add to cart and Agent buy on each card, a return option, and a notice that answers are AI-generated

The publishing side starts with a curated knowledge base feed: support articles tagged by product family, searchable and filterable, one answer per question, with step-by-step instructions and diagrams. Curation is the first rung. The next is publishing each entry as a signed record with its issuer, version, locale and consent scope, and pointing the chatbot at those records instead of the legacy helpdesk.

A curated knowledge base feed: product-family filters on the left, and tagged support articles on the right with numbered steps and diagrams

LoRA audience training, linked to BigQuery and organic lookup

Two things are easy to confuse. Audiences decide who gets a personalised answer; LoRA adapters decide how the model writes for them: tone, vocabulary, format. BigQuery holds the audience, organic lookup supplies the evidence of how each market actually asks, and the adapter is trained only on de-identified pairs with a training basis. Personal data never goes into model weights, because an erasure request can't reach inside a trained model.

BigQuery (consent-filtered, keyed by ISO country, language, currency, UTC time)
  ├─ audiences ─────→ GA4 export + Shopify orders → segments, pLTV (BigQuery ML)
  │                     → cohort labels, held below a minimum cohort size
  ├─ organic lookup ─→ Search Console bulk export: queries by country, language, device (aggregated)
  │                     → KB gaps: questions searched but not answered → publish records
  │                     → evaluation set: real phrasing per market
  └─ training pairs ─→ redacted, de-identified question-and-answer pairs + cohort label
                        with training consent → clean room → LoRA adapter per market × cohort
                        → registry: dataset_hash, record_count, consent basis, retire_by
Chatbot: pickAdapter(locale, cohort, consent) → base model + adapter; facts from published records (RAG)
Source in BigQueryUsed forNever used for
GA4 export, with Consent Mode statesCohort membership counts; which questions lead to conversionIndividual training rows
Shopify orders and pLTV scoresCohort labels, under a pseudonymous IDWeights that contain a person
Search Console bulk export (organic queries)Knowledge base gaps; evaluation phrasing and vocabulary per marketTargeting a person: the data is aggregated by query
Redacted helpdesk question-and-answer pairsTraining pairs for tone and formatFacts: those stay in published records, so erasure still works

Rules that keep it governed:

Background: Google audiences and conversions with Vertex AI, and where LoRA fits and the clean room.

6. Globalization: rules management by market

Each market sets whether data must stay in country, on what basis it may leave, and which Cloudflare and Xano options keep it where it belongs.

MarketLawData in countryCross-border transferCloudflareXano
ChinaPIPL, Data Security Law, Cybersecurity LawRequired for critical infrastructure operators and above volume thresholds; important data staysSecurity assessment, standard contract or certification, unless an exemption appliesChina Network via JD Cloud (Enterprise), needs an ICP filing; Geo Key Manager picks key regionsNo mainland region: self-host on a mainland cloud, with its own TLS certificate from a CA you choose
JapanAPPINot required by lawConsent naming the country, or a recipient with equivalent safeguards; EU adequacyRegional Services and Geo Key Manager keep TLS processing and keys in JapanA Japan-region instance where offered, or self-host in Japan
KoreaPIPA (2023 amendment)No general rule; sector rules for finance and public-sector cloudConsent before transfer, or a certified or adequate recipient; disclose country and recipientRegional Services and Geo Key Manager; check the Korea regionA Seoul-region instance, or self-host in Korea
VietnamPersonal Data Protection Law (from 2026), Decree 53Some services must store in Vietnam; foreign firms when ordered by the regulatorTransfer impact assessment filed with the Ministry of Public SecurityNo local residency product; keep personal data out of edge logs and cachesSelf-host in Vietnam where localisation applies; otherwise a nearby region with the filing
SingaporePDPANot required by lawComparable protection: contract, binding corporate rules or certificationRegional Services and Geo Key Manager; check the region listA Singapore-region instance where offered
TaiwanPDPA (2023 amendment)Not general; sector rulesAllowed unless the regulator restricts a destination, e.g. mainland China for some sectorsStandard network; keep keys out of restricted regionsNearest region or self-host; never route through a restricted destination
EU / GermanyGDPR, BDSG, TDDDGNot required by law; often a contract term for public sector and healthAdequacy (including EU-US DPF, Japan, Korea, UK) or SCCs with a transfer assessmentData Localization Suite: Regional Services, Customer Metadata Boundary, Geo Key Manager (EU)An EU-region instance, or self-host in Germany
UKUK GDPR, DPA 2018, Data (Use and Access) Act 2025Not required by lawUK adequacy regulations, IDTA or Addendum; UK-US data bridgeRegional Services; check the UK regionA UK or EU-region instance, or self-host in the UK

Rules are summarised, not legal advice. Check Cloudflare's and Xano's current region lists for your plan; the AI cross-border requirements checklist goes deeper on transfer bases.

7. Globalization MVP, security first

Build the trust layer before the first market, so every market after it is a variable and a region, not a new integration.

Globalization MVP, security first: five phases with exit gates, the security-first foundation, the four records published in every market (firmware, Markdown, permissions, escalation ladders), per-market choices and why it is an MVP

PhaseBuildExit gate
0 · Trust foundationOwn root CA created offline; issuing CA in your Cloudflare account; key set (JWKS) published; hash-chained ledger in XanoEvery signature verifies against your key
1 · BoundarymTLS per service and agent; consent checked at the edge; egress gate (no consent, no send); a trust store you own and updateNothing crosses without a certificate and consent
2 · First marketHome market live end to end; knowledge base published as signed records; locale-filtered retrieval; live price from the system of recordOne market, every answer traceable
3 · Add marketsA new market is one build variable; residency per market (region or self-host) chosen up front; transfer basis on fileEach market's data in its region, with evidence
4 · AI rungsRAG, then CRAG on weak evidence; LoRA with the locale adapter by default, and audience adapters trained from BigQuery cohorts and organic lookup only with training consent; mandates for every agent actionNo rung opens a locked file; no adapter holds personal data

Phases 0 and 1 ship before any market. Every later phase inherits the keys, grants, consent gate and ledger, which is what keeps it an MVP rather than a rebuild per market.

Publishing requirements for the MVP

Four things are published in every market, and each is a signed record, not a file someone copies into a system:

PublishedSource and formatSigned and checkedPhase and gate
FirmwareThe image plus its SBOM, per device class and versionSigned at build; vaulted under its own key; each download granted to a device certificate and recorded in the ledger; devices verify before installPhase 1: no device runs an image it can't verify
Markdown (MD)Markdown with frontmatter carrying issuer, version, market, locale and consent scope: the one source for the web page, the PDF, the book and the knowledge base recordsContent-hashed and signed at publish; every surface traces back to the same commitPhase 2: every answer and page traces to one source
PermissionsGrants and mandates as records: who or which agent, which action, which market, until whenSigned when issued, and again when revoked; checked on every event, never cached past expiryPhase 1: nothing acts without a current grant
Escalation laddersPer market: which sources RAG may read, the evidence bar that sends a question to CRAG, which LoRA adapters are allowed and under what consent, and which answers go to a person (money, law, risk)Each ladder version reviewed (a QA attestation) and signed before it goes live; the version in force is recorded with every answerPhase 4: no rung changes without a signed review

A new market reuses all four: its firmware channel, its Markdown slice, its grants and its ladder are configuration on the same rails, not a new integration.

8. AI cutover checklist

Move AI onto keys you own and grants you can revoke, without a lockout: inventory first, switch in a window, then retire what no one granted.

AI cutover checklist: before cutover, cutover window and after cutover

Before cutover: inventory

Cutover window: switch

After cutover: retire

Contract clauses to ask for

The cutover is done when every key has an issuer you chose, every action has a grant you can revoke, and every market's data has a region you can prove.

Patterns, not claims about any firm. eMudhra incident details per The Hacker News and Help Net Security, October 2026. Country rules summarised; not legal advice.