AURA

Who sees client data at an accounting office: access authorizations

Five bookkeepers sharing one login to every client file is common in small accounting offices — and a real risk under GDPR Article 29. Here is how to limit access to your own clients and when to review authorizations.

Published
12 min read2448 words

AURA — a virtual business manager. Management on facts, not impressions. Who we are

Key takeaways

  • GDPR Article 29 requires that anyone with access to client data process it only on the controller's instructions.
  • The controller must genuinely control who has access to data and to what extent — authorization is one way to show this.
  • An accounting office can be a controller for its own staff data and a processor for client data at the same time.
  • Access should be tied to a person's specific clients, not the whole database — this matches the data minimisation principle in Article 5 GDPR.
  • Authorization does not replace the data processing agreement with the client — these are two separate obligations.
  • Review the authorization list after a role change, an employee leaving, or the end of a client relationship.

Five bookkeepers and one shared login to the client system — that's how data access works at more than one small accounting office. Anyone on the team can open any client's file, even one they've never worked on, and nobody can say for certain who looked at what, or when. This isn't a question of trusting your team — it's a gap in how the office meets the obligation set out in GDPR Article 29.

Here's what you'll get from this page: what Article 29 actually requires from the controller and from anyone with access to the data, how the controller role differs from the processor role in an accounting office's daily work, how to limit access to "my" clients instead of the whole database, and when the list of authorizations needs a fresh review.

Office corridor with glass partitions, morning light from tall windows
Access to client data depends on who opens which door, and why

One shared login to every client's file

A team of 3–8 bookkeepers usually outgrows its permission system faster than anyone notices. At the start there's one accounting program and two people who know every case. Then more bookkeepers join, clients get split between them, but the login into the system stays one shared account — or everyone gets full access "just in case", so anyone can cover a colleague on leave.

The result: a bookkeeper who has handled nothing but construction companies for two years technically also has access to HR files of a client in a completely different industry she's never touched. Nobody planned this as a violation — it's simply the easiest way to make sure no one ever gets stuck without access. The problem is that GDPR doesn't ask about intentions, only whether the controller genuinely controls who has access to the data, and to what extent. It's the same idea behind what can realistically be handed over to a system, and what cannot — access to a client's data is one of the things you can't hand over to convenience.

What GDPR Article 29 requires: authorization isn't paperwork for a drawer

Article 29 GDPR states that the processor, and any person acting under the authority of the controller or of the processor who has access to personal data, shall not process that data except on instructions from the controller — Poland's data protection authority (UODO) makes exactly this point when answering whether controllers should still be issuing authorizations under GDPR (UODO on controller obligations). Its answer: yes, because it's one of the concrete ways to show that access is actually controlled, not that everyone simply holds a key to everything.

What "authorization" actually means

UODO points out a language nuance: in Polish, "upoważnienie" formally means a written power of attorney, but the English text of GDPR speaks of a person "acting under the authority of the controller". In other words, this is less about a piece of paper and more about the controller genuinely being in control of who processes data, to what extent, and on what terms. Authorization is one of the tools that can demonstrate this control.

Who the obligation covers: not just full-time staff

UODO's guidance also makes clear that this isn't limited to permanent employees — it covers anyone the controller has assigned work that requires access to personal data, including interns and trainees. The exception is people who are themselves a processor, or its employees — there, the obligation is covered by a data processing agreement, not an internal authorization.

The controller must be in control of who has access, and to what extent

UODO puts it directly: the point is to ensure the controller has control over who has access to personal data, to what extent, and under what rules and manner they process it. The measures a controller adopts for this purpose should prevent unauthorized entry, viewing, altering or deleting of data, and authorized people should only have access to the data covered by their specific authorization — not the whole database by default.

Issuing authorizations is one such organizational measure. On that basis, an office then applies access-control mechanisms inside the IT system itself: a specific person gets a specific scope, not an administrator login shared by everyone.

Controller and processor: two roles inside the same office

An accounting office is rarely only one or the other. For its own employees' data — HR, payroll, working-time records — the office is the controller and decides the purposes and means of processing itself. For client data it processes under a bookkeeping engagement, the office is usually a processor — carrying out the instructions of a controller who is, in this case, the client.

