xMatix
Sign in Request demo
xMatix
PRODUCTS
SalesField SalesCRMRewardsClaimsInventoryProcurementWarehouse ManagementField ServiceServiceSupportTelephony & MessagingFinance & AccountingPayrollExpense ManagementCommercePortalsAnalytics & ReportingData StudioMobile AppSee all products →
PLATFORM
Platform overviewApp BuilderAutomationIntegrationsSecurity & GovernanceChange ManagementDevelopers
SENSE AI
Sense AI overviewSense AssistSense ControlSense VisionAI StudioTrust & governanceIn Claude & ChatGPTUse cases
SOLUTIONS
FMCG & DistributionManufacturing & Dealer NetworksAutomotive & DealershipsPharma & HealthcareConsumer DurablesAgri-InputsBuilding MaterialsService NetworksWarehousing & 3PLFinancial AccountingERP SoftwareIndia GST ComplianceUAE VAT & e-InvoicingSaudi ZATCA & VATAll solutions →
RESOURCES
Knowledge CenterDeveloper & CLIBlogGuidesWhat is xMatix?Company facts
COMPANY
AboutCareersPartnersEventsContactAuthorsLegal
Sign in Request demo
Home/Docs/Entity Reference/Expense Policy Rule — entity reference
REFERENCE · Last reviewed

Expense Policy Rule — entity reference

One rule inside an ExpensePolicy: a ruleType, an optional ExpenseCategory scope (empty = all categories), a numeric threshold, and the action taken on breach (HardBlock, Warn, RequireHigherApproval, AutoDisallow). The evaluation engine currently enforces six rule types: CategoryLimit and GradeHotelLimit (line amount+tax over the threshold), ReceiptMandatoryAbove (over the threshold with no receipt attached), BlockedCategory (any line in the category), LateSubmissionDays (expense date older than the threshold in days at the claim date) and DuplicateDetection (same merchant + invoice number + amount within the claim or on the employee's prior claims). The vocabulary also defines CityClassLimit, ForeignTravelCap and MileageRate, but the engine has no evaluation for them - rules of those types record no violations and enforce nothing. An InactiveCategory violation is raised automatically for lines using a deactivated category, independent of any configured rule.

Fields

FieldLabelTypeRequiredWhat it does
ActionActionTextWhat a breach does: HardBlock marks the evaluation blocked (Block severity), Warn only records the violation, RequireHigherApproval flags the evaluation as needing an extra approval step, AutoDisallow adds the excess to the line's disallowedAmount. All actions record an ExpensePolicyViolation.
CityClassCity ClassTextIntended scoping attribute for city-class caps (metro vs non-metro).
CountryCountryTextIntended scoping attribute for country-specific foreign-travel caps.
CreatedByIdCreated ByLookup → UserAccountYes
CreatedDateTimeCreated DateDateAndTimeYes
ExpenseCategoryIdExpense CategoryLookup → ExpenseCategoryYesScopes the rule to lines of one ExpenseCategory; empty means the rule checks every line of the claim.
ExpensePolicyIdExpense PolicyLookup → ExpensePolicy
GLAccountNameNameText, uniqueYes
IdIdGuidYes
IsActiveIs ActiveBoolean
ModifiedByIdModified ByLookup → UserAccountYes
NameNameText
OwnerIdOwnerLookup → UserAccountYes
PartnerAccountIdPartner AccountLookup → Account
RecordTypeIdRecord TypeGuid, hidden
RuleTypeRule TypeTextWhich check the rule performs. Enforced by the evaluation engine: CategoryLimit, GradeHotelLimit, ReceiptMandatoryAbove, BlockedCategory, LateSubmissionDays, DuplicateDetection. InactiveCategory appears on violations raised automatically for deactivated categories rather than being configured as a rule.
ThresholdThresholdCurrencyThe numeric trigger, interpreted per ruleType: an amount cap for CategoryLimit/GradeHotelLimit (compared to line amount+tax), an amount floor for ReceiptMandatoryAbove, or a day count for LateSubmissionDays. Ignored by BlockedCategory and DuplicateDetection.
UIPropsUI PropsText
UpdatedDateTimeModified DateDateAndTimeYes

Actions

ActionLabelTypeWhat it does
BulkDeleteDeleteDeleteDelete the selected records.
CloneCloneServerAction (Clone)Create a copy of this record
DeleteDeleteDeleteDelete this ExpensePolicyRule.
DeleteRecordDeleteDeleteDelete
EditEditEditEdit this ExpensePolicyRule.
EditInLineEditEditInlineEditInLine
EditRecordEditEditEdit
NewNewNewCreate a ExpensePolicyRule.
NewInLineNewNewInlineNewInLine
ViewViewViewView this ExpensePolicyRule.