Ga naar hoofdinhoud

Market analysis

This page positions dossiq against the systems a municipality or an SMB would otherwise buy. It was first written before any competitor had been installed, and it read like it: every landscape table was a set of claims from feature pages. Since September 2026 the numbers on this page are measured. Thirty columns stand in the parity ledger, twenty-six of them installed and driven, and every score below is a yes count on the 180 domain-neutral rows, as of ledger v10.1 and gap register v4.1 (2026-09-14). The method, the counting rule, the statutory split and the full ranking are on competitor parity, September 2026; the links behind every cell are on competitor sources. A second sweep asked what these systems have that our list never thought to ask, and it is on competitor discovery, September 2026.

Summary​

Case management is coordination: tracking work, assigning it, meeting deadlines, managing documents and recording decisions. Nextcloud already provides tasks, files, chat, calendar and activity, and dossiq orchestrates those rather than rebuilding them. That is still the positioning, and the driving confirmed the part of it that can be measured: Deck, a kanban board on the same host, passes seven of the 23 document rows through one fact, that an attachment is a file in Files, and dossiq gets six of those on the same host for the same price.

What the driving refuted is the claim that nothing else occupies the space. OpenCase, a Danish municipal case system on Nextcloud, scores 58 of 180. Two forks of a German service desk, OTOBO and Znuny, and the project module of a Belgian ERP, Odoo, score 78, 73 and 78 against dossiq's 71. Frappe Helpdesk passes us by a single row, 72. dossiq is seventh of twenty-six driven columns on the comparable half, behind xxllnc Zaken at 125 and GZAC at 82 in its own family. Where dossiq leads is where the law is: 6 of 7 decision rows, 8 of 10 deadline rows, and 13 statutory yes answers that no non-Dutch system scores at all.

What changed since July​

The claims this page made before the driving, and what the corpus found. Rows cite procest/… files in ConductionNL/market-intelligence, or the gap register at procest/_gaps/.

the page saidwhat was measuredreplaced by
"No case management solution exists in Nextcloud."OpenCase 1.1.0 (Lamotech) is a municipal case system on Nextcloud, driven in round 2: 62 yes of 206, 58 of 180. Deck scores 37 of 180 (_round4/compare/eighteen-system-tally.md).The Nextcloud ecosystem table below, with both columns.
"Nextcloud Deck: Kanban board for tasks, not case management."Measured at 37 of 180, level with Kanboard, and the first non-Dutch column to pass seven document rows, all of them Nextcloud's (nextcloud-deck/round4/open-core.md). Batch 12 found two more that reach seven and eight with document managers of their own, Tuleap CE and Huly. A card is not a case, which is eleven honest no answers.The same table.
"Jira Service Management: developer-friendly ITSM, not case management."Rated from its documentation at 83 of 180, above every driven non-Dutch column, graded documented, not driven and printed as an upper bound (_round4/compare/findings-batch8.md).The issue and ticket family table.
Redmine as the open-source comparison a buyer will name.A buyer comparing dossiq to "Redmine" is quite likely being shown Easy Redmine 16.0, rated from documents at 86 of 180. Its core is Redmine under GPL-2.0; everything Easy wrote sits beside it under a commercial licence the cloud buyer may not even read (_round4/compare/open-core-batch10.md).The issue and ticket family table, and the eleventh open-core shape.
"Valtimo/GZAC: proprietary core (Ritense)."The monorepo is public under EUPL-1.2 and was driven: 86 of 206, 82 of 180. Open core only partly: two closed-published npm packages in the release build (valtimo/round2/).The Dutch government table.
"OpenZaak: API-only, no end-user UI."OpenZaak itself was not driven. Its municipal frontend, Dimpact ZAC, was read: 69 yes, 61 partial, 76 no on 206, and it owns no data, so 26 of its 76 misses cite an external component (zac/round3/).The Dutch government table, ZAC as a column with its caveat.
"No CRM-to-case flow: no competitor has native request-to-case conversion with a built-in CRM."Row 1.3, create a case from a contact record: xxllnc Zaken yes, dossiq partial, owner dossiq (_gaps/gap-register.md). Odoo ties the top of the non-Dutch corpus from a platform whose CRM sits in the same tree.Withdrawn. The row is a dossiq gap.
"Federated cross-org cases: no case system has this. Only Dossiq can share case data across organizations."Never measured as a matrix row.Withdrawn as a superlative; kept below as a design claim, marked unmeasured.
"Calendar-native deadlines" as an advantage.The deadline engine is the largest measured defect: 30.4% of the terms dossiq stores land on a Saturday, Sunday or Dutch holiday, and nothing rolls them to the next working day as the Algemene termijnenwet requires (_round4/compare/deadline-engines.md). OpenProject has the best engine in the corpus.The risks table, first row.
"Talk rooms per case: no BPM engine has this."Not measured. What round 2 did measure: no competitor composes another product into the case page, which dossiq does with mail, appointments, decisions and hours as leaf tabs (_round2/compare/M3-integrations.md).Replaced by the measured sentence.
"Heavyweight deployment: BPM engines require Java/Spring stacks."The four non-Dutch systems above dossiq are Perl (OTOBO, Znuny), Python (Odoo) and Python on a low-code framework (Frappe Helpdesk). Deployment weight decided nothing in the ranking.Dropped from the gap table.
"~40-50% infrastructure free."An unmeasured percentage. The measured version is Deck's seven document rows through Files, six of which dossiq gets on the same host (_round4/compare/fourteen-system-tally.md).The measured sentence.
Risk: "Feature gap vs enterprise BPM: high."Camunda and Flowable were never driven. The measured risk is elsewhere: two help-desk forks and an ERP's project module outscore dossiq on the comparable half, and dossiq is the only no in the ledger on watchers (13.18).The risks table.
Enterprise SaaS prices per user per month.Unverified marketing figures. ServiceNow is docs only in the ledger and was never rated; Monday.com, Power Automate and Kissflow are not in the ledger at all.Removed.

