Valtimo documentation
  • Welcome to Valtimo
  • Fundamentals
    • â„šī¸What is Valtimo
    • đŸ™ī¸Architectural overview
      • Choosing the right setup
      • âš™ī¸Available modules
    • Process Exchange
      • Process blueprints
      • Building blocks
    • 📖How to use this documentation
    • đŸ–ąī¸Getting started
      • Configuring the database
      • Modules
        • Core modules
          • Audit
          • Authorization
          • Camunda
          • Case
          • Connector
          • Contract
          • Core
          • Dashboard
          • Document
          • Document generation
          • Exporter
          • Form
          • Form flow
          • Form flow Valtimo
          • Importer
          • Localization
          • Local document generation
          • Local mail
          • Mail
          • Mandrill
          • Milestones
          • Plugins
          • Outbox
            • Outbox RabbitMQ
          • Process document
          • Resource
          • Temporary resource storage
          • Test utils common
          • Value resolvers
          • Valtimo dependencies
          • Valtimo dependency versions
          • Web
            • CORS
        • GZAC modules
          • Besluit
          • Besluiten API
          • Catalogi API
          • Contactmoment
          • Documenten API
          • Haalcentraal BRP
          • Klant
          • Notificaties API
          • Notificaties API Authentication
          • Objecten API
          • Objecten API Authentication
          • Object management
          • Objects API
          • Objecttypen API
          • OpenZaak
          • OpenZaak Plugin Authentication
          • OpenZaak resource
          • Portaaltaak
          • SmartDocuments
          • Valtimo GZAC dependencies
          • Verzoek
          • Wordpress mail
          • Zaken API
      • Compatibility matrix
  • Features
    • 🔏Access control
      • Configurable elements
      • Configuring roles
      • Configuring permissions
      • Configuring conditions
      • Configuring context conditions
      • For developers
        • Front-end access control
        • Creating a resource
        • Creating a relation to another resource
        • Running custom code without access control
    • đŸ—ƒī¸Case
      • Configuration
      • Document definition
      • List
      • Notes
      • Processes
      • Search fields
      • Statuses
      • Tabs
      • Tags
      • Widgets
        • Fields widget
        • Custom component widget
        • Form.io widget
        • Table widget
        • Collection widget
      • For developers
        • Search fields API
        • Case list tab order
        • Custom case list columns
        • Custom case tabs
        • Case migration
        • Custom case headers
        • Register Angular component
    • 📊Dashboard
      • Widget data sources
      • Widget display types
      • For developers
        • Custom dashboards
        • Custom data sources
        • Custom display types
        • Widget translations
    • 📋Forms
      • Creating FormIO forms in Valtimo
      • Interpolating data in Form.io
      • Configuring an Objecten API object form
      • For developers
        • Form field data resolver
    • 🔀Form flow
      • Creating a form flow definition
      • For developers
        • Custom form flow component
        • Whitelisting Spring beans for Form flow
    • 🌍Localization
      • For developers
    • Logging
      • For developers
    • âœ‰ī¸Outbox
      • For developers
    • 🔌Plugins
      • Configuring plugins
      • SmartDocuments plugin
      • Exact Plugin
      • For developers
        • Custom plugin definitions
    • ⭕Process
      • System processes
      • Correlating messages
      • Job service
      • For developers
        • Integrating spring beans in a process
        • Whitelisting Spring beans for Camunda
    • 🔗Process links
      • Creating a process link
      • Editing a process link
      • Unlinking a process link
    • ✅Tasks
      • Task list columns
    • đŸ”ĸValue resolvers
      • For developers
    • 📃ZGW
      • Documents
        • Access control
        • Uploading to Documenten API with metadata
      • Creating extra case tabs for Zaakobjects
      • ZGW plugins
        • Besluiten Plugin
        • Catalogi API plugin
        • Documenten API plugin
        • Object Token Auhentication Plugin
        • Objecten API Plugin
        • Objecttypen API Plugin
        • Open Zaak plugin
        • Portaaltaak Plugin
        • Verzoek Plugin
        • Zaken API plugin
  • Release notes
    • Release notes
    • 12.x.x
      • 12.0.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
        • Migration
          • Spring Boot 3
      • 12.1.0
      • 12.2.0
      • 12.3.0
        • 12.3.1
      • 12.4.0
        • 12.4.1
      • 12.5.0
      • 12.6.0
        • 12.6.1
      • 12.7.0
        • 12.7.1
        • 12.7.2
      • 12.8.0
      • 12.9.0
      • 12.10.0
        • 12.10.1
        • 12.10.2
      • 12.11.0
      • 12.12.0
    • 11.x.x
      • 11.3.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
      • 11.2.0 (RC)
        • Valtimo backend libraries
        • Valtimo frontend libraries
      • 11.1.5
        • Valtimo frontend libraries
      • 11.1.4
        • Valtimo backend libraries
        • Valtimo frontend libraries
      • 11.1.1
        • Valtimo backend libraries
        • Valtimo frontend libraries
      • 11.1.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
      • 11.0.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
        • Migration
    • 10.x.x
      • 10.8.3
        • Valtimo backend libraries
      • 10.8.2
        • Valtimo frontend libraries
      • 10.8.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
      • 10.7.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
      • 10.6.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
        • Migration
      • 10.5.3
        • Valtimo backend libraries
      • 10.5.2
        • Valtimo backend libraries
      • 10.5.1
        • Valtimo backend libraries
        • Valtimo frontend libraries
      • 10.5.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
        • Migration
      • 10.4.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
      • 10.3.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
      • 10.2.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
      • 10.1.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
        • Migration
      • 10.0.1
        • Valtimo frontend libraries
      • 10.0.0
        • Valtimo backend libraries
        • Valtimo frontend libraries
        • Migration
    • 9.x.x
      • 9.26.2/5.15.1
        • Valtimo backend libraries (9.26.2)
        • Migration
      • 9.26.1/5.15.1
        • Valtimo backend libraries (9.26.1)
        • Valtimo frontend libraries (5.15.1)
      • 9.26.0/5.15.0
        • Valtimo backend libraries (9.26.0)
        • Valtimo frontend libraries (5.15.0)
        • Migration
      • 9.25.0/5.14.0
        • Valtimo backend libraries (9.25.0)
        • Valtimo frontend libraries (5.14.0)
      • 9.24.0/5.13.0
        • Valtimo backend libraries (9.24.0)
        • Valtimo frontend libraries (5.13.0)
      • 9.23.0/5.12.0
        • Valtimo backend libraries (9.23.0)
        • Valtimo frontend libraries (5.12.0)
      • 9.22.0/5.11.0
        • Valtimo backend libraries (9.22.0)
        • Valtimo frontend libraries (5.11.0)
        • Migration
      • 9.21.0/5.10.0
        • Valtimo backend libraries (9.21.0)
        • Valtimo frontend libraries (5.10.0)
        • Migration
      • 9.20.0/5.9.1
        • Valtimo backend libraries (9.20.0)
        • Valtimo frontend libraries (5.9.1)
        • Migration
      • 9.19.0/5.8.0
        • Valtimo backend libraries (9.19.0)
        • Valtimo frontend libraries (5.8.0)
        • Migration
      • 9.18.0/5.6.0
        • Valtimo backend libraries (9.18.0)
        • Valtimo frontend libraries (5.6.0)
        • Migration
      • 9.17.0/5.5.0
        • Valtimo backend libraries (9.17.0)
        • Valtimo frontend libraries (5.5.0)
      • 9.16.0/5.4.0
        • Valtimo backend libraries (9.16.0)
        • Valtimo frontend libraries (5.4.0)
  • Running Valtimo
    • Application configuration
      • Temporary file-storage
      • Configuring CORS
      • REST API endpoint security test
      • Content Security Policy (CSP)
      • Configuring Keycloak
      • Temporary file storage
      • Feature toggles
  • Customizing Valtimo
    • Front-end customization
      • Customizing Carbon theme
      • Custom logo
      • Custom components
        • Custom case management tab
  • Contributing to Valtimo
    • Contributing to Valtimo
    • Docs style guide for contributing
    • Branching and release strategy
    • Extend the core or build a plugin
