How to create an Expense Report App

Article contents

     

Introduction

     In the technology age that we live in, having an automated process is an absolute necessity for all business ventures. Aurachain can be used for quick creation and use of working applications that can address the specific process and data needs of your organization. If you want an app within just a few clicks, Aurachain is just what you need.

     In this section, we will provide a step-by-step guide to help you learn how to create the "Expense approval" app which come together with the Aurachain kit.

     We will walk you through the functionalities and details of building your own application, and also focus on key issues in optimizing and monitoring, to guarantee that your app is effective as well as easy to understand. Keep in mind that this case study is just an example and can be customized to match with your organization needs. The process or the UIs may not have a business logic, but we build it in this manner, so that we cover the majority of features that Aurachain offers.


Note: We highly recommend to first go through the Aurachain fundamentals before attempting to build your own Application or Component.

Business Requirements

Within Company "X" any employee (initiator) can create an expense report form and submit it for approval.

Once the employee inputs the information about the expenses he/she has made, the form is going further for review and approval. The expense will be approved by the Financial Department.

The application will go depending on the expense amount, either to a Financial Officer if it’s less than 1000$ or it might also require Financial Executive’s expertise, including a second level of approval in case the expense amount is greater than 1000$. Both financial representatives can Approve or Reject the request.

  • If the request is rejected, the process will end and the initiator will be notified via e-mail with the rejection reason.
  • If the request receives the final approval, the process will automatically generate the expense report defined in the system and will be sent via e-mail to the users involved in the approval chain.

  The Expense Approval Applet will contain the following process steps:

  • Expense Request Form – This is a human activity where the employees will fill in the expense data.
  • Expense Review – This is a human activity with an approval matrix embedded to it, which contains two levels of approval. As explained earlier, the number of approval layers depends on the expense amount.
  • Generate Expense Report – This is a system activity in which a document will be generated containing significant data.

The groups required by the process are the following:

  • Employee

  • Financial Officer

  • Financial Executive

Building a business process (app) in Aurachain

By accessing Process Designer  we can create this app by selecting Create New.

 Create a new application

New applications can be created by accessing your Workspace; from there we enter the Apps section and select Create New.

First thing to do is to add the app’s details, such as:

  • The name of your application, in our case Expense Approval Applet;
  • The application type, in our case should be Standard (we won’t use blockchain technology for our use case scenario);
  • The description of the app (keep it short);
  • We can also associate an image to the application by uploading one
  • Press Create application to create it and to proceed building the application

This is how your application details should look before proceeding to save:

After saving the application’s details, we can enter several sections associated with our application. We can find them on the left side of the screen:

  • Application Settings
  • Diagrams
  • Interface Builder
  • Document Builder
  • API’s
  • Data Model & Catalogs
  • Reports

By selecting Diagrams, a canvas will be displayed with several drag and drop elements in the left side of the screen.

Drag and drop human activities

First things first:

  • Drag and drop the General Start button onto your canvas.
  • Drag and drop a Human Activity button onto your canvas.

These elements can be found on the Events and Activities subsections.

Be sure to give a name/title to the first Human Activity. We’ll call ours “Data Entry Form”. You can double click on the element’s name to change it or you can do so by clicking the element from the canvas and go to its properties on the right sidebar and do the same thing.

Connect the elements:

  • Hover with your mouse over the object until arrows appear.

                                                                                                          

  • Drag the arrow from the General Start to the Human Activity until you attach them

                                                                                            

Following the above steps you have made a connection from General Start to the Human Activity, and it should look like in the below picture:

Drag and drop Approval Matrix activity

Add a Human Activity and set up levels of approvals with rules, conditions and consequences:

  • We will be needing the Approval Matrix for this. Drag and drop it onto your canvas.
  • Give it a name/title. In our case, we’ll name it Expense Review.
  • Connect the Data Entry Form Human Activity with our new element.

The little arrow that you’ve just dragged from the first Human Activity to the Human Activity Approval Matrix needs a name - as all the connectors present in your app, except the one from the General Start, as it takes its name from the title of your application.