One claim this page never made, and a buyer does. A depth study read what a kenmerk can actually do, 54 capabilities over eleven systems and dossiq, and dossiq comes eleventh of twelve. xxllnc Zaken scores 43, Valtimo 34 and Dimpact ZAC with OpenZaak Catalogi behind it 33, against dossiq's 21. The gap is concentrated rather than spread: dossiq scores zero yes on the thirteen field types, which is the half a demo is made of, and is competitive only on case-type structure, the half the ZGW model gave us. The ranking, the four groups and the second reader who recounted ZAC, Valtimo and OpenCase are on competitor discovery, September 2026, from _round4/discovery/casetype-configurability.md.

What the discovery sweep left open, Ruben closed on 2026-09-14. Twenty-two decisions were taken, and six differ from what the file recommended: revive all five parked candidates, set the promotion bar on relevance rather than on passer count, put the archiving process in openregister rather than filinq, use openregister's existing soft delete rather than a new recycle state, give the mail account to Nextcloud Mail rather than integriq, and re-rate the twenty not candidates with an MKB lens because the product serves a broad market including MKB. Each decision and its reasoning is on competitor discovery, September 2026.

Two July workup claims the register also corrected: "Zaaktype versioning" was marked shipped, and the matrix reads a version chain on workflowTemplate only (row 2.3, narrowed to S by the re-read); "Delegation / vervanging & waarneming" was marked shipped, and the registration exists while the list half has no call site (row 13.17). Both are in the re-read and the OpenSpec umbrella.

1. Competitive landscape​

Scores are yes of the 180 domain-neutral rows, with the combined 206-row figure in brackets where the corpus prints it. driven means installed, seeded with Dutch municipal cases and driven in a browser; documented means rated from documentation and printed as an upper bound; not driven means the system is landscape only and carries no score.

Nextcloud ecosystem​

systemclass180open corewhat was found
OpenCase 1.1.0 (Lamotech)driven58 (62 of 206)yes: a separate non-public enterprise edition holds AI, digital post, CPR and CVRA Danish municipal case system on Nextcloud, and the only case system on dossiq's host. Strong on documents (13 of 23) and parties (7 of 13); cannot list overdue cases.
Nextcloud Deck 1.18.4driven37no, and not a shape: nothing is withheldSeven document rows through Files, versions, expiring shares, lock, trash, preview and file manager. No field, number, party, term or result on a card.
Nextcloud Tasks, Nextcloud Formsnot drivenCalDAV task items and an intake form builder. No case lifecycle, roles or decisions. Unmeasured.

Dutch government (zaakgericht werken)​

Round 2 drove four Dutch systems against the 206-row matrix (_round2/compare/M1-functionality.md); round 3 read Dimpact ZAC against the same rows. The 180-row figures are from _round4/compare/twenty-six-system-tally.md.