Powered by GitBook
On this page
  • Core
  • Audit
  • Authorization
  • Connector
  • Contract
  • Core
  • Dashboards
  • Documents
  • Document generation
  • Exporter
  • Flowmailer
  • Form
  • Form flow
  • Form flow Valtimo
  • Importer
  • Keycloak IAM
  • Local document generation
  • Local mail
  • Mail
  • Mandrill
  • Milestones
  • Notes
  • Outbox
  • Outbox RabbitMQ
  • Plugins
  • Process document
  • Resource
  • Temporary resource storage
  • Value resolvers
  • Web
  • ZGW (Zaakgericht Werken)
  • Besluit (deprecated)
  • Besluiten API
  • Catalogi API
  • Contactmoment
  • Documenten API
  • Haalcentraal BRP
  • Klant
  • Notificaties API
  • Objecten API
  • Objecten API authentication
  • Objects API
  • Objecttypen API
  • OpenZaak
  • OpenZaak Plugin Authentication
  • OpenZaak resource
  • Portaaltaak
  • SmartDocuments
  • Verzoek
  • Wordpress mail
  • Zaken API

Was this helpful?

  1. Fundamentals
  2. Architectural overview

Available modules

PreviousChoosing the right setupNextProcess Exchange

Last updated 9 months ago

