Sector(s)
Team Members
Visit the site
Visit the siteOrganizations Involved
Community contributions
As a Drupal Certified Partner Platinum and a supporting partner and organizational member of the Drupal Association, Factorial has been contributing to the global Drupal community since its founding in 2015. By sponsoring and organizing events (Splash Awards, DrupalCamp, Drupal User Group Hamburg), sponsoring development time for our Drupal developers, and submitting sessions for conferences, we actively invest in the further development of the framework and the community. As a member of Drupal e.V., the German Drupal Association, we are also committed to promote Drupal in the DACH region.
The architecture of the Access Control System is based on Drupal's Access Policy API β a feature whose development Factorial actively helped shape. The External Roles module, developed within the Finstral platform, is released as an open-source project on drupal.org. We are considering publishing the Media External Focal Point module as it is a nice extension of the Media External ecosystem. We helped with multiple Media External issues, fixing bugs and making the module compatible with current Drupal versions.
Finstral is a family-owned manufacturer of windows, entrance doors, and glass walls from South Tyrol β with around 1,600 employees and over 1,000 dealer partners across 14 countries. The brand promise is: everything from a single source. At this scale, consistent product knowledge is not a nice-to-have β it is the difference between a project that runs smoothly and one that ends in queries, installation errors, and rework.
The digital infrastructure had long failed to live up to that promise: 2 terabytes of assets scattered across different systems, a legacy extranet that only insiders could operate, and an access management setup that had become an obstacle for dealers, partners, and architects alike.

Factorial is responsible for Finstral's entire digital ecosystem β from Finstral Cloud as the central partner portal, to the CRM system Contacts, the product configurator Composer, and the jobs portal. Everything on Drupal, everything on one platform, everything cleanly connected. The Compendium is the latest addition to this ecosystem: the central asset hub for partners, architects, and employees, implemented on Drupal as the experience layer, with pixx.io as the DAM backbone and Algolia as the search platform β seamlessly integrated, because the foundation was already in place.
About the project
Project Goal
The goal was a digital library that delivers on Finstral's brand promise operationally: a centralized, role-based point of access to all relevant assets for all user groups across all 14 markets.
Starting Point: Four Pain Points
The company's content landscape had grown organically over years. Product images, catalogues, price lists, and technical documentation were created and maintained in different places β with predictable consequences:
β Assets scattered across teams and systems slowed down daily work. Searching, verifying, forwarding β manually, every day, across 14 countries.
β An overly complex access management setup created operational overhead. Particularly critical: price lists that must be strictly segregated by partner and market.
β Architects were excluded from self-service access β a point of friction in every tendering and planning workflow.
β The legacy extranet was effectively an expert-only system: finding the right document required guidance. That does not scale across country borders and partner networks.
Solution: Compendium as the Central Asset Hub
The direction was clear: a centralized digital asset management system. Selecting the right foundation was a structured process: requirements were gathered across departments, and evaluation criteria were defined with a strong focus on everyday usability and integration capability. Finstral chose pixx.io β for its API-first approach, usability, and a licensing model suited to a mid-sized family business.
Factorial delivered the complete solution around that foundation: the Compendium, implemented on Drupal as the experience layer, embedded in Finstral Cloud. The key building blocks:
β Compendium portal in Drupal, integrated into Finstral Cloud
β pixx.io integration into Drupal as the DAM backbone
β Algolia integration with synchronization for fast, consistent asset discovery with faceted search
β Policy-based access control engine: harmonized access rules across Drupal, pixx.io, and Algolia
β Event-driven freshness: when an asset changes in pixx.io, it is updated in the Compendium within minutes β automatically, without manual intervention

The Architecture Principle: Normalization
Finstral's brand promise is: everything from a single source. The Compendium transfers this principle into the system architecture. Entities β products, assets, access rules β are defined once and propagated throughout the entire ecosystem. No document exists in two versions. No price list lags behind an outdated state. Whatever changes at the source changes everywhere.
Integration into the Finstral Multi-Tenant Platform
The Compendium was not built in isolation. It is part of Finstral Cloud β a multi-tenant platform on Platform.sh on which Factorial also operates the Cloud Dashboard, the CRM system Contacts, the product configurator Composer, and the jobs portal. Every architectural decision made for the Compendium had to account for the entire ecosystem and build on the guiding principle of normalization.
Outcome
Results, summarised in the following KPIs:
-
Digital asset hub established for 14 countries
-
Compendium available in 8 languages
-
Unified asset hub provided for architects, employees, and trade partners
-
Architects with self-service access for the first time: Magic Links without account registration
-
60% more up-to-date and verified assets
-
50% better asset discoverability
-
2 terabytes of assets centrally accessible β with granular access control by market, role, and partner type
-
Asset freshness through event-driven synchronization: changes in pixx.io are visible in the portal within minutes