systemclass180206 (yes / partial / no)open corewhat was found
xxllnc Zaken (Zaaksysteem)driven125136 / 40 / 30not establishedThe top of the corpus. Documents 18 of 23, parties 11 of 13, search 10 of 12, intake 9 of 13. Three UI generations in one product; fifteen clicks to create a case.
GZAC / Valtimo 13.4.1driven8286 / 55 / 65partly: two closed-published npm packagesConfiguration 18 of 24 and tasks 14 of 19 on a BPMN engine (Operaton). An Admin group with 13 children; twelve clicks to create a case; cannot list overdue cases.
dossiqdriven7184 / 87 / 35no: 0 entitlement hitsDecisions 6 of 7 and deadlines 8 of 10 lead every column; documents 7 of 23 and search 4 of 12 do not. Four clicks to create a case.
OpenCase 1.1.0driven5862 / 46 / 98yes, see aboveSee the Nextcloud table.
Dimpact ZAC 1.0.316read, not driven69 / 61 / 76not establishedA case component over Open Zaak. It owns no data: the case, its documents and its retention live in Open Zaak, so 26 of its 76 misses cite an external component and the column reads low for a structural reason.
OpenZaak, Rx.Mission, Decos JOIN, Mozard, PinkRoccade iZaaksuite, Atabix, Visma Circlenot drivenRound 1 scouting material exists in the corpus per vendor. OpenZaak is the API component ZAC fronts; the others are commercial and were never installed.

What round 2 concluded in words (_round2/compare/M1-functionality.md, "Where all three rivals have it and we do not"): the set of rows every Dutch rival passes and dossiq fails was seven at the reading and reduces to at most two, probably one, once stale cells are corrected: a one-click claim on a case (row 2.4), which all three give a handler and dossiq still makes them get by editing a field. The re-read confirms 2.4 as a gap and opens case-claim-action.

Where dossiq is ahead of all three, measured in the round 2 files (data.strengths in the ledger): a deadline countdown and an overdue list on every case, where OpenCase and GZAC cannot list overdue cases at all; configuration in the settings gear rather than the menu; one index-and-detail pattern for every collection; case creation in four clicks against fifteen and twelve; a cross-type case index with a folder sidebar; and leaf tabs from other apps rendered inside the case.

Issue and ticket systems, the third family​

Set by Ruben on 2026-09-12: issue trackers, help desks and boards are a third competitor family, closer to dossiq in daily use than a BPM engine. Twenty-two were installed and driven and four rated from documents (_round4/compare/README.md). The open-core column names the shape from the fourteen the round found; the result page explains each.

systemfamilylicenceclass180open core
OTOBO 11.0.17ticketGPL-3.0driven78no: 45 free packages, none priced; four core capabilities ship switched off
Odoo 19.0 Communityproject managementLGPL-3.0driven78yes, by absence with a label: 21 to_buy records and 45 upgrade badges for a private Enterprise tree
Znuny 7.3.6ticketAGPL-3.0 and GPLdriven73no: 37 vendor packages, none priced
Frappe Helpdesk 1.30.1ticketAGPL-3.0driven72no: AGPL across both repositories, zero hits for a key or a paywall; a thin app on a thick framework
Request Tracker 5.0.10ticketGPL-2.0driven65no: nothing withheld, the extensions on CPAN under the same licence, the vendor selling hours and hosting
Tuleap CE 17.5ALM suiteGPL-2.0driven65yes, the thirteenth shape: the open edition verifies an Ed25519 licence it can never hold, and nineteen Enterprise plugins are absent. The source stopped being public on 2026-09-13
Huly v0.7.426issue and workspaceEPL-2.0driven60no gate at all, and the fourteenth shape: the vendor's own self-host compose runs 1 of 22 services and 6 of 14 pods, with no statement of what is missing
iTop 3.2.3ITSM and CMDBAGPL-3.0driven58yes, as a catalogue: 33 closed extensions on the store, none in the tree
GLPI 11.0.8ITSM help deskGPL-3.0driven56no
osTicket 1.18.4ticketGPL-2.0driven55no; eight free capabilities in a separate, stale repository
Zammad 7.1.3help deskAGPL-3.0driven53no
OpenProject 16.6.10issue and projectGPL-3.0driven46yes: 32 features gated at runtime, four degrading silently
Redmine 7.0.1issueGPL-2.0driven43no; plugins and a proprietary fork sold beside it
Nextcloud Deck 1.18.4kanbanAGPL-3.0driven37no, not a shape
Kanboard 1.2.54kanbanMITdriven37no: 163 third-party plugins, none priced in the directory
GitLab CE 19.3.2forge issuesMITdriven36yes, by subtraction: the paid code removed at build time, 1,616 empty seams
Vikunja 2.6.0taskAGPL-3.0driven35yes, a gate that hides: three paid features in the AGPL tree answering 404 by design
Taiga 6.10.2agile project managementMPL-2.0driven32no, and not a shape: zero hits, the vendor sells hosting of this code. Telemetry is on by default and sends the instance's own URL nightly
Forgejo 16.0.4forge issuesGPL-3.0driven23no; a closed derivative is unavailable by design
Gitea 1.27.3forge issuesMITdriven23no gate anywhere, and the twelfth shape: the steward sells Gitea Enterprise and Gitea Cloud, with no trace of either in the tree
Plane Community 1.4.2issueAGPL-3.0driven22yes: the paid features are absent, only the seams remain
FreeScout 1.8.240ticketAGPL-3.0driven22yes: 72 of 75 modules priced, the paywall through the free half
Easy Redmine 16.0issue and projectGPL-2.0 core, ESCLv2.0 layerdocumented86, upper boundyes, the eleventh shape: a source-available proprietary layer on a GPL core, sold as open source; 22 cells name the Platform plan and 9 an add-on
Jira Service Management CloudITSMproprietarydocumented83, upper boundyes, by plan: a plan table, 16 cells Premium, 8 Enterprise
YouTrack 2026.2issueproprietarydocumented78, upper boundno: nothing withheld above ten users and three agents
Jira Software Data Center 11.3issueproprietarydocumented64, upper boundno above the user tier; the service half is a second licence, and sales to new customers ended on 2026-03-30