Name the connector:

  • Double click on the connector to name it;
  • Give it a name/title. In our case, we’ll name it “Submit”.

After completing these steps, your process should look like this:

We will setup approval matrix’s levels further on this building application tutorial.

Add a document generation activity to your flow

As per our business requirements, we need to generate a document after the final approval is received. In order to achieve this, follow the next steps:

  • Drag and drop the Generate document activity onto your canvas;
  • Name it “Generate Expense Report”.
  • Connect the Approval Matrix Stage to it.
  • Name the connector Approve.

Take a quick look at how your process should look like after the above steps:

Add end points

Now, we will add the End Points of our application.

  • Drag and drop the General End element onto your canvas;
  • Name it ‘’Approved’’ by double clicking its name on the canvas or by changing the name from properties, on the right sidebar;
  • Connect the element that generates document to the end point;
  • Go to its properties and write APP (from approved) in the Code field from Details.
  • Name the connector “End”.

Take a look at how your progress should look like:

You probably now wonder what happens if someone decides to reject the expense? For this to be covered, we need to add another General End point on the canvas and connect both human activities (Data Entry Form and Expense Review) to it.

We will now add another End Point to our app. This time:

  • Drag and drop the General End element.
  • Connect those two human activities to this End Point.
  • Name this general end point: Rejected.
  • Go to this end point’s properties and add a different Code than the last one (Approved end point). We can name it REJ out from Rejected.
  • Drag a connector starting from the Data Entry Form and connect it to the General End (the one named Rejected). Name the connector “Cancel”.
  • Drag a connector starting from the Approval Matrix Activity (Expense Review) and connect it to the General End (the one named Rejected). Name the connector “Decline”.

Doing so, we managed to cover both decisions, approve and reject.

You now need to save the application using the Save button from the upper-right part of your screen. Click it and a confirmation message will be displayed.  

Note that you can not Publish your application yet because it still needs User Interfaces, Data Models and you need to assign Groups and set permissions.

Congrats!

You have finished building your first business process in Aurachain.

 Add Groups/Users to your app and process flow.

Let’s add Groups to each human stage so we enable the end-user to initiate a new process or to receive a task in his work list. This will allow the user to take actions within the process.

Select the first Human Activity in the app (Data Entry Form) and on the right side of the screen you can see a panel with each element’s properties. We will choose to edit our first task added in the canvas and we’ll be looking forward to be adding the role(s) that will manage the task.

  • Open ‘’Data Entry Form’’ properties by clicking its name on the right panel;
  • Go on Users and add new Groups by clicking on the plus button, found in the lower part of the panel.

There are three types of assignments that can be set up as a role to this stage.

  • Data Model: attributes saved in the data model defined for this application
  • Variables: predefined values by the system
  • Users: existing users

In the tab ‘’Users’’ search for Financial Officer so the first human stage will be assigned to this role; you can as well assign a user. Once selected, press the save button in the upper-right corner. 

You can easily delete the role/user assigned by returning to the Users tab and deselect the previously setup.

Since the Human activity “Expense Review” is of an Approval Matrix type, we will learn how to set this up later in this guide.

Save your configuration using the “Save” button and move forward.

You don’t have any Groups configured?

Make sure that your Aurachain Admin has added Users.

To do so, an admin needs to:

  • Go to the Admin page in Aurachain.
  • Add Users in the Users   section.
  • Edit Groups in the Groups   section.
  • Assign Groups to Users

 

User Interface requirements


What is a User Interface?

Basically, a User Interface (UI) is the place where the end user will interact with your app.

In order to build one in Aurachain we must cover all the possible actions that an end user may perform. To do so, we have to think what information we need to capture from the user whilst completing an expense approval request.

As per the business requirements, we need an interface where an employee will complete all the expense data and an interface where the approver will see this information and take a decision.

For the first interface, we will require the user to complete the following information:

