Skip to main content

Configure: Rulesets

How to Create and Use Rulesets in Entendre

Updated over 8 months ago

Rulesets in Entendre help automate transaction processing by applying specific accounting rules based on predefined conditions. This guide explains how to create a ruleset, set up rules, and effectively use them to streamline your accounting workflows.


Creating a Ruleset


  1. Navigate to the Rulesets Section:

    • Go to Configure > Rulesets.

  2. Add a New Ruleset:

    • Click the "Add Ruleset" button.

    • Enter a Name for the ruleset.

    • Select the Legal Entity for which the ruleset will process transactions.

Setting Up Rules


Each ruleset can have multiple rules. A rule consists of a set of conditions and a journal entry template that will be applied when the conditions are met.

Conditions

Conditions define the criteria that transactions must meet for the rule to apply. Entendre offers various condition options to create granular matching logic:

  • Asset: The cryptocurrency of the transaction.

  • Chain: The blockchain network where the transaction occurred.

  • Source: Internal or external wallets, exchanges, and grouped wallets involved in the transaction.

  • Transaction Amount: The gross, net, or fee amounts associated with the transaction.

  • Transaction Action: Smart contract function signatures if a smart contract was interacted with.

  • Category: The transaction type (e.g., deposit, withdrawal, transfer, swap, bridge, fee, NFT).

  • Direction: Whether the transaction is a debit or credit.

  • Memo: Any memo attached to the transaction.

  • Exchange: The centralized exchange involved (requires integration).

  • Gain or Loss: Whether there is a gain or loss based on the user’s cost basis.

  • Rain Cards: Automates card expenses and bill pay expenses by card, merchant, or merchant category (requires integration).

  • Legal Entity: The entity associated with the transaction.

Operators

Operators determine how conditions are evaluated. Available operators include:

  • Equality Operators: Equals, Not Equals.

  • Comparison Operators: Less Than, Equal To, Greater Than, Less Than or Equal To, Greater Than or Equal To.

  • Transaction Status Operators: Is Credited, Is Debited, Is Credited By, Is Debited By.

  • Text Operators: Contains, Does Not Contain.

  • Empty Check: Is Empty.


Testing Rules


After creating a ruleset, you can test its effectiveness:

  1. Navigate to the Ruleset: Select the ruleset to test.

  2. Select Legal Entity and Accounting Period: Choose an optional legal entity and the accounting period for testing.

  3. Start Test: Click Start Test to begin processing.

Test Results


The test results will display:

  • Hit Rate: Percentage of matches found versus the number of transactions processed.

  • Match Count: Number of transactions the rule matched.

  • Runtime: The time taken for the rule to run (in seconds or minutes).

Running Rulesets


You can run rulesets either on an automated schedule or manually:

1. Schedule:

  • Set the ruleset to run on a recurring basis (e.g., hourly, daily, weekly, monthly).

2. Manual Run:

  • Run the ruleset in real-time by selecting the legal entity and period. You have two options:

    • Process Transactions Without Accounting: Filters out transactions that already have entries, improving performance.

    • Overwrite Accounting with Latest Match: Updates entries with the latest rule changes. Useful for correcting entries or bulk updates when a template or condition was incorrect.


Best Practices for Organizing Rulesets


There is no limit to the number of rules or rulesets you can create. Consider organizing your rulesets to best suit your business needs:

  • By Legal Entity: Group rulesets by the legal entities they apply to.

  • By Functional Accounting Domain: Create separate rulesets for different accounting areas (e.g., Expenses, Income).

By effectively using rulesets, you can automate complex transaction processing, ensure consistent accounting practices, and reduce manual effort.


Did this answer your question?