Gitea and Forgejo are one product for every question in the matrix: 23 yes and 48 partial each, and 0 of 206 rows differing. Batch 12 closed the undriven set the candidate table had carried since round 3.

Three things the family says as a whole. A product built around a team's own work has no party, no document record, no decision and no term engine, which is 53 rows between four sections; the help desks do better than the boards because a help desk is built around somebody outside the organisation. Every non-Dutch column scored 0 of 7 on decisions until batch 12, and Tuleap and Huly score 1 each, both on the same row: an outcome list configured per type. Nobody outside the Dutch family scores a besluit, a decision letter, a Woo assessment or an objection surface. And copyleft proves nothing about what you can deploy: most of these trees are GPL, LGPL or AGPL, and among them sits every open-core shape a grep has found.

BPM engines and case management platforms​

None of these was driven. They stay on the page as landscape because they are what a tender names, and they carry no score.

systempositioningwhy it is not a column
Camunda 8process orchestration, BPMN and DMNA process engine, not a case system; the rows it would score are section 3 and 11. Corpus scouting under camunda/.
Operatonthe open-source fork of Camunda 7The engine under GZAC, already measured through it.
FlowableBPM with CMMN 1.1Not installed. Corpus scouting under flowable/.
Bonita, jBPM, ProcessMakerlow-code BPMNot installed.
Appian, Pegacommercial low-code platformsClosed, no trial without a sales process.
ArkCase, CaseFabric, Alfrescocase and content managementArkCase was named for the first time in round 4 and is the next candidate outside the three families; Alfresco is archived.

Enterprise SaaS​

Cloud only. ServiceNow and the ITSM products in the last row are docs only in the ledger, included for landscape and never as evidence; Monday.com, Power Automate and Kissflow are not in the ledger and stay here only because a tender names them.

systempositioningwhy not, for a municipality
ServiceNowITSM market leaderSaaS only, no self-hosting, no Dutch statutory rows.
Monday.comwork managementSaaS only, no case model.
Microsoft Power Automatelow-code flows on M365M365 dependency; data sovereignty is the buyer's question, not a product row.
Kissflowworkflow builderSaaS only.
Zendesk, Freshservice, TOPdesk, HaloITSM, InvGate, TeamDynamix, ALVAOITSM and help deskSaaS or closed; on the ledger's candidate list, unrated.

2. Feature matrix​

The tiering below (MVP, V1, Enterprise) was written before the driving and is kept as the product's own map of its scope. It is not a comparison. The build order that the comparison produced is the gap register's five to build first and the OpenSpec umbrella.

Case management​

FeatureTierJustification
Case CRUD with lifecycleMVPCore entity
Case list with search, sort, filtersMVPNavigation
Case detail view with timelineMVPCritical UX pattern
Status timeline visualization on case detailMVPVisual progress showing passed/current/future statuses
Case deadline countdown (days remaining / days overdue)MVPAt-a-glance urgency indicator
Quick status change from case list viewMVPCommon pattern: change status without opening detail
Case type system (configurable)V1Flexible case definitions
Sub-cases (parent/child hierarchy)V1Complex case structures
Document completion checklist (case detail)V1Shows which required documents are present vs missing
Property completion indicatorV1Percentage of required custom fields filled
Days in current status indicatorV1Shows how long a case has been in current phase
Case templatesV1Standardized case creation
Case cloningV1Efficiency for similar cases
Configurable status workflows per typeEnterpriseOrganization-specific lifecycles
CMMN runtime (sentries, entry/exit criteria)EnterpriseAdvanced case automation
Bulk case operationsEnterpriseScale operations