a)   Personal Info (Panel)

  • First name (Autocomplete, Mandatory)
  • Last name (Autocomplete, Mandatory)
  • Organization name (Textbox, Mandatory)
  • Position (Autocomplete, Mandatory)
  • Phone No.(Textbox, Mandatory)
  • E-mail (Textbox, Mandatory)

b)   Expense Details (Panel)

  • Expense period (Panel)
    • From (date-time picker, Mandatory)
    • To (date-time picker, Mandatory)
  • Expense details (Textarea, Mandatory)
  • Expense justifications (Textarea, Mandatory)
  • Expense amount (Textbox, Mandatory)
  • Currency (drop-down list, Mandatory)
  • Upload proof of spending (Upload, optional)

For the second interface, we will add the above information plus some fields that are necessary for the approver to take a decision.

a)   Personal Info

  • First name (Autocomplete, Read-only)
  • Last name (Autocomplete, Read-only)
  • Organization name (Textbox, Read-only)
  • Position (Autocomplete, Read-only)
  • Phone No. (Textbox, Read-only)
  • E-mail (Textbox, Read-only)

b)   Expense Details

  • Expense period (Panel)
    • From (Date-time picker, Read-only)
    • To (Date-time picker, Read-only)
  • Expense details (Textarea, Read-only)
  • Expense justifications (Textarea, Read-only)
  • Expense amount(Textbox, Read-only)
  • Currency (Drop-down list, Read-only)

c)    Approval details

  • Cost centre (Drop-down list, Mandatory)
  • Refund amount (Textbox, Mandatory)
  • Additional comments (Textarea, Optional)

Having the above requirements, we can now start building the interfaces.

Build user interfaces

Create a new User Interface

Go to the Interface Builder   from the left side of our application. The process of building our first interface is initiated automatically once we enter the Interface Builder, so the next steps we have to proceed is completing information about the UI. We will be asked to add information regarding:

CodeThe UI code (as in ERS1T, or Expense1 etc.)
NameThe name of the UI (Expense Approval Request)
DescriptionEntirely optional but it can prove helpful, it allows you to add a short description of this UI.

The interface will be created once we are done completing the information above and save it. 

We shall start building our UI with the information previously mentioned. On the left side of the screen you will see two subsections: Pages and Layout. Go on Pages and select ‘’Expense Approval Request’’ from the list of interfaces. Now let’s draw! Go to Layout and you will see three main categories of elements. We will use basic components.


Add panels and inputs


Click on Basic Components to expand the menu and select Layout Structure from which we’ll choose the element panel to be added to our Editor area.

We will set panel’s properties by left clicking on the element. On the right side of the screen we find UI’s Settings column we can manipulate during the building process.

  • Go to Attributes section from Settings and change panel’s label to Personal Information
  • For additional customization of the component go to Properties and Styles and feel free to change header’s and label’s colors as you wish!

Now we have to add inputs on our Personal Information panel. To do so, left click on the panel to ensure all the elements we bring to the Editor area will be added onto the component we want. On the left side of the screen, click on Form elements to expand the full menu and select Autocomplete .

Click on our new component (the autocomplete element) and proceed modifying its properties. Open the Attributes section and let’s do this together:

  • Change the Label to First name
  • Click on Share Space so the autocomplete element will allow the other components to share the same row on the panel
  • Select Mandatory as this field is required to be completed by the end-user
  • In the Container field there should be selected Personal Information (Panel) as we clicked on the panel before proceeding to add new elements

If you go to Properties you can associate the field with an icon; you can choose icon’s color as well!

As per our requirements, the Personal Information panel should contain a number of 6 inputs. You can go back at the User Interface requirements chapter and see the input types, names and properties. When you are done, your Personal Information panel should look like this:

For the next step we continue adding a new panel from the Layout structure section. As the period is characteristic to the panel ‘’Expense details’’, we’ll create another panel and name it “Expense period”. Therefore we will include it to the main panel Expense details.

