Expense activity nodes

Only account admins can perform this task.

Some condition, activity, and approval nodes may be restricted to Premium or Pro plans. Your company must have one of these plans to incorporate them in your workflow.

Expense activity nodes perform a specific action on the document in the workflow.

You can perform these actions in the workflow:

Note: Before the activity node, you need a status node (Draft, Needs revision). After the activity node, you can add any other workflow node type (status, activity, condition or approval nodes). No action path is required.

Assign all cost object approvers

Assign all the cost object owners as approvers. Technically, it iterates through the various cost objects of the expense, extracts the cost object owners, and assign them for approval.

Tip: Use with cost object approval to create a cost object flow.

For example, you configure Perk to assign all cost object owners and require approval from all owners when an expense is submitted.

In this case, this condition returns:

  • True: If Perk cannot find an approver, it keeps the document in the same status.
  • False: If Perk cannot find an approver, it moves the document to the next status.

Caution: If you have delegates with an expiry delegation date in the past, they are not included in the assignment for approval. These delegates are ignored as their expiration date has past.

Assign custom cost object approvers

Determine all the cost object owners as approvers.

Technically, it iterates through the various cost centres on the expense, and assign approvers based on the properties specified in the options.

Tip Use with cost object approval to create a cost object flow.

This node comes with options that must be completed:

Option Accepted values Description
Cost object field String The field on the cost object to be looked up.
User field String User property on the cost object.
Required approvers true / false
  • True: Determines that at least one approver must be defined for the cost object. If no approvers are defined, the expense does NOT move to the next step.
  • False: Does not require an approver for the cost object.
Transformations lowercase If you want Perk to ignore case for the user field, select this checkbox.
When selected, if you write “USER.COMPANY@COMPANY.com”, Perk can parse this as “user.company@company.com”.

For example, you want to assign a special user (which is not the cost object owner) for approval using the cost object on the expense:

  1. Check for the approverMail custom field in the cost object (if not available, you may need Perk to set this up for you).
  2. Reference the cost object field (in this case, the custom field custom.Information.approverMail) and the corresponding user value where you’ll find the mail to identify that user (in the standard email field).
  3. In this case, you can specify any user mail you want on the cost object, and Perk assigns that user. So the submitter codes the cost object in the expense. From that cost object, Perk picks the user specified with that mail address.

Note: This field is not case sensitive. If you write “USER.COMPANY@COMPANY.com”, Perk can parse this as “user.company@company.com” using the Transformations field.

Assign all custom field approvers

Assign all tag approvers with a given custom field value found on the invoice document as approvers.

Technically, it iterates through the various line items of the invoice, extracts the custom field value approvers and assign them for approval.

Tip: Use with final approval to create a custom field approval flow.

The node comes with two options:

Option Accepted value Description
Require approvers true / false
  • True: Determines that at least one approver must be defined for the tag. If not, the flow is stopped.
  • False: Doesn’t require the tag to have an approver. If this is the case, it proceeds with the next step in the flow.
Tag dimension ID String

Custom field to be used.

You can specify one or multiple custom fields to be considered by Perk. You can add as many dimensions as you want. For example, you can set up two custom fields on the expense: one for approval and one for coding. You can also set up Perk to consider just the one you want.

If you leave the tag dimension ID empty, by default Perk considers all custom fields on the document.

Caution: Tag dimension IDs are specific for each environment and organization.

There are two options when configuring tag workflows regarding IDs:

  • Do not enter any tag dimension ID in the workflow: The workflow considers all custom fields on the document. This means that the workflow could be reused across environments, without amendments.
  • Enter tag dimensions IDs in the workflow: The workflow considers only that custom field. This means that you would need to create first a workflow entering the TEST tag dimensions ID and another workflow with the PROD tag dimension IDs.

For example, you set up Perk to assign all custom field approvers upon submission. Any of the custom field approvers can approve and finish the workflow.

Assign line manager

Set up a step to assign all line manager of the user who submitted the expense as approvers.

Caution: It must be used with Line manager approval or escalate.

The node comes with one option:

Option Accepted values Description
Discard delegate independence true / false

By default, the delegate is only added if it is not equal to the submitter or the expense user.

You can use this checkbox to indicate the delegate should be added, even if it is equal to the submitter/expense user.