Task management​

FeatureTierJustification
Task CRUD linked to casesMVPCore work tracking
Task list with status filtersMVPWorkflow overview
Task assignment to usersMVPWorkload distribution
Task due dates and prioritiesMVPTime management
Task checklist (sub-items)V1Detailed work breakdown
Task dependencies (blocked by)V1Sequencing work
Kanban board view for tasksV1Visual task management
Task templates per case typeV1Standardized workflows
Automated task creation on status changeEnterpriseWorkflow automation
Workload dashboard (tasks per user)EnterpriseManagement visibility

Status and lifecycle​

FeatureTierJustification
Status tracking (current phase)MVPCore lifecycle
Status history (audit trail)MVPAccountability
Configurable status typesV1Organization-specific phases
Status change notificationsV1Immediate feedback
Status-based access controlEnterprisePhase-dependent permissions
SLA tracking (time in status)EnterpriseService quality

Roles and participants​

FeatureTierJustification
Assign handler to caseMVPBasic assignment
Role types (initiator, handler, advisor)MVPCMMN role model
Multiple participants per caseV1Team collaboration
Role-based permissions per caseV1Access control
Automatic role assignment rulesEnterpriseScale operations
External participant supportEnterpriseCross-organization cases

Results and decisions​

FeatureTierJustification
Case result recordingMVPCase closure
Decision CRUD linked to casesV1Formal decision tracking
Decision with effective/expiry datesV1Legal validity periods
Result types (configurable)V1Classification
Decision templatesEnterpriseStandardized decisions
DMN decision tablesEnterpriseAutomated decision logic

Case type system​

FeatureTierJustification
Case type CRUD (admin)MVPCore behavioral configuration
Case type controls allowed statusesMVPStatus lifecycle per type
Case type controls processing deadlineMVPAutomatic deadline calculation
Case type draft/published lifecycleMVPSafe configuration changes
Case type validity periods (validFrom/validUntil)MVPVersion management
Case type controls allowed rolesV1Role restriction per type
Case type controls result types (with archival rules)V1Outcome classification
Case type custom property definitionsV1Organization-specific fields
Case type required documents per statusV1Compliance controls
Case type decision type definitionsV1Decision classification
Case type confidentiality defaultsV1Security defaults
Case type suspension/extension rulesV1Deadline management
Case type sub-case type restrictionsEnterpriseHierarchical control
Case type versioning chainsEnterpriseAuditable type evolution
Case type import/exportEnterpriseShare types across instances

My work (werkvoorraad)​

FeatureTierJustification
Personal workload view (my cases, my tasks)MVPProductivity essential
Sort by priority and due date/deadlineMVPTask prioritization
Filter by entity type (cases, tasks)MVPFocused views
Overdue item highlightingMVPProactive management
Cross-app workload (include Pipelinq leads/requests)V1Unified work queue
Workload analytics (items per user)EnterpriseManagement visibility

Admin settings​

FeatureTierJustification
Nextcloud admin settings pageMVPApp configuration
Case type management UIMVPCore configuration
Status type management per case typeMVPLifecycle configuration
Default case type selectionMVPOut-of-box experience
Result type management per case typeV1Outcome configuration
Role type management per case typeV1Role configuration
Property definition managementV1Custom field configuration
Document type managementV1Document requirement configuration
Decision type managementV1Decision configuration
Confidentiality level visibilityEnterpriseSecurity customization

Communication and collaboration​

FeatureTierJustification
Internal notes on cases (ICommentsManager)MVPCollaboration basics
Shared case views (multi-user access)MVPTeam case management
Talk integration (per-case chat, IBroker)V1Real-time discussion
Calendar integration (deadlines, IManager)V1Deadline visibility
Activity stream (case events, IManager)V1Unified timeline
Notifications (assignment, status, deadline)V1Immediate feedback
User mentions in notesV1Team collaboration
Email notifications on case updatesV1External communication
Email templates per case typeEnterpriseStandardized correspondence

Document management​

FeatureTierJustification
File attachments on cases (IRootFolder)V1Document management
Shared folder per case (Files)V1Case dossier
Document categorizationV1Classification
Document versioning (via Nextcloud)V1Audit trail
Document templates per case typeEnterpriseStandardized documents
Digital signature integrationEnterpriseLegal validity

Reporting and analytics​