As we will continue adding two date-time pickers in the Expense period panel we first have to left click on it so the inputs are automatically added to the mentioned panel. Go to Form elements on the left sidebar and click twice on the date picker element.

  • Name the first date-time picker: “From”
  • Select Share space and Mandatory
  • Name the second date-time picker : “To”
  • Select Mandatory
  • Make sure both date-time pickers are in the ‘’Expense Period’’ container

When you are done, the new added elements should look like this:

Continue by adding the rest of the inputs in the “Expense details” panel. Here are the remaining inputs: Expense Request Details (Textarea, Mandatory), Expense request justifications (Textarea, Mandatory), Expense amount (Textbox, Mandatory), Currency (drop-down list, Mandatory), Upload proof of spending (Upload, optional).

When finished, click on Save in the right side of the screen in order to save your interface.

Here’s how your second panel should be displayed in the editor:

Congrats!

You have finished building your first interface in Aurachain.


Clone a User Interface

In order to create our second user interface we will clone our previous one. This will save us time given the fact that we can find most information for second UI in the last one.  To do so, open the “Expense Approval Request” interface and in the upper-left corner click on the “Pages” section where you can see all the UI’s and fragments. Look for the three dotted button found over Interfaces’ list.

Click on “Export interface” button. It will automatically save the file as the name you chose for it when you created the UI. After downloading it, open again the upper-left corner menu but this time choose the “Import interface” option and select the file saved earlier on your computer.

Complete UI’s information as below:

CodeEXP-REW
NameExpense Review
DescriptionEntirely optional but it can prove helpful, it allows you to add a short description of this UI.





Press the Save button which will create our new UI workspace. We can see it created in the list of Interfaces, on the left sidebar.

As you can see, the interface looks exactly the same. We will use the previous interface as a template, in which will add only a few inputs and change the current field properties to fit our needs.

As per the business requirements, this should be a review interface where the financial representative will see the information completed by the employee. In this case, there is no need to keep the fields mandatory, so we are going to switch this off on all inputs. To achieve this, click on each input, go to Attributes tab and switch off the Mandatory property and turn on the Read-only property.

Add tabs and other input types

First of all, let’s remove the upload button from the bottom of Expense Details panel as there is no need for the financial representative to be seeing this field. Click on the ‘’Upload proof of spending’’ and go to the Layers section  in the upper-right corner of the UI (near Settings section). Expand Body’s interface till you reach the field we are looking for.

Now press the trashcan icon  from the bar above the Body list.

We shall continue by adding new panels and input types which will be specific for the reviewer:

  • Add a “Stepper” element from Basic components, Layout structure;
  • Click on it and go to its list of properties on the right side of the screen; enter Steps and click on ‘’Add Step’’.
  • Click on the free space within the first step and go to its Attributes; change label’s name to Expense TAB’’ as showed below:
  • Click on the Stepper element and go for creating another step using ‘’Add step’’ button
  • Change second step’s name to ‘’Approval TAB’’

  • Click on Expense Details panel in the Attributes section then choose the container “Expense TAB”; this functionality will move our Expense Details panel in the Expense TAB

With these modifications performed, the interface should look like this:

Now we need to add inputs to our previously added “Approval TAB”. If necessary, take a peek at the Interface Requirements to see the specifications. After that, click on the last step in our interface and add a panel; name it “Approval Details” and add all the inputs inside. Don’t forget to add every single new component as you selected the Approval Details panel before, so all of your inputs go inside it.

Remember that the position on the UI is dynamic so you can choose any order you want and also you can enable “Share space” property if you want to share space with other elements on the row.

When you have finished your work, save it by pressing the save button from the top-right corner of your screen. Before proceeding further, please press the Save button in the upper-right side of our application and then have a look at how the “Approval TAB” should look like:


Congrats!

You have finished building your second interface in Aurachain.


Build a data model

Create catalogs

We've added in the UI five fields that require a list to be uploaded and displayed to the end-user. These fields are the following:

  • First Name
  • Last Name
  • Position
  • Currency
  • Cost Center

To create the list of values for each field we must create a Catalog. To go to catalogs area please go to ‘’Data Model & Catalogs’’   icon displayed on the left side of the screen (where we also found the Interface Builder).

