How to build Approval Process in SuiteCRM?


  • Setup Approval Process

  • Create Rule Entry

  • Specify the rule criteria

  • Provide the approver users and notification template

  • Specify Record Editability

  • Action on Approval

  • Action on Rejection

Let's create an approval process for an opportunities records which are of type New Business and discounted more than 30%.

1. Setup Approval Process

  • Open the module Approval Processes.
  • In the Approval Processes ListView, click Create Approval Process.
  • In the Create Approval Process, enter the approval Process Name and Description
  • Select the module for which the Approval Process should be set
  • Select the Active check box
  • Select the option for Approval Execute At, based on that approval process will be executed
    • (A) Record Creation: When a record is created at that time approval process will be triggered
    • (B) Record Edit: When a record is edited at that time approval process will be triggered

    SuiteCRM Approval Process
  • Save the record

2. Create Rule Entry

  • After creating Approval Process, on the DetailView of it click on Create Rule

3. Specify the rule criteria

  • Rule criteria is used to identify on which record the approval process will be apply. You must have to add the criteria for record approval. You can select fields, operator and the value associated with it as per your requirement.
    SuiteCRM Approval Rule Criteria

4. Who Should Approve

  • For the approval process execution, you can assign the approval requests to different users. Select Reports To,User or Round Robin from the dropdown list.
    • (A) Reports To User: Assign approval request based on the organisations user's reports to. Fits best where you want the approval from person whom the user reports to.
    • (B) User: Select the system user. Where you want to assign the approval request to specific user.
    • (C) Round Robin: Select ALL Users in Role or ALL Users in Security Group to assign the approval request. When approval request is assigned, the user from the role or security group become the approver.

    Note: If any system user is inactive or deleted, then the approval request will be automatically assigned to admin user.

    SuiteCRM Approval Process - Who Should Approve
  • Click the Add icon to include more users for approve. If more than one entry exist into the approver then you will have the following options.
    • Anyone:If you want only one user to approve among the selected approver then select this option.
      SuiteCRM Approval Process - Anyone Approver
    • Everyone:If you want each user to approve then select this option. You can allow users to perform action either sequentially or parallelly.
    • Everyone-Sequential:All the approvers need to perform action into the sequence. Once first user approves then and then only second user will be able to approve.
      SuiteCRM Approval Process - Everyone Sequential Approver
    • Everyone-Parallel:All the user need to approve. Approvers will perform action into the random order. There is no sequence into which they need to perform the action.
      SuiteCRM Approval Process - Everyone Parallel Approver
  • Notification Template: This template will be used to notify approvers when the approval request will be assigned to them. The same template will be used for all the approvers for the current approval rule.

5. Record Editability Properties

  • When record is in approval process no one can edit it except administrators. It will be locked until approval process is not complete. However you can also allow the currently assigned approver to edit the record.
    SuiteCRM Approval Process - Record Editable Properties

6. Action on Approval

  • You can define the various actions on the approval. There are 2 options mainly on the approval action as follows.
    SuiteCRM Approval Process - Action(s) on Approval
      • A. Configure action after each approval:This option allows you to update the module fields only. The system will update the fields to the mentioned value provide for each approver.
        SuiteCRM Approval Process - Action after each approval
        As we have selected two approvers thats why system will ask for fields to update for two approvers. Also you can provide multiple fields to update in each approval.

    • B. Configure action after final approval:This action will be executed after all the approvers has been approved the request assigned to them. This option allows you to update the module fields as well as email alert to CRM users,primary module record and relate module records. You can also send an email alert to additional recipients. System allows maximum 3 additional recipients. SuiteCRM Approval Process - Action after final approval
      We have selected the Opportunities module in an example so all the relate module related to it will be available in email alert. Thats why we are able to select the Account related to opportunity as email recipient.

7. Action on Rejection

  • This action will be executed if any one approver has been rejected the approval request. This option also allows you to update the module fields as well as email alert to CRM users.
    SuiteCRM Approval Process - Action on Rejection