Assign static approver

Set up an approver by a specific ID. In short, it assigns a specific user for approval for the legal entity. It is often used to assign a final user for approval if certain conditions are met, such as for expenses greater than 50K, assign the CEO.

This node comes with one option:

Option Accepted values Description
Approver ID String

User ID of the user to be used for approval.

You can add multiple users by clicking + Add row.

For example, you can set up an activity to get Perk to assign a specific user as approver.

Assign approvers with property

Determine approvers based on a specific user property. It can be used to create approval groups or to dynamically assign users based on specific custom properties that can be set on the user profile.

In this case, this condition returns:

  • True: it requires an approver with the options specified in the action. If the approver is not present, it does not move forward.
  • False: it requires an approver with the options specified in the action. If the approver is not present, it does move forward.

This specific condition comes with options that must be completed:

Option Accepted values Description
Property String

User property data field.

For example:

  • User first name: user.FirstName
  • User last name: user.LastName
  • User email: user.email
  • User ERP code: user.employeeId
  • Custom field: customInformation.<customFieldName>
Value String / Number / Boolean

Value of the attribute in Perk.

For example:

  • user.name: Alex
  • user.lastName: Smith
  • user.email: alex.smith@example.com
  • user.employeeId: 1234
  • customInformation.[labelName]:
    • if a text input field: a string such as manufacturing or G004
    • if a checkbox: true / false
Ignore claimant true / false When looking up the property field, if a list of users is found, Perk drops the “claimant” ( user to whom the expense belongs). This is not necessarily the user who submits it because it could have been created be an assistant or finance user.
Ignore previous approvers true / false When looking up the property field, if a list of users is found, Perk drops whoever already gave the approval.

Caution: The properties are case-sensitive. The workflow designer take into account case. Therefore, make sure that you write in the property in lowercase: true or false. Otherwise, the workflow designer does not recognize the Boolean value.

Warning: Make sure that at least one user has the checkbox selected; otherwise, Perk is unable to assign approval and the workflow fails.

The Ignore claimant and Ignore previous approver checkboxes let you restrict behavior if a list of users is found for the property. For example, an expense is first approved via cost object. Then an additional approval is carried out by the executive team (configured via flag on the user). If the CFO already approved (i.e. as part of the cost object approval in the first stage), in a second stage he does not have to approve as well if the Ignore previous approver checkbox is selected. Otherwise, the CFO is required to approve the same expense twice. This option implements the Four Eyes Principle: if two independent approvers are needed, this option guarantees it.

For example, you can set up Perk to assign all the users with the property customInformation.TeamA equal to true as approvers. This means all the users with the checkbox Team A selected on their profile, are assigned for approval.

Assign all cost object line managers

Assign the line managers of all the cost object owners as approvers. It checks the cost object value and assigns the line manager of the cost object owner who respects these conditions. If no dynamic escalation is provided, it assigns the line manager of the CO owner, in general (without checking)

For example, you configure Perk to assign the line managers of all cost object owners and require approval from all owners when an invoice is submitted.

Tip: Use with an approval node such as Final approval.

In this case, this condition returns:

  • True: If Perk cannot find an approver, it keeps the document in the same status.
  • False: If Perk cannot find an approver, it moves the document to the next status.

Workflow notifications

This node lets you set up Perk to send an informative message when certain action/condition occurs.

Unlike Trigger an error, this activity node just sends information to the user, so that they can acknowledge it and move onto the next step.

The node has two options:

Option Accepted values Description
Notification text String This is the text you want to send to the user when the action occurs.
Notification type Info / Warning / Error Type of notification sent to the user. Depending on how important the information is, the user see an information message, a warning or an error.

In Perk, users see a red error message, a yellow warning message or a blue information message. For example, you can set up a notification to be triggered where the expense needs additional approval because is more than a certain amount saying “Additional approval required“:

Trigger an error

This node lets you configure Perk to send an error message when a certain action/condition occurs.

Unlike Workflow notification, this activity node stops the workflow completely and does not add any additional logs to the document itself.

This node has one option:

Option Accepted values Node
Error message text String This is the error message you want to display to the user. It is a text message that is displayed as a result of the action.

Was this article helpful?