Personvernerklæring
Ikrafttredelsesdato: 12. juni 2026
Denne erklæringen forklarer hvordan Bitsort ApS behandler personopplysninger i forbindelse med Codon, en tjeneste for klinisk terminologihåndtering (en FHIR R4-terminologiserver). Den er utarbeidet for å oppfylle informasjonsplikten i GDPR artikkel 13.
Hvem vi er, og vår rolle
Codon driftes av Bitsort ApS (CVR 37759333), Tobaksvejen 20, 2860 Søborg, Danmark, som opptrer under navnet TheraponSystems. Spørsmål om denne erklæringen eller dine personopplysninger kan rettes til privacy@bitsort.io.
Vi opptrer i to ulike roller:
- Som behandlingsansvarlig for konto-, fakturerings- og driftsdataene vi behandler for å levere og sikre tjenesten — beskrevet under «Data vi behandler» nedenfor.
- Som databehandler for personopplysninger du behandler gjennom tjenesten på egne vegne, herunder klinisk fritekst sendt inn under det valgfrie PHI-avidentifiseringstilvalget. Denne behandlingen reguleres av databehandleravtalen (DPA) som inngås med hver kunde, som forblir behandlingsansvarlig for den.
Data vi behandler
Terminologidata (ikke-personopplysninger)
Kliniske terminologikoder, visningstekster, hierarkier og mappinger på tvers av systemer fra publiserte standarder (SNOMED CT, ICD-10, LOINC, SKS med flere). Dette er referansedata og inneholder ingen personopplysninger.
Konto- og driftsdata (rollen som behandlingsansvarlig)
Som behandlingsansvarlig behandler vi personopplysningene nedenfor — med formål, behandlingsgrunnlag og lagringstid for hver:
| Data | Formål og behandlingsgrunnlag | Lagring |
|---|---|---|
| Brukerkontoer (e-post, navn, passord-hash, OAuth/OIDC-subjekt) | Autentisering og kontoadministrasjon — oppfyllelse av avtale (art. 6 nr. 1 bokstav b) | Til kontoen slettes eller tenanten slettes |
| API-nøkkel-identiteter (bruker-ID) | Autentisering og autorisasjon — oppfyllelse av avtale (art. 6 nr. 1 bokstav b) | Til nøkkelen tilbakekalles eller tenanten slettes |
| Faktureringsdata (abonnement, Stripe-kundereferanse, fakturaer, forbruksoppføringer) | Fakturering og oppfyllelse av avtale — art. 6 nr. 1 bokstav b; og rettslig forpliktelse (art. 6 nr. 1 bokstav c, bokføring) | 5 år (dansk bokføringslov) |
| Revisjonslogg (hash-kjedede who/what/when-metadata, bruker-ID) | Sikkerhet og ansvarlighet — berettiget interesse (art. 6 nr. 1 bokstav f) og rettslig forpliktelse (art. 6 nr. 1 bokstav c) | Beholdes — se lagringsunntaket nedenfor |
| API-forespørselslogger (maskert IP) | Sikkerhetsovervåking — berettiget interesse (art. 6 nr. 1 bokstav f) | 30 dager |
| Mapping-revisjonsfelter (createdBy, reviewedBy — bruker-ID) | Regulatorisk etterlevelse og sporbarhet — rettslig forpliktelse | Mappingens levetid; historikkhovedbok beholdes |
| Samtykkeoppføringer for AI-forslag | Samtykke til AI-mappingforslag — art. 6 nr. 1 bokstav a | Mappingens levetid |
| Problemrapporter fra nettstedet (IP, user agent) | Feilretting — berettiget interesse (art. 6 nr. 1 bokstav f) | 90 dager |
Bruker-identitetsfelter (e-post, navn, OAuth-subjekt) lagres kryptert på applikasjonslaget (AES-256-GCM) i tillegg til disk- og transportlagskrypteringen som beskrives nedenfor.
Pasientdata (PHI) — kun med PHI-tilvalget
Basisproduktet Codon behandler ingen pasientdata. Kunder som bare bruker terminologitjenester (oppslag, validering, mapping, søk, verdisett), sender aldri inn pasientjournaler, kliniske notater, persondiagnoser eller biometriske data, og vi behandler ingen.
Kunder som har tilvalgt PHI-avidentifisering (en separat tilvalgt funksjon som krever en signert databehandleravtale), sender inn klinisk fritekst — som kan inneholde helseopplysninger i særlige kategorier (GDPR art. 9) — for avidentifisering. For denne behandlingen gjelder:
- Den kliniske teksten behandles i minnet og lagres ikke: den skrives ikke til databasen, søkeindeksen eller applikasjonslogger.
- All behandling kjører lokalt på vår infrastruktur. Ingen klinisk tekst sendes til noen ekstern AI-leverandør eller annen tredjepart.
- Det eneste tilvalgs-unntaket er pseudonymlageret for konsistens, som lar samme pasient få samme pseudonym på tvers av dokumenter; disse mappingene krypteres under kundens egen tenant-nøkkel og slettes — og gjøres kryptografisk ugjenkallelige — ved sletting av tenanten (GDPR art. 17).
- Avidentifisert utdata er pseudonymiserte personopplysninger etter GDPR, ikke anonymiserte data; kunden, som behandlingsansvarlig, er fortsatt ansvarlig for hvordan de brukes.
For denne behandlingen opptrer vi utelukkende som databehandler under kundens databehandleravtale. Forespørsler fra registrerte om denne behandlingen skal rettes til kunden (den behandlingsansvarlige); vi bistår i henhold til databehandleravtalen.
Slik beskytter vi dataene dine
- Kryptering under overføring. TLS 1.3 med HSTS aktivert.
- Kryptering i hvile. LUKS / leverandørkryptert blokklagring (AES-256), samt kryptering på applikasjonslaget (AES-256-GCM) under et per-tenant-nøkkelhierarki for sensitive felter — slik at én tenants data aldri kan dekrypteres med en annen tenants nøkkel. Sikkerhetskopier er AES-256-kryptert med point-in-time-gjenoppretting.
- Tenant-isolasjon. Kryptografisk (ulike per-tenant-nøkler) lagt over PostgreSQL Row-Level Security på hver tenant-scoped tabell.
- Tilgangskontroll. Rollebasert og per-ressurs-tilgangskontroll, JWT- og API-nøkkel-autentisering, valgfri obligatorisk MFA per tenant, brute-force-lockout og tilbakekalling av tokens. API-nøkler godtas bare i request-headere, slik at legitimasjon aldri vises i tilgangs-, proxy- eller nettleserhistorikk-logger.
- Manipulasjonssikker revisjonslogg. En hash-kjedet, append-only-logg registrerer hvem som endret hva og når — kun metadata, aldri klinisk innhold, passord eller hemmeligheter.
- Loggminimering. IP-adresser maskeres før lagring (siste IPv4-oktett nullstilles), og kliniske koder redigeres ut av forespørselslogger.
AI-behandling
AI-assisterte funksjoner kan kjøre fullt lokalt: i en suveren installasjon forblir all inferens på installasjonens egen infrastruktur. I dette driftede evalueringsmiljøet bruker tekstgenererings-assistentene (mappingforslag, skjemaassistanse) en AI-modell-leverandør driftet i EU, opplyst i produktet i henhold til AI-forordningens art. 50. Klinisk NER og PHI-avidentifisering kjører alltid lokalt og forlater aldri installasjonen — ingen klinisk tekst eller PHI sendes som standard til noen ekstern AI-tjeneste, håndhevet i programvare. Embedding-basert likhet kjører på lokal infrastruktur. X-AI-Consent-headeren kreves for AI-mappingforslag som en klinisk sikkerhetsbekreftelse.
Mottakere og underdatabehandlere
Alle terminologidata og alle PHI-tilvalgsdata lagres og behandles på infrastruktur driftet i Skandinavia. I standardkonfigurasjonen mottar følgende databehandlere begrensede driftsmessige personopplysninger:
| Databehandler | Formål | Plassering | Personopplysninger og overføringsgaranti |
|---|---|---|---|
| Hetzner Online GmbH (driftet tjeneste); egen drift ved suveren/on-premise-installasjon | Serverdrift | Danmark (EU/EØS) | All lagret data forblir på Bitsort-drevet infrastruktur, kryptert som ovenfor — EU/EØS, ingen overføringsgaranti nødvendig |
| Stripe Payments Europe Ltd | Betalingsbehandling og fakturering | Irland (EU) | Navn, e-post, betalings- og fakturadata; videreoverføring til Stripe, Inc. (USA) under EUs standardkontraktvilkår |
| Brevo (Sendinblue SAS) | Transaksjons-e-post (verifisering, magic links, tilbakestilling av passord, varsler) | Frankrike (EU) | E-postadresse og navn — EU/EØS, ingen overføringsgaranti nødvendig |
| Friendly Captcha GmbH | Botbeskyttelse ved opprettelse av konto | Tyskland (EU) | Anonymiserte forespørselssignaler, ingen kontodata — EU/EØS, ingen overføringsgaranti nødvendig |
I dette driftede evalueringsmiljøet bruker tekstgenererings-assistentene en AI-modell-leverandør driftet i EU, opplyst i produktet i henhold til AI-forordningens art. 50; ingen klinisk tekst eller PHI sendes til den. Suverene/on-premise-installasjoner bruker kun lokal inferens uten ekstern AI-databehandler. Valgfrie nedlastinger av terminologikilder (for eksempel fra det amerikanske National Library of Medicine) er kun innkommende innholdsnedlastinger — det sendes ingen personopplysninger.
Suveren modus
Codon støtter en suveren driftsprofil der tjenesten nekter å starte hvis noen utgående integrasjon (Stripe, Brevo, Friendly Captcha, ekstern AI) er konfigurert. I suveren modus er den eneste gjenværende mottakeren driftsleverandøren, og ingen personopplysninger forlater EU/EØS under noen omstendighet.
Informasjonskapsler og lokal lagring
Codon bruker bare strengt nødvendige informasjonskapsler — de som kreves for å logge deg inn, for å beskytte forespørsler mot cross-site request forgery, og, under kortbetaling, for å forebygge betalingssvindel. Vi setter ingen analyse-, reklame- eller sporingskapsler og profilerer deg ikke. Fordi hver informasjonskapsel vi bruker er strengt nødvendig, kreves ingen samtykkebanner etter ePrivacy-reglene, og ingen vises.
| Navn | Formål | Levetid | Kategori |
|---|---|---|---|
nexus_session | Inneholder din innloggede økt (HttpOnly; kan ikke leses av skript) | Til økten utløper eller du logger ut | Strengt nødvendig |
csrf | Beskyttelse mot cross-site request forgery (double-submit-token) | Til økten utløper eller du logger ut | Strengt nødvendig |
__stripe_mid, __stripe_sid | Settes av Stripe.js på fakturasiden når du foretar en kortbetaling, for å forebygge betalingssvindel | Økt (__stripe_sid) opptil 1 år (__stripe_mid) | Strengt nødvendig (settes bare når du betaler) |
Vi lagrer også din preferanse for lyst/mørkt tema i nettleserens lokale lagring. Dette er en funksjonell preferanse, inneholder ingen personopplysninger og overføres aldri til oss. Botbeskyttelses-widgeten ved kontoopprettelse (Friendly Captcha) er informasjonskapselfri av design.
Dine rettigheter
Etter GDPR har du følgende rettigheter. For å utøve dem kan du kontakte privacy@bitsort.io; vi svarer innen 30 dager (GDPR art. 12 nr. 3).
- Innsyn (art. 15). Be om alle data knyttet til kontoen din.
- Retting (art. 16). Kontoopplysninger kan redigeres via selvbetjening; kontakt oss for alt annet.
- Sletting (art. 17). Individuelt: kontosletting, der revisjonsfelter (createdBy/reviewedBy) anonymiseres. På tenant-nivå: full sletting fjerner hver tenant-scoped rad i én transaksjon og kryptografisk destruerer tenantens krypteringsnøkkel, slik at tenantens krypterte data — inkludert sikkerhetskopier, når kopier fra før slettingen utløper — blir permanent ugjenkallelige.
- Dataportabilitet (art. 20). Et tenant-eksport-endepunkt streamer hele datasettet ditt som maskinlesbar NDJSON; mappinger kan i tillegg eksporteres som FHIR ConceptMap JSON eller CSV.
- Innsigelse (art. 21). Protester mot behandling basert på berettiget interesse.
- Begrensning (art. 18). Begrens behandlingen mens en klage behandles.
For personopplysninger behandlet under PHI-tilvalget er kunden behandlingsansvarlig — rett slike forespørsler til kunden; vi bistår i henhold til databehandleravtalen.
Lagringsunntak — revisjonslogg
Den hash-kjedede revisjonsloggen slettes ikke ved sletting. Å fjerne oppføringer midt i kjeden ville bryte manipulasjonssikkerheten for alle kunder. Lagringen hviler på GDPR art. 17 nr. 3 bokstav b og bokstav e (rettslig forpliktelse — sikkerhet og ansvarlighet etter art. 32 og art. 30); revisjonsoppføringer inneholder kun who/what/when-metadata og aldri personopplysningsinnholdet som ble slettet.
Klager
Du har rett til å klage til en tilsynsmyndighet. Ledende myndighet er Datatilsynet (det danske datatilsynet), Carl Jacobsens Vej 35, 2500 Valby, Danmark — www.datatilsynet.dk.
Endringer i denne erklæringen
Vi vil varsle kunder om vesentlige endringer i denne personvernerklæringen minst 30 dager før de trer i kraft.
Kontakt
Personvernkontakt: dpo@bitsort.io
Generelle personvernhenvendelser: privacy@bitsort.io