Was this helpful?

Core

Audit

Auditing is used to check a users actions in the system after the fact. It can be used to check if authorisation is set up correctly, or being able to follow a trail in data changes.

Audit provides a framework to record and store actions performed by users. Certain actions in the other modules of Valtimo - like completing a task or uploading a file - are audited by default. It is possible to audit other actions by using this feature in the implementation code. The audit trail is available for each case to show the history of actions of that case.

Authorization

Valtimo supports Policy Based Access Control (PBAC) as an authorization layer via this module. This layer allows you to restrict access to functionality or data based on policies. Other modules that utilize the authorization module can define their own resource types (e.g. camunda tasks), so they can be used to grant access to certain functionality in Valtimo.

Connector

Connectors are Valtimo configurable components that can be used to connect to external systems. This module provides a framework to create, configure, and use connectors. Certain Valtimo modules include their own connectors that become available automatically for configuration when starting a Valtimo instance.

NOTE: Connectors will be replaced by Plugins in the future

Contract

Contract contains certain interfaces and events that Valtimo uses in several other modules. Consider it the 'glue' between a module and Core.

Apart from this, contract sanitizes endpoint output when exceptions occur. A liquibase runner is available that allows other modules to define liquibase configuration that is run on startup. Finally, Contract includes several helper that can be used in criteria queries to call DBMS specific functions in a generic way (e.g. finding JSON data). query.

Core

Core is the main module of Valtimo. It contains and builds upon the Camunda process engine that enables Valtimo to run processes. Several endpoints and functions are available that provide task data and process data.

It also includes choice fields, a generic way to create lists of values that can be used by the application (e.g. selectboxes or radiobuttons). Some security features used to control access to any Valtimo endpoints are also part of this module.

Dashboards

Dashboards give users quick insight into the current state of the application. Usually by giving the user statistical information about cases and processes. Using this information, the user will be enabled to prioritize and focus on specific tasks.

Documents

A document is the main data storage entity that contains data of a case. Processes can act upon and change the data that is contained in the document, which allows for the document to be created when the case is started.

The content of the document is defined in a document definition, in JSON schema. Users interact with the document via user tasks; document data can be loaded into task forms, and user input can be stored in the document after completing a task.

Document generation

Document generation provides an interface in Valtimo for generating files like (like PDF) using given data. An implementation needs to be provided by another module or the Valtimo application that this is used in.

