A guide for new users — how to set up your company in the admin panel and how to work with defects day to day in the app (Windows / Android).
FixControl is a system for recording and tracking construction defects. Defects are marked on building floor plans, assigned to contractors, and their status is tracked — from being reported, through repair, to confirmed closure.
Data in the system is organized hierarchically:
Company
└─ Estate (optional — groups buildings, e.g. "Sunny Estate")
└─ Building (e.g. "B15")
└─ Location / floor plan (e.g. "0p", "1p", "dach", "M12")
└─ Defect
https://fixcontrol.pl/app/panel) — company configuration: estates,
buildings, locations/floor plans, contractors, users, roles and permissions, invoice data.Most of the actions described in points 4–10 are performed in the web panel, as an administrator. Points 11–12 cover day-to-day work in the app.
https://fixcontrol.pl/app/register.After registration, the company account starts with a trial period — information about the number of trial days and plans is shown on the registration and pricing pages.
https://fixcontrol.pl/app/login./app/panel, other users land on /app/konto.The "Forgot your password?" link leads to a password reset. The "New company?" link leads to registration.
The server address is built into the app — no configuration is needed.
After logging in as an administrator, the panel (/app/panel) has a sidebar menu with the
following tabs:
| Tab | What it's for |
|---|---|
| My account | account details, password change |
| Company data | company name, email, invoice data, subscription |
| Company users | roles and permissions, adding users (sub-accounts), building access |
| Buildings and estate assignment | estates, buildings |
| Drawings / locations | locations, floor plan type, uploading plans |
| Contractors | contractor list, their emails and login accounts |
| Defect types | configuration of custom defect types |
Most forms save automatically — after entering a value and pressing Enter / clicking outside the field (e.g. renaming, role dropdown, building checkboxes). Where relevant, a short confirmation message appears next to the field for 3 seconds — the page does not reload.
If you log in as a sub-account (not an administrator), you will only see the
My account tab (/app/konto) — see point 15.
Plan limits: if a message about exceeding a plan limit appears (e.g. number of floor plans, defects, contractor accounts, or sub-accounts), adding new data of that type is blocked until the plan is upgraded ("Company data" tab → "Subscription" → "Pricing / change plan").
An estate is an optional level that groups buildings (e.g. when you're building several buildings as part of one development). If you don't need it, skip this point — buildings without an estate work normally.
The newly added estate will appear in the list as a label with a ✏ icon — clicking it opens the rename form (the same two fields, "Save" button).
The new building appears in the buildings table:
After adding a building, go to point 6 to add locations (floors/apartments) and upload their plans.
A location is a single floor, apartment, or other area of a building on whose plan (the "floor plan") defects are marked.
0p, 1p, dach, m12Each location has an assigned floor plan type, which determines how it is sorted in lists, PDF reports, and on the floor plan view:
| Type | When to use |
|---|---|
| Storey | building floors — requires entering a storey number (level) |
| Apartment | individual units, sorted alphabetically |
| Other | everything else (e.g. outdoor areas), sorted alphabetically |
For the "Storey" type, the "Storey number" (level) field accepts:
- whole numbers: -1, 0, 1, 2, …
- half-floors: 1,5 or 1.5
- the word "parter" (ground floor) — corresponds to level 0
- the word "dach" (roof) — always sorted last, regardless of floor numbering
Storeys are always sorted (in lists, on the floor plan view, in PDFs) in ascending order by level, with "dach" always last. Apartments and "Other" locations are sorted alphabetically by name.
The type and level can be changed at any time in the locations table ("Floor plan type" column) — the change saves automatically when selected from the list / when the field loses focus.
If a location does not yet have an uploaded plan (the "Floor plan" column shows "None"):
The plan is converted automatically (PDF → PNG, max. 2048 px). After uploading, the "Floor plan" column shows "Uploaded". To replace the existing plan with a new one, use the same button again. The "✕" button removes the uploaded plan from the location (with confirmation).
A plan can also be added/replaced directly from the app, without going into the panel:
-1p, 0p, +1p) — it will be saved as a slug.If a location does not yet have any floor plan, the floor plan screen will show a "No floor plan uploaded" message with a prompt to upload one — filters and navigation remain available.
Defect types are a list of categories to choose from in the defect form (e.g. "Realizacja", "Odbiorowa"). Each company has its own list.
At least one defect type must remain — the last remaining type cannot be deleted.
New companies start with the default types "Realizacja" and "Odbiorowa". The list of types is fetched automatically by the app on startup and shown in the defect form.
A contractor is a company, subcontractor, or crew responsible for fixing defects (e.g. "Smith Electrics", "XYZ Company — plumbing"). Each defect can have an assigned contractor — this makes it easier to filter defects and generate reports per contractor.
The name and email can be edited directly in the table (saved automatically when the field loses focus). The "Delete" button removes the contractor — if it has assigned defects, the panel will show a warning about how many defects will be unassigned (the defects themselves are not deleted, only the contractor assignment is removed).
If a contractor has an email set, the system can create a login account for them in the app with the "naprawiający" (repair contractor) role — so they can change the status of their own defects themselves (e.g. mark "Mark done") without access to the full panel.
How to create a contractor account:
company-name-contractor-name (generated automatically, without underscores)Without an email set, the "Add account" button won't work — the email is needed only to send the login details; it is not used for logging in (login is via the login field, not by email).
What a contractor account sees after logging in:
/app/konto (password change, and possibly renaming
assigned locations/contractors, if it has access to them).While adding/editing a defect in the app, if the contractor you need isn't on the list:
If the entered name is very similar to an existing contractor, the app will show a warning about a possible duplicate and ask for confirmation.
Every company has three roles by default (in addition to the admin role, which always has all permissions and requires no configuration):
| Role | Permissions |
|---|---|
| obserwujący (observer) | view defects only |
| zgłaszający (reporter) | view + add defects + all status changes |
| naprawiający (repair contractor) | view + "Mark done" + "Reopen" (no adding, no "Confirm completion") |
| admin | all permissions, full access to the panel |
| Permission in the panel | What it allows |
|---|---|
| View defects | browsing the list of defects and floor plans |
| Add | adding new defects |
| Repair | changing status from "Open" to "Done" (the "Mark done" button) |
| Reopen | changing status from "Done" back to "Open" (the "Reopen" button) |
| Complete | changing status to "Completed" (the "Confirm completion" button) and reverting from "Completed" back to "Open" (the "Revert to open" button) |
For the detailed status and button flow, see point 12.
The new role will appear as another row in the roles table and will be available for selection when adding/editing users.
In the roles table, each role/permission combination is a checkbox — checking or unchecking it saves the change automatically.
The user will receive an email with their login details and a request to change their password.
Building access does not apply to the "Administrator" role — admins see all of the company's buildings. For other roles: no buildings checked = no access to any defects/floor plans.
In the "Company users" table:
If a logged-in user (sub-account) doesn't have access to all the buildings they need, they can request access themselves:
/app/konto.A message will be sent to the email addresses of all active administrators of the company (who have an email set). There is no in-app notification — the administrator must grant access manually in the panel (point 10.2).
Alternatively (Windows): you can drag a defect photo from File Explorer straight onto the floor plan — the form will open automatically with the photo attached and the position set to where it was dropped.
Defects without an assigned position on the plan are visible in the "Unplaced" side panel — they can later be dragged to the correct spot on the plan.
| Field | Description |
|---|---|
| Location * | the building/floor/apartment the defect belongs to |
| Description | the content of the report; can also be dictated by voice (microphone icon in the field) |
| Type * | the defect category, from the list of defect types |
| Status * | see point 12 |
| Contractor | the person/company responsible for the repair; a new one can be added "on the fly" (see point 8.4) |
| Photo | "Take photo" (camera) or "Add from gallery" |
* required fields.
Important: if a defect is already placed on the plan (has an x/y position), the "Description" field is locked for editing — it can only be set when creating the defect or before placing it on the plan. The other fields (type, status, contractor, photo) can always be edited.
In the defect form, in the photo section:
The photo is automatically compressed before being uploaded.
| Status (internal) | Label in the app | Meaning |
|---|---|---|
otwarta |
Open | the defect has been reported and is awaiting repair |
usunieta |
Done | the contractor has reported the repair, awaiting confirmation |
zakonczona |
Completed | the repair has been confirmed, the defect is closed |
Colors on the floor plan: Open = orange, Done = blue, Completed = green.
[Mark done] [Confirm completion]
Open ───────────▶ Done ───────────────────────▶ Completed
▲ │ │
│ [Reopen] │ │
└───────────────────────┘ │
▲ [Revert to open] │
└───────────────────────────────────────────────────────────┘
The status buttons are available on the home screen (defect card), on the floor plan (details panel), and in the defect edit form — they work the same way everywhere.
Each button requires the corresponding permission on the user's role (see point 9.2):
| Button | Permission required |
|---|---|
| "Mark done" | Repair |
| "Reopen" | Reopen |
| "Confirm completion" | Complete |
| "Revert to open" | Complete |
If the user does not have the required permission, the corresponding button is not available.
The "Floor plan" screen shows the plan of a floor/apartment with defects marked as colored dots (color according to status — see point 12.1).
The "Export" screen (available from the top menu) allows you to:
Before generating a PDF, you can configure:
After the reports are generated, the "Generated reports" list lets you open the file, open the folder containing the file, or prepare an email with the report as an attachment (with the contractors' email addresses from that report pre-filled by default).
The /app/konto page is available to all logged-in users (admins and sub-accounts) and
includes:
The administrator sees the same account options additionally in the panel (/app/panel → "My
account").