FeatureTierJustification
Dashboard with case counts and status overviewMVPAt-a-glance visibility
Case status distribution chartMVPVisual overview
List/table export (CSV)V1Data portability
KPI dashboard (avg processing time, open cases)V1Management visibility
Case type breakdown chartV1Distribution of open cases by type
Average processing time per case typeV1Performance metric per type
Overdue case alertsV1Proactive management
SLA compliance meter (% cases meeting deadline)EnterpriseService quality tracking
Case type performance comparisonEnterpriseCompare avg time, completion rates
Handler workload heatmapEnterpriseVisualize case distribution across handlers
Custom report builderEnterpriseFlexible analytics
Trend analysis (case volume over time)EnterpriseStrategic planning

Security and compliance​

FeatureTierJustification
RBAC via OpenRegisterMVPAccess control
Full audit trail (who changed what, when)MVPAccountability
WCAG AA complianceMVPGovernment requirement
Confidentiality levels on casesV1Sensitive case handling
GDPR data export (right of access)V1EU compliance
GDPR data deletion (right to erasure)V1EU compliance
NL Design System themingV1Government visual compliance
Data retention policiesEnterpriseCompliance automation
Archival management (archiefwet)EnterpriseDutch archival law
Field-level access controlEnterpriseSensitive data protection

Integration​

FeatureTierJustification
Pipelinq bridge (request-to-case)V1CRM-to-case workflow
ZGW Zaken API mappingV1Dutch gov interop
ZGW Besluiten API mappingV1Dutch decision interop
ZGW Catalogi API mappingV1Dutch type catalog interop
External REST APIV1OpenRegister provides this
Nextcloud Flows automationEnterpriseLow-code triggers
Webhook supportEnterpriseExternal integration
Federated case sharingEnterpriseCross-organization cases

Customization​

FeatureTierJustification
Configurable list columnsV1UI flexibility
Custom fields per case type (OpenRegister schema)V1Organization-specific needs
Saved views/filtersV1User productivity
Custom dashboardsEnterprisePersonalized views
Public intake form (citizen-facing)EnterpriseExternal case submission
Workflow designer (visual)EnterpriseAdmin-configured automation

3. Gap analysis​

Every line here names a row or a file. The full per-area table is on the result page.

What competitors do well, measured​

  • xxllnc Zaken tops every area a Dutch buyer asks about first: documents 18 of 23, parties 11 of 13, search 10 of 12, intake 9 of 13.
  • GZAC wins configuration, 18 of 24, and tasks, 14 of 19, on its BPMN engine.
  • OTOBO and Znuny ship a process engine, an ACL engine, custom fields, nine working calendars, a generic interface and a customer portal, and score 8 of 12 on search and 7 of 10 on reporting. None of their vendor packages is priced.
  • Odoo reaches 78 without a case number, a term engine or a document model, from the platform under its project module: one chatter, one automation engine, one record-rule layer, one form builder and typed properties per project.
  • OpenProject has the best deadline engine in the corpus: a working-day calculator that returned a non-working day 0 times in 1,675 computations, and the only recompute of existing deadlines when the calendar changes, with the reason written to the history.
  • Redmine still wins field permissions by role and case state outright, and recomputes a dependent's dates when a predecessor slips.
  • Deck passes seven document rows because its attachment is a file in Files.

What they lack, measured​

gapevidence
Decisions1 of 7 at best in every non-Dutch column, twenty-two driven and four documented, and 0 in twenty-four of the twenty-six. The one row Tuleap and Huly pass is an outcome list per type. The nearest decision object anywhere is OpenProject's MeetingOutcome with a decision kind and no approver, quorum, number, effective date or publication.
Dutch statutory rows26 rows, twenty-six non-Dutch systems, 676 cells, zero yes. Every catalogue searched by name: 0 apps for ZGW, and none of the seven names on Easy8's 1,434 pages.
DocumentsThe weakest area of the whole non-Dutch corpus, with one exception. Znuny and GitLab share two yes answers over 46 document rows; Kanboard and Vikunja the same; Frappe Helpdesk, Request Tracker, Gitea and Taiga score one each of 23. Huly scores 8 and Tuleap 7, both from a document manager of their own.
EasterNothing in twenty-six non-Dutch columns computes it. Frappe Helpdesk and Request Tracker agreed to the minute on a Dutch year and both landed a 2027 term on Tweede Paasdag. dossiq computes it, in lib/Service/WorkingDayCalculator.php.
The edition you can deployPending row 11.27. Fourteen open-core shapes across the corpus; dossiq passes because there is no paid half.
Overdue listsOpenCase and GZAC cannot list overdue cases at all.

Where dossiq is behind, measured​

