Säkerhet och arkivering – på servrar i Sverige
Bokföringen, underlagen och säkerhetskopiorna lagras på servrar i Sverige, hos AWS i Stockholm. Räkenskapsinformationen bevaras i minst sju år enligt bokföringslagen, och filerna i bokföringen är låsta mot radering i tjänsten. Nedan står hur det fungerar och var gränserna går.
Var dina uppgifter lagras
Bokföringen och underlagen lagras i AWS-regionen eu-north-1 i Stockholm. AI-chatten behandlas inom EU, och två leverantörer i USA får en rensad felrapport när en person själv väljer att skicka in den. Tabellen visar var varje typ av uppgift lagras eller behandlas.
| Vad | Var | Skydd och lagringstid |
|---|---|---|
| Bokföring: verifikat, register, fakturor, lön, dokumentmetadata, revisionsspår och chatthistorik | PostgreSQL 17 på Amazon RDS, Stockholm | Privata subnät, krypterad i vila, nås inte utifrån |
| Användarkonton (Keycloak) | Samma databasinstans, i en egen databas | Privata subnät, krypterad i vila |
| Dokument: underlag, SIE-filer, skapade fakturor, inlämnade filer och årsredovisningar | AWS S3, Stockholm | Versionshantering, Object Lock och blockerad publik åtkomst |
| Säkerhetskopia av dokumenten | Separat S3-bucket i Stockholm, i samma AWS-konto | Replikering, Glacier Instant Retrieval och Object Lock |
| Rå inkommande e-post | S3, Stockholm | 60 dagar, egen krypteringsnyckel, inget lås |
| Loggar och mätvärden | Egen drift i Kubernetes, Stockholm | 30 dagar, ingen säkerhetskopia |
| Utgående e-post och sms | AWS, Stockholm | Sms bara till svenska mobilnummer, med avsändaren ContoAI |
| AI-läsning av underlag | Amazon Bedrock, enbart Stockholm | Inställd så att inget sparas hos Bedrock |
| AI-chatt | Amazon Bedrock, anropad i Stockholm och behandlad i en av sex EU-regioner | Aldrig utanför EU; bilagor når modellen bara som id, typ och storlek |
| Felrapporter som du själv skickar | Databas och lagring i Stockholm | En rensad kopia går till GitHub och Anthropic i USA |
| Anmälningar till väntelistan | Databasen i Stockholm | Namn och e-post stannar hos oss; ingen överföring utanför EU |
Databasen körs som en enda instans i en tillgänglighetszon i Stockholm och har ingen kopia i en annan region.
Arkivering enligt bokföringslagen
Räkenskapsinformationen bevaras till och med det sjunde året efter utgången av det kalenderår då räkenskapsåret avslutades, och alltid minst sju år efter bokslutet. Slutar räkenskapsåret den 31 december 2026, gäller lagens krav alltså till och med 2033. Vi raderar den aldrig i förtid. Uppgifter som inte är räkenskapsinformation raderas eller återlämnas på kundens begäran enligt personuppgiftsbiträdesavtalet.
Huvudregeln i bokföringslagen (7 kap. 2 §) är att räkenskapsinformationen ska förvaras i Sverige. Hos ContoAI ligger den på servrar i Sverige, hos AWS i Stockholm, så du behöver inte anmäla lagring i ett annat EU-land till Skatteverket (7 kap. 3 a §).
Det här bevaras:
- Varje fil du laddar upp eller importerar, från det att den sparas.
- Varje fil som tas fram för att skickas eller lämnas in, sparad precis som den togs fram: faktura-PDF:er, momsdeklarationsfilen (eSKD), AGI, ROT- och RUT-filer, SRU-filer och årsredovisningen i iXBRL.
- Betalfiler, oföränderliga i databasen.
- Chatthistoriken, som bara kan fyllas på och sparas i sju år.
Rapporter och SIE-exporter sparar vi inte som filer. De räknas fram på nytt när du hämtar dem, och blir därför alltid aktuella.
Vad ”låst mot radering i tjänsten” betyder
Varje fil i dokumentlagringen låses när den sparas, med S3 Object Lock i läget GOVERNANCE i högst 4 018 dagar åt gången. En daglig kontroll förlänger låset när mindre än ett år återstår, och ett lås flyttas aldrig tidigare.
Låset gäller i tjänsten: varken du, AI:n eller ContoAIs egna tjänster kan radera en låst fil. En AWS-administratör med en särskild undantagsbehörighet kan tekniskt sett häva låset. Vi har valt det läget så att en fil som sparats av misstag inte blir låst för alltid.
Tjänsten själv saknar behörighet att radera filer och versioner, att gå förbi låset och att ändra lås, versionshantering, livscykelregler, kryptering eller åtkomstregler för lagringen. Det finns ingen raderingsfunktion i appen, i API:et eller i AI-anslutningen (MCP), och en begäran om radering avvisas med felkoden DOCUMENT_RETAINED.
Databasen har egna spärrar:
- Dokumentrader kan aldrig raderas. Bara kopplingen till ett verifikat kan ändras.
- Behandlingshistoriken, händelseloggen och Agentens meddelanden och händelser kan bara fyllas på, aldrig ändras, raderas eller tömmas.
- Bokförda verifikat och deras rader är oföränderliga (POSTED_ENTRY_IMMUTABLE).
- Skrivningar i en period som inte är öppen avvisas (PERIOD_LOCKED).
- Hopp i verifikationsnumreringen avvisas (VOUCHER_GAP).
Fyra spärrar i driften hindrar dessutom att produktionsdata raderas av misstag: verktyget som driftsätter tjänsten (Argo CD) tar aldrig bort något, verktyget som sätter upp infrastrukturen (Crossplane) lämnar databas och lagring kvar och saknar behörighet att radera dem, och AWS har raderingsskydd, Object Lock och en sista ögonblicksbild av databasen.
Varje fil sparas med en SHA-256-summa. Knappen Kontrollera jämför de lagrade bytena mot summan.
Underlag som kommer med e-post
Ett underlag som kommer in med e-post räknar vi som räkenskapsinformation från det att det kopplas till ett verifikat. Fram till dess är det olåst och tas bort efter 120 dagar, eller sju dagar efter att du avfärdar det. Koppla det till ett verifikat, så gäller sjuårsregeln.
Säkerhetskopior
Databasen säkerhetskopieras löpande och kan återställas till valfri tidpunkt de senaste 14 dagarna, med transaktionsloggar var femte minut. Kopiorna finns kvar även om databasen tas bort, en sista ögonblicksbild tas och raderingsskyddet är påslaget.
Underlagen kopieras till en separat, låst lagring i Stockholm.
Säkerhetskopiorna ligger i samma region och samma AWS-konto som originalet. Vi har ingen kopia i en annan region.
Vi har inte provat en fullständig återställning i produktion. Därför anger vi ingen återställningstid och ingen högsta tillåtna dataförlust.
Loggar och mätvärden säkerhetskopieras inte. De sparas i 30 dagar.
Kryptering
All lagring krypteras i vila med en egen nyckel i AWS KMS som ContoAI förvaltar, med automatisk nyckelrotation. En nyckel kan inte raderas direkt, för det finns en väntetid på 30 dagar, och driftverktygen saknar behörighet att radera nycklarna. Det gäller databasen, filerna, diskarna och lagringen av tjänstens lösenord och nycklar.
I applikationen krypteras personnummer dessutom var för sig, med AES-256-GCM och en HMAC för uppslag. Mobilnummer och postadress förseglas med nycklar som härleds genom HKDF. Namnet står i klartext, i en databas som i sin tur är krypterad i vila.
Under överföring används HTTPS, och trafik via HTTP skickas om till HTTPS. Tjänsterna i driftmiljön talar med varandra över ömsesidigt verifierad TLS (mTLS), och anslutningen till databasen använder TLS med verifierat certifikat.
Inloggning och verifiering
Du loggar in med e-post och lösenord. Inloggningen ger läsbehörighet: du kan läsa det din roll ger dig tillgång till, men inte ändra något.
För att ändra något krävs en verifierad session. Du öppnar den med en engångskod via sms till ett svenskt mobilnummer. BankID kommer snart. Sessionen knyts till en nyckel i webbläsaren som inte går att exportera. Den upphör efter två timmar utan aktivitet och gäller högst åtta timmar, och varje ändring signeras. Kravet har gällt sedan den 17 oktober 2026.
En engångskod via e-post erbjuds först när ditt personnummer kan verifieras med BankID, som kommer snart.
När du aktiverar verifieringen första gången anger du namn, personnummer, mobilnummer och postadress.
Inloggningstoken gäller i 15 minuter. En inloggning upphör efter 30 dagar utan aktivitet och gäller högst 60 dagar.
Lösenordet ska vara 12 till 128 tecken och får inte vara samma som e-postadressen.
Att logga in räcker för att läsa. För att ändra något krävs alltid ett andra steg: en kod via sms. Det går inte att registrera sig själv: ContoAIs personal skapar kontot, till exempel när du bjuds in från väntelistan, och du får en länk där du väljer lösenord. Har du glömt lösenordet skriver du till support@contoai.se.
BankID, som kommer snart, används för att verifiera dig och signera ändringar i ContoAI, aldrig för att logga in. Deklarationer och årsredovisningar skriver du under hos Skatteverket respektive Bolagsverket.
Roller och behörigheter
| Roll | Vad den får göra |
|---|---|
| Ägare | Allt i bolaget: inställningar, användare och roller, bokföring, lön och godkännanden |
| Administratör | Sköter bokföringen och bolagets inställningar och godkänner förslag, men bjuder inte in användare och ändrar inte roller |
| Medlem | Läser, exporterar och använder chatten; ändringar blir förslag |
| Läsare | Läser och exporterar, till exempel en revisor |
| Anställd | Ser bara sina egna löner, utlägg och resor |
Medlemskap är enda vägen in i ett bolag: varje anrop mot ett bolags uppgifter kontrollerar medlemskapet. Det finns ingen superanvändare i appen, och ContoAIs personal administrerar konton och väntelistan – inte bokföringen.
Personal som sköter driften har ändå tekniska vägar in via AWS, databasen och administrationen av inloggningen, och läsningar direkt i databasen loggas inte.
Revisionsspår och obruten verifikationsserie
Varje förslag, godkännande, avvisning och rättelse loggas i en behandlingshistorik som inte går att ändra, med vem, när och vad, och med länkar till underlagen. Historiken visas under Boken och följer med i revisionspaketet.
Varje signerad ändring sparar en signeringsbild: namn, de fyra sista siffrorna i personnumret, metod, roll, bolag och tidpunkt. AI-delegeringar redovisas för sig i revisionspaketet, i filen delegeringar.csv.
Systemdokumentation enligt BFNAR 2013:2 kapitel 9 finns.
Verifikationsserien är obruten. Ett hopp i numreringen avvisas, och luckor som följer med importerad SIE-historik dokumenteras och syns i kontrollerna.
Rättelser sker med nya verifikat, aldrig genom att ändra eller ta bort. Originalet står kvar och båda syns i historiken.
Bokförda verifikat kan aldrig ändras. En stängd period öppnas aldrig igen. En låst period kan låsas upp av en ägare, eller av en AI-anslutning med godkännandenivå, och varje upplåsning loggas.
AI och säkerhet
AI:n skriver aldrig direkt i bokföringen: allt den gör blir först ett förslag, som en person godkänner – eller en AI-anslutning som du och bolagets ägare uttryckligen gett rätt att godkänna. Förhandsgranskningen räknas fram av servern och visar det verkliga resultatet, med riktigt verifikationsnummer och riktiga summor. Ett godkännande gäller exakt det förslag du såg, knutet till förslagets proposal_hash, och kör alla steg eller inga. Hög risk kräver en skriven bekräftelse, och ändrade bankuppgifter för en betalningsmottagare kräver alltid att en person skriver in de fyra sista tecknen i de nya bankuppgifterna.
Skydd mot att text i ett underlag styr AI:n:
- Varje verktyg deklarerar vilka fält som kan innehålla text från utomstående: bankrader, motpartsnamn, e-postfält, extraherade fält, SIE-texter och filnamn.
- Den texten rensas från styrtecken och kortas av.
- Svaren som AI:n får innehåller inga länkar som i sig ger åtkomst och inga uppmaningar.
- Modellens instruktioner säger att text från dokument är data, aldrig instruktioner, och att information aldrig får flyttas mellan bolag.
Inför varje release, och vid varje ändring i AI-anslutningen, testas tjänsten automatiskt mot en samling texter som försöker styra AI:n med text i underlag. Testet kontrollerar att servern rensar texten och behandlar den som data; släpper det igenom ett enda försök, stoppas bygget. Hur en viss modell svarar mäts inte i testet.
Chattmodellen ser aldrig vad ett kvitto innehåller. Bilagor når den bara som id, typ och storlek.
När du kopplar in en egen AI-assistent loggar du in i ContoAI och godkänner kopplingen med OAuth 2.1 och PKCE. Inga lösenord eller hemligheter följer med länken. Åtkomsttoken gäller en timme, förnyelsetoken byts vid varje användning, och används en gammal förnyelsetoken igen efter fristen, återkallas anslutningen. En anslutning gäller i 30, 90 eller 365 dagar och kan återkallas direkt.
Nivåerna är Läsa, Läsa och föreslå samt Läsa, föreslå och godkänna. Bolagets tak sätts med inställningen Tillåt AI-assistenter, som står på ”Av” från början och som bara Ägaren kan ändra. Den nivå som gäller är den lägsta av den beviljade nivån, personens roll och bolagets tak, och den läses om vid varje anrop.
Oavsett nivå ändrar en AI aldrig betalningsmottagares bankuppgifter, administrerar aldrig bolaget, registrerar aldrig styrelsens underskrift av årsredovisningen och kan aldrig godkänna, lämna in, signera eller låsa upp en deklaration hos Skatteverket.
Det assistenten läser – även lön, personnummer och underlag – går vidare till assistentens leverantör, ofta i USA, enligt dina villkor med den. Bolaget är personuppgiftsansvarigt för den överföringen, och leverantören är inte ContoAIs underbiträde. Läs mer på sidan om AI.
Export och när du slutar
Bokföringen är din. Du kan exportera den som SIE4 per räkenskapsår, med teckenkodningen CP437 som standard eller UTF-8. Du kan också hämta revisionspaketet, en ZIP-fil med rapporter och verifikationslista och, om du vill, underlagen som hör till årets verifikat. Paketet kan hämtas i sju dagar.
Du kan också hämta PDF-rapporter och varje dokument för sig via API:et. Någon samlad nedladdning av alla dokument finns inte.
Det finns ingen funktion för att radera eller överlämna ett bolag, och inga bolag raderas i tjänsten. Bolagets skyldighet att bevara räkenskapsinformationen enligt bokföringslagen gäller även om avtalet upphör. Räkenskapsinformationen och den behandlingshistorik som hör till bokföringen, inklusive chatthistoriken, finns då kvar låst mot radering under hela bevarandetiden och bevaras för kundens räkning. Under den tiden kan kunden begära ut arkivet via support@contoai.se. Har kunden gått i konkurs eller likvidation kan konkursförvaltaren eller likvidatorn göra det, och har en enskild näringsidkare avlidit kan dödsboet göra det. Personuppgifter som inte är räkenskapsinformation raderas eller återlämnas på kundens begäran enligt personuppgiftsbiträdesavtalet.
Det här gör vi inte
- Vi säljer aldrig din data.
- Dina uppgifter används aldrig för att träna AI-modeller, varken ContoAIs eller våra leverantörers. Amazon Bedrock, som kör ContoAIs AI, använder inte innehållet för att förbättra grundmodellerna och delar det inte med modellernas tillverkare, som inte har åtkomst. För en AI-assistent som du själv kopplar in gäller dina villkor med den leverantören.
- Vi spårar dig inte på contoai.se: där finns inga analysverktyg och inga skript från tredje part, och typsnitten ligger på vår egen server.
- Vi läser inte i din brevlåda. Vi tar bara emot det du vidarebefordrar eller skickar till bolagets adress.
- Vi gör inga betalningar från bankkopplingen. När den finns är den skrivskyddad och hämtar transaktioner och saldon.
Vill du prova ContoAI?
Vi öppnar pilotplatser i turordning. Ställ dig i kön, så hör vi av oss. De första 14 dagarna är gratis.
Rapportera en säkerhetsbrist
Har du hittat ett säkerhetsproblem i ContoAI? Skriv till support@contoai.se och beskriv vad du hittat och hur vi kan återskapa det.
Senast uppdaterad: 28 oktober 2026