Exporter

The exporter module provides export functionality for Valtimo. By default, Valtimo provides a way to export case definitions, but this can be used for other kinds of exports as well.

Flowmailer

Form

Forms can be managed by using the provided endpoints, or loaded from a configuration file at application startup.

Form flow

Form flow allows users to create a sequence of forms, similar to a flow chart or a form wizard. A form flow definition contains the configuration for each step, what the subsequent steps are, and the conditions under which they can be reached. A form flow can be linked to a task, which consequently allows for more forms for the same task. Form flow supports forwards and backwards movement between steps without completing the task, reducing complexity in a BPMN model.

Form flow Valtimo

Form flow Valtimo is the glue between Valtimo and form flow. It adds the required dependencies to use the form flow module in a Valtimo application.

Importer

The importer module provides import functionality for Valtimo. By default, Valtimo provides a way to import case definitions, but this can be used for other kinds of imports as well.

Keycloak IAM

Keycloak IAM enables Valtimo to use Keycloak as the OAuth authentication server. When using this module, the default Keycloak JWT tokens can be used. It also allows Valtimo to get users from Keycloak for features that require this (e.g. task assignment).

Local document generation

Local mail

Mail

It orchestrates how Valtimo sends emails in a consistent way. Emails are filtered based on configured filters. For example, emails to blacklisted addresses can be filtered out. Dispatching the email after filtering is facilitated by another module.

Mandrill

Milestones

The milestones module offers a framework to keep a track of how a process is progressing. It can be used to communicate linear progress to the user without communication each specific step between milestones.

Notes

Notes make it easier to collaborate with users on a case. It offers the ability to attach messages to a case that can be read by other users.

Outbox

Outbox RabbitMQ

Plugins

Plugins are extensions on the Valtimo platform. These are often connections to external services, such as transactional email and document generation. Plugins can be configured without writing code, and actions can be attached to BPMN activities.

Process document

Resource

Temporary resource storage

Temporary resource storage provides a service for storing files locally, e.g. to process it during following tasks. These files are removed after a preconfigured time and should be processed further before that timer ends.

Value resolvers

Value resolvers provide a framework to retrieve and/or store data at several sources like processvariables (pv:), documents (doc:) and more.

Custom resolvers can be created for external sources.

Web

ZGW (Zaakgericht Werken)

Besluit (deprecated)

Besluiten API

Catalogi API

Contactmoment

Documenten API

Haalcentraal BRP

Klant

Notificaties API

Objecten API

Objecten API authentication

The Objecten (Objects) API authentication provides the Object token authentication plugin for authenticating call to the Objecten API implementation by Maykin Media. This plugin is used by other plugins for the authentication.

Objects API

Objects API is a deprecated connector module that contains functionality based on a connection to the Objecten API. It supports the productaanvragen workflow by receiving events through a connection with the Notificaties API. This module also includes the functionality to store user tasks as object in the Objecten API to be completed externally.

Objecttypen API

OpenZaak

NOTE: This module has been deprecated

OpenZaak Plugin Authentication

OpenZaak resource

Portaaltaak

This module provides a way of making BPMN user tasks available in an external portal. This allows these tasks to be completed by users that do not have accesss to the GZAC frontend.

SmartDocuments

Verzoek

The Verzoek module contains the verzoek plugin. The verzoek plugin can create a zaak and a Valtimo case whenever a user has submitted a form in OpenFormulieren.

Wordpress mail

Zaken API

is a SaaS email service that Valtimo uses to send transactional emails. By including this module in a Valtimo application, it will be used automatically as the email solution of the application.

Forms can be used to complete user tasks in Valtimo with a visual interface where the user can validate an/or input data. These forms can be composed using .

For information on how to create form flow definitions, see .

Valtimo uses for user management and IAM (Identity and Access Management)

The local document generation module is a stub implementation of the . It is used as a local test implementation that allows the application to start without having to call external services when generating a document. This does not generate an actual document, but writes the calls to the application log instead.