Why the distinction matters in practice

If the office is a processor for client data, access rules inside the team still have to meet the same requirement of Article 29 — every bookkeeper acting under the office's authority may process a client's data only on that client's instructions, within a scope defined by the agreement. Being a controller or a processor doesn't excuse anyone from watching who actually sees what.

Responsibility doesn't disappear once you sign a contract

One UODO announcement shows the mechanism well, even though it concerns a completely different industry than bookkeeping: in the case of fines against McDonald's Polska, the President of UODO stated plainly that both the controller and the processor are responsible for protecting personal data (UODO announcement, 21 July 2025). Among other issues, that case lacked a proper data processing agreement, even though the obligation to conclude one already followed from Article 28(4) and (9) GDPR before any inspection took place.

The fine amounts in that case, and the food-service sector itself, have nothing to do with an accounting office — transplanting them here would be dishonest. But the mechanism is universal: the fact that a subcontractor or a single employee processes the data doesn't remove responsibility from the controller, and the reverse is also true. Internal authorizations and the data processing agreement with the client are two separate obligations you have to meet both of, not either one.

Access by client, not access to the whole database

The practical consequence of all this is simple: access should be tied to the specific clients a person actually works with, not to the database as a whole. In a larger accounting system this is usually configurable at the role level — a bookkeeper sees her own clients, a team lead sees the team, an owner sees everything, instead of everyone holding the same account with full access.

Limiting access to the clients a person actually works with is, in practice, the data-minimisation principle from Article 5 GDPR: data must be adequate, relevant and limited to what is necessary for the purpose of processing (UODO guide citing Article 5 GDPR). In an accounting office, one bookkeeper's "purpose" is serving her own clients — not browsing the whole database in case it's ever useful.

Example on assumed numbers — substitute your own: an office with 5 bookkeepers and 60 active clients, where every bookkeeper technically has access to every file, has 5 × 60 = 300 possible "employee–client" combinations, even though only a fraction of those are actually justified. Splitting the clients evenly across the bookkeepers (60 ÷ 5 = 12 clients per person) brings the number of justified combinations down to 5 × 12 = 60 — the rest is access with no reason anyone could explain to an inspector.

What this looks like at the level of roles in the system

In practice that means three levels: a bookkeeper has access to her assigned clients, someone covering for a colleague on leave gets temporary access with an expiry date, and an owner or team lead has full visibility because that follows from their role, not from login convenience. The more people share one account "just in case", the harder it becomes for anyone to show who actually processed a given client's data.

What authorization alone does not solve

Authorization puts order into what happens inside the office's own team. It doesn't replace the data processing agreement the office must have signed with each client whose data it processes on that client's behalf. These are two different documents, two different obligations, and two different counterparts — one governs the office–employee relationship, the other the office–client relationship. We cover where client data physically ends up once several systems and subcontractors are involved separately, in automation and GDPR.

When to review the list of authorizations

A list of authorizations isn't something you sign once and file away. The natural moments to review it are: the end of an employment contract or engagement, a change of role in the team — for example a promotion to team lead that requires broader visibility — and the end of a working relationship with a specific client, after which access to that client's file should disappear, not stay "for later".

SituationWhat to do with access
A new bookkeeper joins the teamGrant access only to the clients assigned to them
An intern or trainee works on a specific caseAuthorization limited to the internship period and that case
An employee changes role (e.g. gets promoted)Update the scope of authorization to match the new role
An employee's contract endsRevoke access on the last day, not "at some point"
A client ends the relationship with the officeClose the team's access to that client's file

Do it yourself in a week: an access list

Three people talking at a round table with tea, bright room with plants
A conversation about who on the team handles what — the starting point for splitting access
  1. List everyone who has any access to the system holding client data — including interns and people covering for colleagues.
  2. Next to each person, mark which clients they actually have assigned cases for this month.
  3. Compare that with what they actually have access to in the system — the gap is access with no justification.
  4. Check whether each of these people has a written or electronic authorization, rather than just a login passed on verbally.
  5. Mark in your calendar when contracts, internships and client relationships end — these are the natural moments to revoke access.