Let's see in action how Approval Process works.

  • System user Max Jensen has created an Opportunity record as follows.
    SuiteCRM Approval Process - Record EditView
  • Now as per the rule criteria we have defined earlier, system will triggered approval process and so this opportunity record is locked and waiting for approval. Also Max is regular user and that's why he is not able to do any changes into the current record.
    SuiteCRM Approval Process - Locked Record DetailView Non Admin
  • In the approval rule we have selected 2 approvers sequentially. Based on that first approver Jim Brennan will get the approval request alert as follows.
    SuiteCRM Approval Process - Approval Request Email Alert
  • Let's login with Jim Brennan user.
  • The approvers will take necessary actions from the opportunity record itself or from the Approval Jobs module.
      • (A) Locked Record DetailView:Approver will take the necessary actions from the link "Respond".
        SuiteCRM Approval Process - Locked Record DetailView For Approver

      • Once he clicked on it, popup will open as follows from where he can Approve,Reject or Delegate the request.
        SuiteCRM Approval Process - Locked Record Approval Popup

      • (B) Approval Job:When any record comes into the approval at that time by default approval job with the status "Submitted" is created. Subsequent jobs will be created as per the rule we have set. We have set the rule in which everyone has to approve sequentially. That's why Approval Job with the "Jim Brennan" has been created only right now. Once Jim Brennan will approve the request then subsequent request will be created with user "Will Westin" and so on.
        SuiteCRM Approval Process - Approval Jobs ListView

      • Now Jim Brennan access his job to approve. It will look as follows. He can also Approve,Reject or Delegate the request from here.
        SuiteCRM Approval Process - Approval Jobs DetailView

      • Jim Brennan approve the job.
        SuiteCRM Approval Process - Approval Request Approved
        Once actions has been taken by the approvers then that request is completed and no one can allow to change anything for that particular request. You can see in the above image that all the buttons are removed and message with the actions performed by the approver has been display.

      • As per the approval rule defined, we have selected the fields(Sales Stage,Probability (%) & Next Step) to update. Have a look into Opportunity record that those fields are updated with the value we have mentioned. Now the record is waiting for the approval from next approver that is system user Will Westin as per our example.
        SuiteCRM Approval Process - Waiting for next approver

      • The next approver will also get the approval request alert as follows.
        SuiteCRM Approval Process - Next Approver Email Alert

      • Let's login with the next approver(Will Westin) and he is approve the request from the record's DetailView.
        . SuiteCRM Approval Process - Next Approver Approved Request

      • The selected fields(Sales Stage,Probability (%) & Next Step) are also updated for this approver. Once last approver mark the request as approved the locked has been released from the current record and it is available for editing.
        SuiteCRM Approval Process - Record After Final Approval
        You may notice the field updation once all the approval requests gets approved. We have selected the fields(Expected Close Date and Description) to update once record is finally approved. So those 2 fields are also updated as mentioned into the above screenshot.

    • As the record is finally approved all the email alert will be sent to requester,system users,additional emails(if any),record itself or it's related module as per the setting we have done into the rule.

      • Final Approval Email Alert - Requester
        SuiteCRM Approval Process - Final Approval Requester Email Alert
      • Same way Final Approval Email Alert will be sent to a related module that is Account(T-Squared Techs), system user(Chris Olliver and Sally Bronsen), and additional recipients as we have set into the approval rule.

Let's see what happen when approval request got rejected.

    • We will take same approval rule we have considered into the previous example. System user Max Jensen has created an Opportunity record as follows.
      SuiteCRM Approval Process - Record EditView

    • As per the approval rule system user Jim Brennan got an approval request and marked it is approved.
      SuiteCRM Approval Process - Waiting for next approver

    • Now next approver(Will Westin) got an approval request. As customer ask for 45% discount he is delegated the approval request to other user(Sarah Smith). The delegated users will also get an email alert about the approval request assigned to them.
      SuiteCRM Approval Process - Delegate Popup

    • Approval job will be look like as follows.
      SuiteCRM Approval Process - Delegated Approval Job

    • Delegated user(Sarah Smith) will be login into the system and reject the approval request.
      SuiteCRM Approval Process - Reject Popup

    • As the approval request is rejected, message will be displayed on the opportunity record as mentioned below. System user can also resubmit for approval from here itself.
      SuiteCRM Approval Process - Rejected Record DetailView
      You may notice the field updation once the approval requests gets rejected. We have selected the fields(Sales Stage & Probability (%)) to update when anyone rejected the approval request. So those 2 fields are also updated as mentioned into the above screenshot.

  • Email alert will also be triggered when request is rejected. As per the setting into the rule, requester and it's manager(Reports To) and all the system user which has approved their respective request will get an email alert. In our case requester is the Max Jensen who is reported to Sarah Smith. So they got the rejection notification as follows.

    • Rejection Email Alert - Requester
      SuiteCRM Approval Process - Rejection Requester Email Alert
    • Same way Rejection Email Alert will be sent to Requester's Manager and everyone who has approved their request previously.

Approval Request with Everyone Parallel.

  • All the users need to approve. Approvers will perform action into the random order.
    SuiteCRM Approval Process - Everyone Parallel Approver
  • There is no sequence into which they need to perform the action. Look at below, user Will has been approved his request first though it is mentioned last into the approver section.
    SuiteCRM Approval Process - Everyone Parallel Approval Job

Approval Request with Anyone approver.

  • If you want only one user to approve among the selected approver then select this option.
    SuiteCRM Approval Process - Anyone approver
  • When anyone approver approved or rejected the approval request then all the other approval requests became void. No need other system users to take any action on their respective approval request.
    SuiteCRM Approval Process - Approval Jobs approved by anyone approver