Reason Codes
Principles
In BC terms, documents are differentiated on the basis of
Document Type (Invoice, Credit Memo...)
Source Code (buying, selling...)
Type and Source No. (customer, vendor...)
Adjustment for OC
In the conditions of financial companies, this distinction may be insufficient. For more detailed document differentiation, it is possible to use standard fields on documents Reason Code. The Reason Code table is a user code list that is set by the user according to their own needs. At the same time, the functionality for OC has been extended, which enables:
Set up Reason Codes in relation to individual types of accounting documents in the Financing module (e.g. invoice for an installment, invoice for a sales price, internal accrual document, etc.)
assign Reason Codes according to the settings on the document when it is created
set up standard texts in relation to individual types of sales documents in the Financing module
Parameterize texts and descriptions using set variables.
Set Reason Code as a required field on posted documents
The Reason Code is always common to the entire sales document and is listed on the document header.
MS regularly updates the documentation for this setting area. Documentation valid for BC22 is available at the following link:
Set Up Codes for Audit Trails - Business Central | Microsoft Learn
Dependencies and assumptions
To set up Reason Codes, you need to:
set the Reason Codes code list
set code list Standard Text Codes and Extended Texts
Set Code List Standard Text Variables Standard Text Variables
Set up Reason Codes and default Standard Text Codes for individual tasks and functionalities in the Financing area, where accounting documents are posted automatically and cannot be entered into documents manually.
Description of the documented area
Reason Codes
Meaning of fields:
Code
Registration code in the code list
The code can be assigned to individual accounting documents.
By default, the Reason Code is used
Optionally on any accounting document
Mandatory in the environment of CZ/SK legislation in the Fixed Asset module to set up posting when assets are disposed of according to the reason for disposal (sale, liquidation, loss, etc.)
In the Financing area, it is possible to use the Reason Code for a more detailed differentiation of documents (e.g. different codes will be set for down payment and for regular payment). These codes must then be set in the Reason Code Setup in Financing table
Description
A description of the code.
Notification:
Reason Codes may be required for posting documents if the Check Reason Code in Posting flag is enabled in OneCore Setup:
This setting then applies to posted documents:
Purchase and Sales Document Headersthat are created and billed
Manually
Tasks:
Posting of instalments from payment calendars, incl. separately invoiced insurance
Create an individual invoice
Posting an Invoice for the Sales Price of an Installment Sale
Contract Financial Settlement Posting
Posting of service allowances
Posting Penalty Invoices
Posting Fee-Based Reminders
Internal Documents Created and Posted
Manually in General Journals
Automated Tasks:
Posting Payments
Accounting for Calculation Inputs
Posting Contract Accrual Calendars
cashier papers (headers and lines).
Reason Codes System does not control When posting:
Payment Journals (statements).
Reason Codes are written into posted documents and entries that arise during posting and contain the standard Reason Code field (i.e., General Ledger Entries, Customer Ledger Entries, Vendor Ledger Entries, or FA Ledger Entries).
If there is a Reason Code on the sales document in the Header document, when posting the document, it will be copied always to the Customer Ledger Entries and to all General Ledger Entries.
Reason codes filled in on sales lines are only written in posting if the Reason Code in the sales header is empty.
Reason Code Setup in Financing
For individual accounting operations posted automatically in the Financing Contract, it is possible to set Reason Codes, Standard Text Codes, and sets of variables that the system will use on the posted document.
If OneCore is in Settings (OneCore Setup) Check On Reason Code, is the setting of the Default Reason Code Mandatory. If the check is not enabled, only lines for selected accounting operations can be set (e.g. for setting introductory texts on a sales invoice of a posted payment).
Reason Code Setup in Financing
The posted line looks for settings by fields:
Accounting Operation Type
Defines for which accounting operation the Reason Code and Standard Text Code are set. The options are:
Installment
Contract Payment Calendar Payment Posting (Current Line)
Insurance
Posting a payment in the insurance calendar (insurance not included in the payment, invoiced to the customer separately)
Fee
Post an individual invoice generated when a contract is activated
Down Payment
Posting the first payment in advance from the contract payment calendar (down payment line)
Fictional Fictive Payment
Only for Instalment Sale
For internal document only (posting of Instalment Sales instalment by internal document used for partial payment of invoice for Instalment Sales price)
Selling price / Residual Value
Posting a Contract Payment Calendar Payment (Sales Price Line)
Sales Price Invoice
Only for Instalment Sale and Financial Leasing with Delivery of Goods
Post sales price invoices (total long-term receivables) for installment sales and VAT invoices in financial leasing with delivery of goods.
Exceptional Payment
Posting a Contract Payment Calendar Payment (Flag Line Extra Payment = Yes)
Contract Accrual Line
Posting an internal document from a calendar line Contract Accrual Lines
Calculation Input
Posting an internal document from the Contract Calculation Input
Partial Payment Credit
Posting a Contract Payment Calendar Payment (Flag Line Partial Credit = Yes)
Recalculation Settlement Credit Memo
Contract Payment Calendar Posting (Flag Line Recalculation Settlement = Yes)
Financing Type
Defines the accounting operation according to the financing type of the posted contract:
Financial Leasing
Operative Leasing
Credit / Loan
Instalment Sale (Instakment Sale)
Fleet Management
Accounting Area (Accounting Area)
Defines the accounting operation according to the accounting system to which the document belongs:
Both
This setting applies to both local and IFRS documents
Local
The setting applies only to local documents
IFRS (IFRS)
This setting applies only to IFRS documents
For Calculation Inputs and Contract Accrual, the field is decisive Document Accounting System in OneCore Setup (the accounting system on the accrual calendar or calculation input is not taken into account in this setting)
Only Local or Both can be set to Financing Contract for posting a Financing Contract payment
Accrual Object
It defines the accounting operation according to the accrual object of the contract. The setting is only relevant for Accounting Operation Type = Accrual Line. It is possible to set up separate lines for individual objects, or a single line with a value of All valid for all accrual objects of a given contract
For other accounting operations, the setting is irrelevant and therefore the value of All is set
All
Down Payment
Principal
Interest
Insurance Contract
Contract Service
Input Expense Fee
Income Input Fee
Expense Subsidy
Subsidy Income (Income Subsidy)
Expense Commission
Income Commission (Income Commission).
Based on the settings found for the given accounting operation, reason codes and standard texts will be inserted into the posted documents. If a set of variables is set, the system replaces the variables in the texts (in the standard text, in the extended text, and in the description in the OneCore posting Setup) when posting.
Default Reason Code
Reason Code to be inserted into the posted document
This setting is required when Reason code checking is turned on
Default Standard Text Code
Standard Text Code, possibly with extended text set, to be inserted into the posted document (invoice or credit note)
In operative leasing, where mass invoicing for multiple contracts is assumed in one invoice or credit note, it does not make sense to set variables in the standard text (e.g. the "Contract number" variable fills in only the number of the first found contract)
Setting is optional
Usable Variable Template
This setting allows you to replace variables in the text of the posted document
Variables in Standard or Extended Text on Sales Invoice/Credit Memo
variables in Description in OneCore Posting Setup
By selecting a template, you choose a specific set of variables. You can view the set of variables by clicking the Standard Text Variables button on the ribbon
You can then use variables from this set when setting Descriptions to Standard Text Code, Extended Text, and OneCore Posting Setup
The setting is optional.
Standard Text Variables
A button on the ribbon displays a list of variables that are set for the template in the Reason Code Setup in Financing row.
Assigning Reason Codes to Documents in Financing
Automatically Generated Documents
To assign a Reason Code to an automatically generated and posted Financing Contract document, a record in the Reason Code Setup in Financing table is searched for and if such a record is found, the system copies the Default Reason Code from this record to the header or document lines.
The setting doesn't apply to credit memos that arise as a payment reversal. On these credit memos, the Reason Code is copied from the original invoice.
Regular Payment – Sales Invoice, Internal Document
A record will be found for:
Accounting Operation Type = Payment
Financing Type by Contract
Accounting Area = Local or Both
Accrual Object = All
Down Payment, Extra Payment (flag Extra payment), Selling price / Residual Value – Sales Invoice, Internal Document
A record will be found for:
Accounting Operation Type = Down Payment or Extra Payment or Selling Price / Residual Value
Financing Type by Contract
Accounting Area = Local or Both.
Accrual Object = All
Fictive Instalment Sale Payment (Internal Document posted to the customer's balance)
A record will be found for:
Operation Type = Fictitious Payment (Financing Type is Instalment Sale and Document Type is Internal Document)
Financing Type by Contract
Accounting Area = Local or Both.
Accrual Object = All
Regular Insurance (Insurance Billed Separately, Contract Status is Lower than Terminated) - Sales Invoice / Sales Credit Memo
A record will be found for:
Accounting Operation Type = Insurance
Financing Type by Contract
Accounting Area = Local or Both
Accrual Object = All
Regular Insurance (Insurance Billed Separately, Contract Status is Lower than Terminated) - Internal Documents
A record will be found for:
Accounting Operation Type = Insurance
Financing Type by Contract
Accounting Area = Local or Both
Accrual Object = All
Partial Payment Credit (Sales Credit Memo at the end of the contract for a part of the invoiced period, posted from the Financing Contract line)
A record will be found for:
Accounting Operation Type = Partial Credit
Financing Type by Contract
Accounting Area = Local or Both
Accrual Object = All
Partial Payment Credit (Internal Document posted from the Financing Contract line)
A record will be found for:
Accounting Operation Type = Partial Credit
Financing Type by Contract
Accounting Area = Local or Both
Accrual Object = All
Recalculation Credit Memo (Sales Invoice or Sales Credit Memo posted from the Financing Contract line, which arises as a result of the recalculation settlement)
A record will be found for:
Accounting Operation Type = Recalculation Credit Memo
Financing Type by Contract
Accounting Area = Local or Both
Accrual Object = All
Recalculation Credit Memo (Internal Document posted from the Financing Contract line, which arises as a result of the recalculation settlement)
A record will be found for:
Accounting Operation Type = Recalculation Credit Memo
Financing Type by Contract
Accounting Area = Local or Both
Accrual Object = All
Instalment Sales Price Invoice (introductory Sales Invoice posted from the header of the Financing Contract)
A record will be found for:
Accounting Operation Type = Instalment Sales Invoice
Financing Type by Contract
Accounting Area = Local or Both
Accrual Object = All
Flat Fee – Sales Invoice Billed at Contract Activation
A record is found for:
Accounting Operation Type = Flat Fee
Financing Type by Contract
Accounting Area = Local or Both
Accrual Object = All
Contract Accrual Lines – Internal Documents
A record is found for:
Accounting Operation Type = Accruals
Financing Type by Contract
Accounting Circuit = Accounting Circuit from Posting Setup or Both
Accrual Object by Object on Accrual Calendar Line or All
Calculation Inputs – Internal Documents
A record is found for:
Accounting Operation Type = Calculation Input
Financing Type by Contract
Accounting Circuit = Accounting Circuit from Posting Setup or Both
Accrual Object is not tested = All.
Create an individual invoice
For an invoice created using Create Incoice, the Reason Code is manually selected in the dialog box.
This value is then copied to the header of the sales invoice.