The landing page is split in two:

  • In the left side is Data Model where we are going to build some classes
  • In the right side are the catalog values

For now we need to add values to a catalog. Go to ‘’Catalogs’’ and click on the plus sign  displayed beneath the label ‘’All Catalogs’’ or by clicking the button ‘’Add New’’ from the buttom of the page. When the pop-up opens, add the name “EmployeeFirstName” to your catalog and click ADD. You can also add a short description if you like. Catalog’s information should look like this:

After that, the values for this current catalog can be added on the right side:

For now it’s empty, but we are here to add some values. To add a new value, click on the  sign.

Insert the following values:

  • Name : Mark
  • Code: MK

Add a few more values for the EmployeeFirstName catalog:

  • Name: John , Code: JH
  • Name: Emma, Code: EM
  • Name: Michael, Code: MH and so on.

Press the Save button in the upper-right corner of the application to save your work so far.

The first catalog is successfully created, let’s proceed with the remaining ones. Add a new catalog with the name “EmployeeLastName” and add the following values to it:

  • Name: Williams, Code: WIL
  • Name: Miller, Code: MIL
  • Name: Brown, Code: BRN
  • You can add as many values as you want. Your job is to make end-user’s interaction easier and intuitive.

Perform the same steps as before, in order to create the Position catalog. Click the plus sign from the catalog area and add the list of values:

  • Name: Web Developer, Code: WD
  • Name: System Analyst, Code: SA
  • Name Support Manager, Code: SM
  • Name: System Administrator, Code: SADMIN
  • Etc.

You should now know how to define the Currency and Cost Centre catalogs. Below you can find the example values for each:

Currency:

  • Name: Dollar, Code: USD
  • Name: Euro, Code: EUR
  • Name: Brithish Pound, Code: GBP

CostCentre:

  • Name: Research and development, Code: RES-DEV
  • Name: Logistics, Code: LOG
  • Name Administrative, Code: ADMIN
  • Name: Other, Code: OTH.

Don’t forget to Save ! When you are finished, the catalogs should look similar to this:


Congrats!

You have finished building data models in Aurachain.

 Create classes

Let’s create some classes! Go to ‘’Data Model’’ area near ‘’Catalogs’’ and press on ‘’Add New’’; a sidebar should be displayed on the right, where we will name our first class ‘’PersonalInformation’’. Now press the Save button on the top right corner.

Once saved the class it should allow us to introduce first attributes’ data such as name and type.

Note that in the Personal Information panel from the UI we have defined several fields. Those fields will be added to the PersonalInformation class, as attributes.

UI field First Name. We should name ‘’FirstName’’ our first attribute. In this situation, as its type is a catalog, we must put a Catalog that we have previously defined. Once you save it, it will be created and added to the class. When you’re done, it should look like this:

 

UI field Last Name. Now we will create another attribute by pressing ‘’Add property’’ button associated with the class. It corresponds with the UI field Last Name. This field was defined as textbox and we want the end-user to be allowed to input any value. Here, we should also select its type the catalog that has already been defined (EmployeeLastName).

UI field Organization. The third attribute that we will add is the corresponding value for the field Organization. Name it ‘’OrganizationName’’ and remember that it is a Textbox type which means that it is a free text field that allows letters, numerical values or special values in it. In this case we will choose the attribute type String.

UI field Position. The fourth attribute corresponds to the field Position so we will name it the same. This field was defined as a Drop-Down List, which means that the user can choose the values from a list. Again, as its type we must put a Catalog that has already been defined (Position).

Defining a data model is a repetitive process, which must be done for each field added by you in the user interfaces. Continue defining your data model using the below image, which represents the final result of data modeling in the Apps section for the Expense Approval Applet:

Don’t forget to save your work when finished, it will be very frustrating to start over again, after all… it’s just a button on the top-corner of your screen.

Connect UI fields with Data Model attributes