rowwhatwho passes
13.18Watchers on a case, distinct from the assigneeEight of eight non-Dutch systems in the register's reading; dossiq the only no in the ledger.
6.15Internal versus public per timeline entrySeven of eight; the citizen portal cannot show a timeline until every entry says which side of the counter it is on.
8.11, 8.12, 8.17An administered working calendar, the Atw roll, recompute on change30.4% of stored terms land on a non-working day.
2.4One-click claim on a caseAll three Dutch rivals.
Q10.14A refused write answers with a status47 catch (\Throwable) sites in 37 files under lib/Service/ return null or [].
13.17Substituted work reaches My workfetchSubstitutedWork() has no call site.
13.23A right on a parent case applies to its sub-casesVikunja, measured three levels down; CaseAccessGuard.php never reads parentCase.
6.20Outbound webhooks are signedVikunja; dossiq verifies inbound signatures and signs nothing outbound.
3.22A stage holds a capacity and refuses work past itVikunja with a 412; no Dutch system in the corpus. Taiga stores a WIP limit and enforces it only in a CSS class.
8.22Every write path to a date field agrees, and one date is shownTaiga, whose due_date is a date and not a timestamp. Nine dossiq controllers can set a case date and the only normaliser is private to one caller.
8.23The deadline engine reads the calendar the organisation administersNobody yet. dossiq is partial: 37 files under lib/ do date arithmetic and five call WorkingDayCalculator, three of the rest being term paths by name.
sections 4, 9, 3, 11Documents 7 of 23, search 4 of 12, tasks 6 of 19, configuration 9 of 24xxllnc, GZAC, OTOBO, Odoo.

The gap register puts these and the rest into 161 gaps with one owner each, 34 on dossiq and 69 on openregister. 152 of them name the OpenSpec change that carries them, across 85 changes in nine repositories, and the nine that do not each say why: two deliberate no's on Microsoft integration, two more on openregister, four platform facts that belong to Nextcloud, and one proposal waiting for a driven yes. The result page has the counts by owner, and the umbrella the dossiq changes, 33 at first and five more.

Twelve pull requests are merged so far: dossiq #2719, #2721, #2723, #2729, #2732, #2744, #2746 and #2748; openregister #3707, #3711 and #3714; portaliq #551. Thirteen more lanes are in flight and none is merged.

Nextcloud-native advantages, measured and unmeasured​

capabilitystanding
Leaf tabs from other apps inside the case page (mail, appointments, decisions, hours)Measured in round 2: no competitor composes another product into the case page.
Document capabilities through Files (versions, expiring shares, lock, trash, preview, file manager)Measured through Deck: six rows dossiq gets on the same host; row 4.23 says which already follow.
Case creation in four clicksMeasured: fifteen in xxllnc Zaken, twelve in GZAC.
The calendar as an OpenRegister schema, with Easter computedMeasured against twenty-six non-Dutch columns. Three of dossiq's own term paths do not call it, which is proposed row 8.23.
Federated cross-organisation casesDesign claim, not a matrix row. Unmeasured.
Talk room per case, air-gapped deployment, data reuse across apps on OpenRegisterDesign claims. Unmeasured.

4. Strategic positioning​

Positioning statement​

dossiq is case management that lives where your team already works. Built into Nextcloud, it turns the workspace you have into a case system, with files, calendar, chat and activity already connected.

Differentiation​

  1. The law, measured. 13 statutory yes answers, 6 of 7 decision rows and 8 of 10 deadline rows that no help desk, board or forge scores. That is the half of the matrix a Dutch buyer cannot do without, and the half the comparable score leaves out on purpose.
  2. Platform leverage. Documents, tabs from other apps, and the file manager come from the host; Deck proved the document rows do, and dossiq gets them for the same price.
  3. Nothing withheld. No paid edition, no key, no gate: pending row 11.27 passes on a grep with zero hits, which two of the three systems above dossiq outside the Dutch family cannot say without a footnote.

Target segments​

segmentwhy dossiqwhat they would otherwise use, measured where it was
Small municipalitiesSimple, affordable, NL-compliantSpreadsheets and shared drives, or xxllnc Zaken at 125 of 180
Government teamsZGW-ready, sovereign, NL DesignOpen Zaak with ZAC, which owns no data of its own
SMB operationsLightweight, on the workspace they haveOdoo at 78, OTOBO or Znuny at 78 and 73, Frappe Helpdesk at 72
NGOs and nonprofitsFree, self-hosted, collaboration firstKanboard or Vikunja at 37 and 35

Risks, measured​