For an eight-person team, this list takes one afternoon, and it shows exactly the cases that are hard to explain during an inspection: "why does this person even see this". If this is the first clean-up you're doing in your data, four thresholds instead of a general analysis shows where to start in a small company.

What this looks like when a system manages access

Keeping the authorization list up to date in a spreadsheet works fine until the team grows, or someone forgets to update an entry. A system where access is tied to the client, not to a general account, does the bookkeeping for you:

  1. employee
  2. assigned clients
  3. file-open log
  4. an alert on a stranger's file
The diagram shows the same process step by step — from the first link to the last.

Who exactly has access to which clients is a decision the office owner makes — Aura's system doesn't decide that on its own, it only enforces the rules once they're set. In CRM and automations, client data and the people responsible for them are kept in one place instead of scattered files, and system integrations (Integrations) keep track of which data source is the real one and which is just a copy, so nobody has to guess where a client's file was last updated. Programmatic access to the data itself — for offices that build their own tools — is granted and revoked on the permissions side in the API, not by emailing someone a password. Reviewing authorizations after a contract ends or a role changes can become an ordinary task with a deadline (Tasks) and a responsible person, instead of depending on someone's memory. Access sits alongside other things the same system keeps in order: dashboards with sales numbers (Dashboards) and finance figures, and weekly AI Reports, similar to what we describe under reporting automation, that reach the team on their own instead of waiting for someone to open a panel.

Frequently asked questions

Does an intern at an accounting office also need an authorization?

Yes. UODO states plainly that the obligation covers not only permanent employees but anyone the controller has assigned work requiring access to personal data — including interns and trainees. The exception is people who are themselves a processor or its employees, for whom the obligation is covered by a data processing agreement instead.

How is an authorization different from a data processing agreement?

An authorization governs access inside the office's own team — which employees, and to what extent, may process data. A data processing agreement is a separate document between the office and the client, required among other things by Article 28 GDPR, and it's an entirely different obligation — neither replaces the other.

Is the controller responsible if the processor makes a mistake?

Yes. In the case UODO cited involving fines against McDonald's Polska, the authority confirmed that both the controller and the processor are responsible for protecting personal data — one side doesn't take on all the responsibility for the other.

What exactly does it mean that the controller must be "in control" of access?

According to UODO, it means genuinely controlling who has access to the data, to what extent, and under what rules it's processed — not simply holding a document. Authorization is one of the tools that can demonstrate this control, alongside access-control mechanisms inside the system itself.

Does an authorization have to be in writing?

It depends on which rule creates the obligation in your case. UODO notes that many sector-specific laws — the Polish Labour Code, for instance — explicitly require a written authorization. Which form applies to your particular office is worth checking with a lawyer or a data protection officer, since it depends on the industry and the legal basis for processing.

When should someone's access to client data be revoked?

The natural moments are the end of an employment contract or engagement, a change of role within the team, and the end of the relationship with a specific client. In none of these cases should access stay "just in case" — those are exactly the forgotten accounts that are hardest to explain during an inspection.

Who writes this

See your business as a system.

Aura is a virtual business manager: management on facts, not impressions. For a company that wants a system running its processes instead of the owner’s memory.

The website, CRM, admin panel and automations are modules of the same system. We are not a website agency.

Look at my business

You will land on the home page. Give a company name — Aura looks at it in public data and shows what a client sees before calling you. No promises of a result.

See what we do

Related services

Read next Scroll for more

Let us look at your numbers

Tell us how enquiries are handled today — how many there are, who picks them up, where they get lost. Aura walks the process with you and shows what can be taken off a person, and what is better left alone.

Talk to Aura

The home page with Aura opens. Give a company name — she looks at it in public data and shows what a client sees. No promises of a result.

Prefer to write? marketing@auraglobal-merchants.com

Next step

Let us check whether Aura fits your place

We do not take everyone: first we look at your processes, sales and current systems and tell you honestly whether it makes sense for us to come in. A few questions, about five minutes.

Take the assessment →