Challenges
In the course of the project, the team had to face the following challenges:
Access Management Across Three Incompatible Systems
Drupal, pixx.io, and Algolia each have their own, incompatible access control mechanisms. The challenge was not to configure each system individually, but to develop a cross-system strategy that works without a central directory infrastructure while remaining consistent, maintainable, and scalable. Role-based access control was ruled out β without a central directory service such as Microsoft Entra, roles cannot be reliably synchronized. Policy-based access control was the right answer, but also the more complex one.
Price Lists as Highly Sensitive Assets
Price lists are critical in B2B dealer business: they must be strictly segregated by partner, market, and permission level. A misconfiguration in access control is not a UI bug β it is operational damage. Access control for these assets had to be absolutely reliable, and at the same time straightforward to administer, so that it would not become a source of overhead once again.
Drupal in the Critical Path of Every Request
Since all access controls for dealers and partners run exclusively through Drupal, Drupal sits in the critical path of every search query and every document access. The authorization components had to be built to handle high load. A Drupal that buckles under access checks is not an authorizer β it is a bottleneck for the entire partner network.
Integration into a Live Ecosystem
The Compendium was not built in isolation. It had to be integrated into a live multi-tenant platform already running several Finstral services in production. Every architectural decision for the Compendium had the potential to affect the entire ecosystem. At the same time, the principle of normalization was non-negotiable: no isolated solutions, no data silos, no parallel versions of the truth.
Why Drupal was chosen
Drupal is already providing parts of Finstral's digital ecosystem. With the launch of the Compendium it is demonstrated what Drupal delivers as a system architecture when taken to its logical conclusion. Drupal here is not simply the CMS that manages content. Drupal is the central authorizer that decides which partner in which country can see which price list β reliably, performantly, for 1,000 dealer partners across 14 markets.
Drupal as the Authorization Layer
The core technical decision: all access controls for dealers, employees, and partners run exclusively through Drupal. Not through the DAM API, not through Algolia β exclusively through Drupal. This makes Drupal the sole authorizer for these user groups and protects the underlying systems from direct access. Architects receive time-limited access via Magic Links β without account registration. The access control architecture builds on Drupal's Access Policy API β a feature whose development Factorial actively shaped. The External Roles module, created as part of the Finstral platform, has been published as an open-source project on drupal.org.
The technical architecture is not an end in itself. It translates a brand principle into a system: Finstral's promise of "everything from a single source" does not end at the showroom β it runs through the entire digital ecosystem. Every piece of information is maintained once and automatically propagated throughout β no manual reconciliation, no outdated parallel versions.
What further sets this project apart: in this context, Factorial not only built the digital ecosystem β it also made an active contribution to the Drupal community. The External Roles module β developed out of the requirements of the Finstral platform, building on Drupal's Access Policy API β has been published as an open-source project on drupal.org. What was solved for Finstral is now available to the entire community.
The results are measurable: 60% more up-to-date assets, 50% better discoverability, 2 terabytes of assets centrally accessible for a partner network that closes deals, delivers projects, and avoids installation errors. The right document now reaches the right person at the right moment β that is operational excellence.
Technical Specifications
Drupal version:
Key modules/theme/distribution used:
Media External & Imagecache External
This module provides a new media source that enables you to import external assets into the media library as local shell entities. Its purpose is to keep original files and metadata managed within a Digital Asset Management (DAM) system while leveraging Drupal's existing media-handling capabilities. Support for additional external asset sources can be added through plugins.
Search API & Search API Algolia
This module integrates with the search server to efficiently index large numbers of entities. A key extension is the generation of secured API keys that define each user's search scope. This allows users with different permissions based on region, organization, role, or category to securely query the same search indexes while accessing only content they are authorized to view.
Media Pixxio
This custom module provides the external media source plugin, along with download controllers, webhook handlers, and queue workers for both immediate and asynchronous asset updates. It also extends Drupal media entities with third-party settings that enable media typeβspecific behaviour and configuration. We are considering adding this module to the contrib space.
Media External Focal Point
This custom module adds focal point support for external media sources. It provides a field widget for selecting percentage-based focal points on remote assets, integrates with Drupal's existing focal point and crop modules. The module also handles crop persistence, cache cleanup, and optional integration with external asset webhooks to keep focal point data synchronized. We are considering adding this module to the contrib space.
External Roles
The External Roles module integrates seamlessly with Drupal's core Access Policy API to extend role-based access control. This module allows you to assign permissions to users based on external roles, making it an ideal solution for projects that require integration with external systems or configurations.
Finstral Compendium
Built on top of the modules described above is a custom implementation that encapsulates the Compendium's business logic. It manages user authentication, authorization, and access policies, and provides reporting, queue workers for bulk updates, and cron jobs for scheduled tasks. In addition, it integrates with the CMS to manage media entities, taxonomies, and configuration.