riskevidencemitigation
Statutory terms land on non-working days30.4% of stored terms, _round4/compare/deadline-engines.md; the Atw roll is absentFirst of the five to build: the administered working calendar with the roll and recompute, terms-on-the-engine-calendar and openregister working-calendar-admin
Non-Dutch products outscore dossiq on the comparable halfOTOBO 78, Odoo 78, Znuny 73 and Frappe Helpdesk 72 against 71; Easy Redmine 86 and JSM 83 as documented ceilingsThe gap register: 161 gaps, 103 of them size S, 152 carried by a named OpenSpec change
Rows dossiq alone fails13.18 watchers, 6.15 internal versus publicSecond and third of the five to build
Refusals that look like absence47 catch-and-return-null sitesrefusals-carry-a-status, fourth of the five
Schemas registered ahead of the feature27 schemas with no surface anywhere on the treeno-schema-without-a-surface, a structural test
OpenRegister dependency69 of 161 gaps, and 280 of the 636 discovery candidates, are owned by openregister, every one of them now carried by a changeThe openregister umbrella carries them; dossiq keeps a half on each
Documents are the largest area gap against the Dutch rivals, and now against one non-Dutch column7 of 23 against xxllnc's 18, OpenCase's 13 and Huly's 8documents-on-the-case and the Files rows Deck already passes on the same host

The MVP, V1 and Enterprise lists below are the product's own scope map, written before the driving and kept for continuity. For what to build next, read the five to build first.

MVP (27 features)​

Replace spreadsheets and informal case tracking for small teams. Case types control behavior from day one.

Case management

  1. Case CRUD with lifecycle
  2. Case list with search, sort, filters
  3. Case detail view with timeline
  4. Status timeline visualization on case detail
  5. Case deadline countdown (days remaining / overdue)
  6. Quick status change from case list view
  7. Case result recording

Case type system 8. Case type CRUD (admin) 9. Case type controls allowed statuses (ordered) 10. Case type controls processing deadline (auto-calculated) 11. Case type draft/published lifecycle 12. Case type validity periods

Task management 13. Task CRUD linked to cases 14. Task list with status filters 15. Task assignment to users 16. Task due dates and priorities

Roles and status 17. Case handler assignment (initiator, handler roles) 18. Status tracking with history

My work and dashboard 19. My Work view (personal workload: my cases, my tasks) 20. Overdue item highlighting 21. Dashboard with counts and status distribution

Admin settings 22. Nextcloud admin settings page 23. Case type management UI 24. Status type management per case type 25. Default case type selection

Platform 26. RBAC via OpenRegister 27. Full audit trail, WCAG AA, English/Dutch localization

V1 (34 additional features)​

Compete with Open Zaak plus a frontend for government teams.

Case type extensions 28. Case type controls allowed roles 29. Case type controls result types (with archival rules) 30. Case type custom property definitions 31. Case type required documents per status 32. Case type decision type definitions 33. Case type confidentiality defaults 34. Case type suspension/extension rules

Case management 35. Sub-cases (parent/child) 36. Document completion checklist (required vs present) 37. Property completion indicator (% required fields filled) 38. Days in current status indicator 39. Case templates 40. Confidentiality levels on cases

Task management 41. Task checklist and dependencies 42. Kanban board for tasks 43. Task templates per case type

Decisions 44. Decision CRUD with effective/expiry dates

Admin settings 45. Result type management per case type 46. Role type management per case type 47. Property/document/decision type management

Reporting 48. Case type breakdown chart (dashboard) 49. Average processing time per case type

Collaboration 50. Talk integration (per-case chat) 51. Calendar integration (deadlines in calendar) 52. Activity stream publishing 53. Status change notifications 54. File attachments and shared folders

Integration 55. Pipelinq bridge (request-to-case) 56. ZGW API mapping (Zaken, Besluiten, Catalogi) 57. Cross-app My Work (include Pipelinq leads/requests)

Compliance and UX 58. GDPR export + deletion 59. NL Design System theming 60. Saved views/filters 61. Configurable list columns

Enterprise (21 additional features)​

Large municipalities, multi-organization, and compliance-heavy deployments.

  1. Federated case sharing
  2. Case type sub-case type restrictions
  3. Case type versioning chains
  4. Case type import/export
  5. CMMN runtime (sentries, criteria)
  6. Nextcloud Flows automation
  7. Automated task creation on status change
  8. SLA compliance meter (% cases meeting deadline)
  9. Case type performance comparison
  10. Handler workload heatmap
  11. Workload analytics (items per user)
  12. DMN decision tables
  13. Archival management (archiefwet)
  14. Data retention policies
  15. Field-level access control
  16. Webhook support
  17. Public intake form
  18. Document templates
  19. Bulk case operations
  20. Workflow designer (visual)
  21. Custom report builder