The local mail module is a stub implementation of the . It is used as a local test implementation that allows the application to start without having to provide an actual implementation. This does not actually send emails.

Mail is the base module for mail implementations like and .

Mailchimp is a SaaS solution for sending emails. Mandrill is the name of the that Mailchimp provides. The Valtimo Mandrill module provides a mail implementation of that Valtimo uses to send emails.

The outbox module contains an implementation of the .

The outbox-rabbitmq module adds support for publishing outbox messages to RabbitMQ (.

Some plugins are provided by the platform, but developers can create their own plugins as well. A more in-depth description can be found .

Process document facilitates the link between and BPMN processes. In order to use a process with a document, the process needs to be linked to a document. Process document also provides access of document data from inside a process.

Resource is a module that describes how files can be uploaded and downloaded. This implemented by other modules, such as the and .

Web offers web related configuration, such as integration with to provide REST API documentation, CORS configuration and sanitizing error messages and stacktraces).

Besluit contains a connector used to connect to the , a Dutch government API standard for exchanging information around besluiten. It allows the creation of besluiten and their relation to documents from processes.

The is a Dutch government API standard for exchanging information around besluiten. A plugin is provided that allows for the creation of besluiten and their relation to documents from processes.

The is a Dutch government API standard for defining the types of zaken and documenten that can be used in the Documenten API and Zaken API. A plugin is provided that allows for connecting to applications that provide a Catalogi API.

The is a Dutch government API standard for storage of and access to contactmomenten. A connector is provided that can be used to access the Contactmomenten API. This allows for the creation of contactmomenten. Any mail sent by Valtimo will be registered in this API.

The is a Dutch government API standard for storage of and access to documents and their metadata. A plugin is provided that allows for connecting to applications that provide a Documenten API.

The (basisregistratie personen) is a Dutch government API standard for getting data on civilians. This module provides a connector that can request this information.

The is a Dutch government API standard for getting and storing data on customers. This module provides a connector that can request this information.

The routes messages from components (publishers) to other components (subscribers) according to the publish-subscribe pattern. Messages are information-poor and therefore contain no substantive information.

The is a Dutch government API standard for storage of and access to objects and their metadata. A plugin is provided that allows for connecting to applications that provide an Objecten API.

NOTE: This module has been replaced by the plugin

The is a Dutch government API standard for storage of and access to object types, without having to create a new API for each object. A plugin is provided that allows for connecting to applications that provide an Objecttypen API.

is an application that implements APIs for the exchange of information concerning cases using the Dutch government API standards for ZGW (Zaakgericht Werken). This module provides a plugin that provides authentication for other ZGW plugins.

contains the OpenZaakPlugin which can be used for authentication in several ZGW plugins.

resource is an implementation of the , providing a way to store a resource in OpenZaak as an eenvoudig informatie object (simple information object).

SmartDocuments itself is an external service that implements the and uses templates and placeholders to generate documents. This module offers a plugin which can connect to this service to generate documents.

The Wordpress mail plugin is a plugin for the that provides a REST API for sending emails. This module includes an implementation of the , which uses a to send emails through this API.

The is a Dutch government API standard for exchanging information around cases and their related data. A plugin is provided that allows for connecting to applications that provide a Zaken API.

đŸ™ī¸
âš™ī¸
Flowmailer
Form.IO
here
Keycloak
transactional outbox pattern
AMQP 0.9.1
here
OpenAPI
Besluiten API
Besluiten API
Catalogi (Catalogues) API
Contactmomenten API
Documenten (Documents) API
Haal Centraal BRP
Klanten API
Notificaties (Notifications) API
Objecten (Objects) API
Objecttypeb (Object types) API
OpenZaak
OpenZaak Plugin Authentication
Zaken (Cases) API
document generation module
mail module
Local mail
Mandrill
transactional mail addon
Mail
documents
temporary resource storage
OpenZaak resource
Objecten API
OpenZaak
resource module
document generation module
Wordpress CMS
mail module
connector
Core modules
ZGW