Cross-Validation Rules

Overview

Cross-Validation Rules enable companies to enforce or prevent transactions from posting unless they follow specific configurations. For example, if a Journal Entry has a debit to Account ABC, then the credit must be to Account Type Income; or if a Vendor Bill has the Department: Marketing, then the Entity must be "Marketing Solutions Inc, Advertising Agency 1, or Event Planner" This gives accounting teams the peace of mind that everything posted in NetSuite is following the Company's Accounting Policies. 

Step-by-Step Process

The demo below goes through the configuration and functionality of Cross-Validation Rules (CVR).

To create Cross-Validation Rules, a user needs to fill out the three aspects of each rule: Main Information, Filters, and Requirements. Each of these is explained below. 

Main Information

The Main Information of the CVR explains how the rule should behave. Below is an explanation of each field

FieldDescriptionExample
NameThe name you want to give the CVR.Marketing Spend
Transaction TypeThe NetSuite Transaction Types that you want the rule to apply to.Journal, Vendor Bill, Invoice
StatusIf the rule is in effect or not.Active
ActionThe two options are Prevent or Detect. If Prevent is selected, then Cross-Validation Rules will prevent a transaction from posting by throwing an error when a user tries to save it. If Detect is selected, then Cross-Validation Rules will allow the transaction to post but it will log the transaction in a report of violating transactions. Prevent
DescriptionA description of the rule. This rule will prevent a Vendor Bill with the Department: Marketing if the Vendor is not one of our marketing-related suppliers. 
Error MessageThis is the message that a user will see when the CVR prevents a transaction from posting. The Name of the rule will be appended at the end of the Error Message with a hyperlink to the CVR. You cannot post a Vendor Bill with the Department: Marketing to that Vendor because they are not marketing related. 

Filters

A Cross-Validation Rule can have as many filters as a company needs. When a CVR has more than one filter, a transaction must meet all the filters to be evaluated; if a transaction only meets some of the filters on a CVR then it will not be evaluated for the CVR requirements. CVR filters have three fields: Field, Operator, and Value.

FieldDescriptionExample
FieldThis is the transaction field that the filter Operator and Value will relate to. User, Account, Amount, Department
OperatorThis is the method by which the Value is considered on the specific Field.Equal, Not Equal, Includes, Any of, Greater Than
ValueThis is the Value that the Field must match or not match to qualify for the filter.John Smith, 1000 Checking, $1000

Requirements

Cross-Validation Rule Requirements are what the user is trying to enforce or prevent on a transaction. When a user tries to create a transaction, the Cross-Validation Rule script will first evaluate if it meets any CVR filters. If the CVR finds that the transaction does qualify for certain filters, then the transaction will be evaluated against the CVR requirements. If the transaction passes the requirement, it will be allowed to post; if it fails then it will fail to post or be added to the Cross-Validation Rule Report. CVR Requirements have the following fields: Field, Enforcement Direction, Operator, Value, Require All, & Apply to Filtered Lines Only. 

Field
Description
Example
FieldThe transaction field you want the CVR to evaluate.Amount, Account Type, Role, Custom Segment
Enforcement DirectionThis is whether the value on the transaction must be or cannot be a specific value based on the CVR.Must Be or Cannot Be
OperatorThis is the method by which the Value is considered on the specific Field.
Equal, Not Equal, Includes, Any of, Greater Than
ValueThis is the Value that the Field must be or cannot be to pass the requirement.
$-10000, AP Clerk, Cost of Goods Sold
Require AllWhen Require All is on, the transaction must pass through all the requirements to post. When Require All is off, the transaction must pass through at least one requirement to post.
Requirements:
-Entity must be Amazon
-Activity Code must be D

Require All On: Must have Amazon AND D.
Require All Off: Must have Amazon OR D. 
Apply to Filtered Lines OnlyWhen enabled, requirements will only be evaluated against lines that match the line-level filters. For debit requirements, all debit lines are checked. For credit requirements, all credit lines are checked.
Filter: Account equals Accounts Payable
Requirement: Entity cannot be Empty
Enabled: Only the Accounts Payable line must have the Entity filled out.
Not Enabled: All lines on the transaction must have the Entity filled out.
Please note that Tax Lines that are automatically created by NetSuite cannot be evaluated by Cross-Validation Rules. 



Was this article helpful?