Up to this point we have created the process, the UI for the first Human Stages and the Data Model. Next we will go back to the UI and map each object with its corresponding element in the data model.

We do this so that we can save the data in the database and also get the saved data from the database and load it into the UI.

Go to the Interface Builder  page and select your UI.

 Adding data model attributes

For each object in the UI we will add the corresponding attribute from the data model.

Each object has in its properties a GET, a SET and if the object is a Drop-Down List, Autocomplete it will also have Values. Each object was defined in the Data Model as an Attribute for a Class.

First let’s focus on a field that requires only the GET and SET functionalities. Click on the third field we have added to Personal Information panel and then go to its settings, for ‘’Organization’’ textbox, on the right side; in the UI it has the corresponding value in the PersonalInformation Class  - Attribute Organization.

Organization Textbox

  • Enter Data tab
  • Click on Get data’s icon ; a pop-up should be displayed on the right side from which you can select the value you’re looking for;
  • In ‘’Model classes’’ dropdown-list search for the class where we saved the value Organization (PersonalInformation)
  • Select the value Organization from the list
  • Press the Set button; now the value is mapped to the field from the interface
  • Click on Set Data’s icon and do the same as you did to get data
  • Don’t forget to press the set button when you found the attribute

Do so for every other element in your UI that we have created Data Models.

  • For drop-down lists and autocomplete fields
  • For the FirstName autocomplete object the corresponding value in Data Model is  PersonalInformation.FirstName.

For the drop down-lists and autocomplete, we must also add the values from the Catalog (the place from where the system loads them in the fields), so that the end-user can select one of them.

  • Get data - whenever the end-user accesses the UI and the value for this field was already selected, the user can view it.
  • Set data - this will be the place in the Data Model where the data will be saved
  • Option values - this will be the Catalog that provides values to the drop-down list

You will find that the ‘’Option values’’ field for Drop-Down lists and autocomplete allows you to select one of two properties of a value:

  • Name
  • Code

You can have a look on the below screen shot taken while configuring Get/Set data and values:

Do the same as above for all the rest of the attributes, including the ones from the second interface.

Create the document template (Expense Report Document)

Go to the Document Builder   (on the left sidebar) and create a new document by pressing ‘’ADD NEW’’ button or the plus button under the label ‘’All documents’’. We should give it a suggestive name, such as Expense Report Document. Double click on the document we have created and change its name, then press SET. When you’re done, it will look like this:

We start to add details in the editor area according to our UI setup. After we add the fields from the UI, we will also add the elements from the Data Model so that the form will be populated with the information filled in the UI.

The Document editor area is almost identical with a word document where you can write, add tables, images, define formats etc.

In the left panel you will find the plus button that allows you to search for each corresponding attribute from the Data Model to add it to the document. We do this because when the expense is approved, the document will be filled in with dynamic data (the data inserted by the users across the process).

  • Press the plus button ;
  • Enter the ‘’Data Model’’ tab and click on a class to expand the list of attributes associated with that class;
  • Let’s say we want to add the attribute FirstName to the document; on click, the system will add the value to the editor area where you left the cursor;
  • We shall now see the attribute named FirstName added to our document

Do this for all the data you need to be written inside the document.

When you finish, save the document using the button from the top right corner. You can also use the preview functionality  (left side, near the trashcan button) in order to make an idea of how the document will look once it’s generated. This is very useful because you can see if the content is missaligend, you can identify typos and comes very handy to correct them while still here.

This is an example of document preview:

Feel free to use your imagination and customize the document however you want.

Add UIs and documents to flow activities

Add UIs to Human activities

Every flow activity from our diagram needs to be assigned with the interface that the end-user will interact with and, in our case, the business flow also requires a document generation so we will associate the task from the diagram with the template we have previously created.

In order to do so, follow the steps below:

  • Go to Diagrams and open ‘’Data Entry Form’’ properties on the right panel or left click on the human activity from canvas;
  • Go to Details and click on ‘’Assign interface’’;
  • Select the interface’s name (Expense Approval Request);
  • Press the Save button on the upper-right corner.

