Why use Platform 6?

Platform 6 is the best platform to develop, package, distribute and run business applications involving business-to-business transactions with automated processes and user actions.

More specifically, build applications that:

  • receive and send structured data from remote computer systems, including IOT devices and blockchain
  • transform and enrich the data
  • orchestrate a business process
  • trigger workflow events with notifications to users and custom forms
  • offer a comprehensive, modern and responsive user interface to users, suppliers and customers to process workflow events, query data or view charts and reports

In addition, the platform offers an extensive permissions systems which control in details what users can do on the user interface or what remote systems can perform via the exposed API.


Following are two examples of typical applications built on the platform.

Automated Material Master Quote System

The application would typically:

  1. Recover a Bill Of Material (BOM) in different formats (CSV, XML, JSON, etc.) from a manufacturing application using a shared directory on the file system (SFTP connections, HTTPS call, etc.).
  2. Transform each line of the BOM into a Request For Quotation (RFQ) in XML. This transformation could use calls to a Customer Relationship Management (CRM) system to determine which suppliers to send the RFQ to, or a simple lookup table directly loaded on the platform.
  3. Propagate the RFQs to the suppliers using a smart contract running on a blockchain.
  4. Receive the suppliers quotes from the blockchain smart contract.
  5. Aggregate and process the quotes and trigger a user workflow to review the quotes and accept/reject them.

IOT triggering work orders

The application would typically:

  1. Receive via Message Queuing Telemetry Transport (MQTT) a stream of readings from Internet of Things (IoT) devices monitoring the health of selected equipment.
  2. Process the readings and trigger an alert when the readings meet certain criteria.
  3. Trigger a user workflow with notification to a maintenance technician.
  4. Generate in parallel a work order in a customized Intermediate Document (IDoc) format to be pushed to an existing SAP system.
  5. Offer a custom form to be filled by the technician with work details on its mobile device.
  6. Convert the details entered to IDoc for integration in the SAP system.

Configure your user interface

Responsive and fast

Built with the latest technologies (React, Bootstrap, etc.), the web user interface automatically adjusts to the size of the viewing device and optimizes its rendering for ultimate speed.

Responsive user interface

Highly configurable

Parametric search criteria can be customized as well as search result display columns. Users can customize their home page from dashboards pre-configured by your administrator.

Home page

Custom forms and pages

Create your own forms and pages to display Workflow Work Items, Messages, Service Configuration, etc.

Custom form

Manage users and permissions

All features of the platform expose a set of permissions which can be combined to create detailed roles to be assigned to users. These permissions are enforced for all actions performed either via the user interface or via the exposed REST API.

The grouping of these permissions into permissions sets and the availability of wildcards facilitate the creation of precise roles to be granted to the users.

User's permissions

Connect anything, anywhere

The platform comes with ready made connectors and a large REST API.

As an application developer, you also have the possibility to develop your own additions to the API and new specific connectors.


The platform exposes a REST API which is fully documented and easily tested using a Swagger UI. The user interface leverages the API, so anything that can be performed via the user interface, can be performed via an API call.

Swagger UI


To perform outbound connections from the platform or handle specific protocols inbound and outbound, the platform comes with ready made connectors.

Those connectors include:

Store and query transactions data

The platform provides all the necessary tools to manipulate and generate structured data in many possible format: CSV, XML, XLS, X12, EDIFACT, IDoc, etc. Once transformed into a canonical XML model, the data can be validated, stored and indexed.

The platform can accept any XML model expressed in the form of an XML Schema Definition (XSD).

Native XML indexing provides the ability to efficiently query documents using the power of XPath expressions, in order to:

  • configure custom parametric search screens,
  • extract data from the database in tabular format,
  • transform data to another format, XML or others.

XML search

Data manipulation and UI components

The platform provides leverage powerful scripting, a data manipulation DSL and readily available UI components.

Groovy scripting

For back-end data processing and process orchestration. A rich DSL has been added to the language to enable one-liner complex data transformation, such as running an XSLT, parsing a CSV or manipulating extremely large XML documents.

Numerous JVM libraries are also available to Groovy scripts to perform complex cryptography, JSON manipulation, etc.

def messageInfo = new XmlSlurper().parseText(message)

def SIRET_Fournisseur = messageInfo.KeyValue.find{it.Key == "SupplierID"}.Value.text()
def SIRET_Destinataire = messageInfo.KeyValue.find{it.Key == "BuyerID"}.Value.text()
def Code_Service_Destinataire = messageInfo.KeyValue.find{it.Key == "Code Service"}.Value.text()
def Num_Engagement_Destinataire = messageInfo.KeyValue.find{it.Key == "Num Engagement"}.Value.text()

def model = [
    supplierSiret: SIRET_Fournisseur,
    buyerSiret: SIRET_Destinataire,
    serviceCode: Code_Service_Destinataire,
    engagement: Num_Engagement_Destinataire

JavaScript scripting

To develop custom forms and pages in React. Powerful components that respect the look and feel of the platform are readily available to accelerate application development and delivery.

Develop custom services

Develop a custom services using your preferred language. All features of the platform are provided as services.

When scripting is not enough or when you want to keep the source code closed, you can develop your own service using your favourite language: Java, Scala, C#, JavaScript, etc.

A service combines server side code, usually including a REST API, its own set of permissions and front-end code as needed. Services can be bundled as part of an application.

A sample service project is provided that you can hack to get you quickly started.

Build and distribute an application

The platform comes with a packager which lets you bundle data from most components of the platform into an application.

This data includes:

  • Data Models
  • Tables
  • Scripts
  • Compiled code of custom services
  • Services Configurations

Once packaged, your application can be distributed to your customers, partners, business units, etc. and run on their instance of the platform.

Scale vertically and horizontally

The core platform is designed to leverage all the processors available on a machine.

When adding more processors is not possible, the platform can be scaled horizontally by spreading the services on multiple machines, interconnected using a fast in-memory bus.

These machines can run either a JVM, .NET or Node.js based platform core, allowing services developed in a mixture of languages to coexist on the same instance.

Horizontal scaling