Approval matrices enable you to dynamically assign an approval request to someone selected from a list of a maximum of six potential approvers. An approval matrix can be selected as an assignee type when creating an approval step.

Potential approvers are assigned an approval level associated with a percentage discount. Those discount values are based on the authorized discount percents set up in global discount policies. You must have these policies set up for an approval matrix to route approvals to the correct level.

The global discount policy values set the default discount percentage levels that will typically require approval and also designate who the approver should be for each level. Matrices enable you to have approvals start at any policy level. For instance, if Authorized Discount Percent for Approval Level 1 for the policy is 15% and no approval is required until the discount on certain items reaches 35%, an approval matrix can be created that does not start until Approval Level 2. 

To create global discount policies

  1. Select the Global Discount Policies tab or click All tabs and then select Global Discount Policies.
  2. Click New and enter a whole number in Authorized Discount Percent. This represents the percentage discount at which an approval is routed to an associated approval level.
  3. Enter a description and select the approval level for the discount policy entry. This value is used in the approval matrix to associate a user with their approval level.
  4. Click Save to return to the global discount policy list or click Save & New to create another policy entry.

Once you have created the required policies, you can create an approval matrix that uses the global discount policy levels.

To create an approval matrix

There must be global discount policy levels for each matrix level you use.

  1. Click the Approval Matrix tab or click All tabs and then select Approval Matrix.
  2. Click New to display the Approval Matrix Edit page.
  3. Enter the required values for:

    Matrix OwnerThis is the user account associated with the matrix. This means the matrix can also be accessed from the Custom Links section on that user's account page. The owner and the user do not need to be the same user account.
    UserThis is used to find the correct approval matrix, for when an object enters the intelligent approval process. For instance, if an opportunity enters the approval process and an approval step assignee type is an approval matrix.
    Is Active

    Select this option to have the matrix available for inclusion in an approval process.


    You can ignore the "Is Valid" internal setting.

    Approval LevelThis is the level the approval matrix starts at, corresponding to the same level for global discount policies.
    Next Level ApproverThis approver is typically the same as Approver 2.
  4. Select the approver, authorized discount, and approver level values for each approver you want to include in the matrix. The authorized discount value must match those of the global discount policies.
  5. Click Save to return to the approval matrix list or click Save & New to create another matrix.

If it is active, the approval matrix can now be selected when configuring approval process steps.

After you create an approval matrix record, you can see the following links when you edit it:

  • Generate Approval Matrix: When you create a new approval matrix for a single user, you can simply click the Generate Approval Matrix link. This creates the matrix for a new user and adjusts any other matrices that have dependencies on the created batch job.
  • Generate Approval Matrix for All: Click the Generate Approval Matrix for All link if you have changed values in the global approver settings (the threshold percentages), which requires that all matrices be regenerated and use a batch job mechanism as well.
  • Set Next-Level Approver: Enables you to change the next-level approver specified in the matrix. For example, you can change Approver 2 to Approver 5.

Expected Behavior

Use these matrices as follows:

  • For a single user, create a new approval matrix record and enter the minimum information such as User, isActive, isValid, (both true) and Approval Level. Click Generate Approvals Matrix to fill in the rest of the matrix values automatically.
  • For multiple users, create a new approval matrix record for each user and enter the minimum information such as User, isActive, isValid, (both true) and Approval Level. Click Generate Approvals Matrix to fill in the rest of the matrix values automatically. Click Generate Matrix for All to do the same (this runs more jobs and updates to matrices for all users).
  • For multiple users or whenever global discounts have been adjusted, pick any matrix record and click Generate Approval Matrices for All. Specify the first and last matrix records to update every record.