You’ll know the UI was assigned to the Human Activity task when you see on the bottom of task’s properties the name of the UI selected before, as in the screen shot below:

Don’t forget to save the application as well, using the Save button from the upper-right of our diagram.

Now, left click on the second Human stage (Approval Matrix), and do the same as you did for the first human activity task. When it’s done, it should look like this:

Add the document to “Generate document” activity.

To add the created document to our activity click on “Generate Expense Report” stage. Its settings can be configured on the right side of the screen. Press the Select Documents button  . It will allow you to assign the document template to the task.

  • Click on ‘’Document template’’ drop down-list
  • Select the template you have created earlier (Expense Report Document)
  • A new drop down-list will appear below document’s settings named ‘’Data model field’’
  • Select the attribute that corresponds to the template above (expenseReport.reportDocument)
  • Save the assignation by pressing the Save button on the upper-right of the sidebar

Now that all the activities from the diagram have an UI/template associated, let’s save our work and proceed further.

Setting up the Approval Matrix

If you remember, in the business requirements (page 2), the “Expense Review” stage was requested to be human activity with an approval matrix embedded to it. The purpose of the Approval Matrix is to create and setup multiple approval levels for the process activities. This is done according to the business logic and there are multiple tasks generated for each Approval Matrix.

Once an Approval Matrix has been defined, all process instances will be subject to those rules. Approvers can be notified when a process instance awaits their approval. In other words when a stage is in the Approval Matrix, multiple tasks are sent to the Groups/users who have been defined to take action for each rule.

  • The Approval Matrix can have multiple Approval Levels
  • Each Level can have multiple Approval Rules
  • Each Rule can have multiple Conditions
  • Each Condition can have multiple Outcomes

 Modify the Approval Matrix

To set-up the Approval Matrix, go to Diagrams and select ‘’Expense Review’’ task from the canvas. Go on ‘’Levels’’ tab and press the button that allows you to add a level . It will bring a new pop-up on with the level editor.

Follow the next steps in order to setup the first level of approval:

  • Add a name and a description to your rule, for example:
    • Name: Expense Approval level 1
    • Description: Whatever you want

  • You can address level settings such as time of expiration or expiration behaviour, as the business implies
  • To assign a rule press the  button from the Rules section; it will lead you to level 1’s rule editor
  • Add a name to the rule, as this value is required; for exemple, we can name it ‘’Expense Details >= 0’’ as we will define the conditions and outcomes for that matter
  • You can also add a description, if you want to
  • In the Condition section, click on   button or on  and configure the following values:

  • Go to Outcomes tab and in the Groups section add the following:

  • Save your configuration using the   button at the top right corner of your screen.

With the current configuration, if the expense amount is greater than 0, the task will go to the level 1 of approval which is assigned to Financial Officer role. We will proceed now configuring the level 2:

  • Go back to the Levels tab on the right side of your screen, while the approval matrix is selected on the canvas;
  • Click again   to add the Level Rules;
  • Add a name and a description to your rule, for example:
    • Name: Expense Approval level 2
    • Description: Whatever you want
    • You can address level settings such as time of expiration or expiration behaviour, as the business implies
    • To assign  a rule press the  button from the Rules section; it will lead you to level 1’s rule editor
    • Add a name to the rule, as this value is required; for example, we can name it ‘’Expense Details > 1000’’ as we will define the conditions and outcomes for that matter
    • You can also add a description, if you want to
    • In the Condition section, click on   button or on  and configure the following values:

Go to Outcomes tab and in the Groups section add the following:

Save your configuration! 

Here, the task will come to the Financial Executive role only if the expense amount > 1000, else it will go only at the level 1. As you can see, the Financial Executive is an “Overider”. This means that irrespective of the decision taken by level 1, the Financial Executive has the last call.

You are now ready to START your application using the PUBLISH button!


Congratulations!

You have successfully created an application in Aurachain.

Keep in mind, you can customize your app however you want, just use you imagination.

Keep enjoying Aurachain and the wonders of low-code.