Create a Transact Function

   Journey Manager (JM) The transaction engine for the platform.  |    Form Builder Platform Developer |   23.10This feature was updated in 23.10

Manager allows you to create Transact functions, which is called within a server or from Maestro forms running on a client side. Behind the scenes, Manager generates a service-def.json file as well as a Groovy service source file and unit test source file, based on a chosen template. You then implement required business logic in the Groovy script file by extending the com.avoka.fc.core.service.fluent.FluentFunctionService class using Fluent API.


You can't create a Transact function via Fluent API, but you can do it by calling the svc-scaffold scaffolding task via Journey SDK. For more information, see svc-scaffold.

To create a Transact function:

  1. Select Services > Transact Functions and click New.
    Manager create a Transact function
  2. Select a type of the Transact function from the Type dropdown list. A type allows you to filter a suitable function template that you wish to use to create a Transact function from. A type can be one of the following:
    • Fluent Function - A Fluent Function, also known as a Form Function, provides an improved programming model for client applications to call server-side business functions. The Form Function is designed to make calls from form applications to other systems to execute a remote data look-up or some secure business logic on a remote server.
    • Delivery Function - A Delivery Function is used to deliver a form data entered by a user when a form is submitted. The form data includes a submitted form XML, a PDF receipt document and many also include user uploaded file attachments.
  3. Select a Transact function template, which is used to create a Groovy service source file and unit test source file, from the Function Template dropdown list. A template can be one of the following:
    • Fluent Function
    • Delivery Function
  4. Provide a unique function name in the New Name field.
  5. Specify the function version in the Version field.
  6. Select an organization from the Organization dropdown list so the Transact function is associated only with forms and other entities belonging to that organization. If you do not select an organization, the Transact function will be globally available.

    You must have global access to create global Transact functions, both Fluent Functions and Delivery Functions.  |  23.10 This feature was introduced in 23.10

  7. Click Save to update the changes.

Next, learn how to configure a Transact function.