• Home
  • About Me
  • Contact
  • German
  • TestPage

Microsoft BizApps Finance & Controlling

Microsoft BizApps Finance & Controlling

Tag Archives: Vendor payments

Summarize vendor payments to one line for bank reconciliation

04 Sunday Sep 2016

Posted by Ludwig Reinhard in Accounts Payable

≈ 2 Comments

Tags

summarize bank transactions, Vendor payments, voucher

Recently, I came across a requirement where payments were made from a specific bank account. As only one single bank account was used for making the payments, the expectation was that Dynamics AX creates only one single posting on the bank account. Dynamics AX did, however, create numerous bank postings – one for each journal line – as the invoices paid were recorded with different financial dimension combinations. This fact made the bank reconciliation process more difficult because the bank deduced all vendor payments made in one single amount, which had to be matched with the numerous transactions recorded on the Dynamics AX bank account.

 

Example
The next screenshots exemplify how the payment proposal was created and the vouchers and bank transactions resulting from posting the payment journal.

Example – creation payment proposal
EN_133_5

Example – voucher created for the first journal line
EN_133_10

Example – bank transactions posted
EN_133_15

 

A) Change journal setup
In order to get the transactions posted on the bank account summarized, a new vendor payment journal was setup with the following (modified) settings:
EN_133_20
Note: Previously the parameter ‘new voucher’ was set to ‘in connection with balance’ and the ‘detail’ level was previously set to ‘details’.

The result of this first change in the setup was that Dynamics AX created one single voucher for all lines included in the vendor payment journal. However, there were still a number of postings created on the company’s bank account, as the next screen-print illustrates. EN_133_25

 

B) Change bank account setup
The underlying reason why Dynamics AX did not summarize the transactions made on the bank account were the different financial dimensions used at the invoice level that got inherited to the bank account. This can be identified from the previous screen-print, which shows that the bank account transactions were posted with the financial dimension ‘cost center’ no. 022, 023 and 024.

In order to avoid this problem, default financial dimension values were setup at the bank account level. For details, please see the following screen-print.
EN_133_30
With this setup in place, the expectation was that only one single posting on the bank account is created when posting the vendor payment journal. However, the setup changes made had no influence on the outcome, as the next screenshot proves.
EN_133_35
Once again the financial dimension inheritance from the vendor invoice level that was overwriting the default financial dimension setup at the bank account level was the underlying reason that prevented a summary of the bank postings.

 

C) Change main account setup
To get the posting summary issue resolved, the main account associated to the bank account was finally setup with fixed financial dimension values, as illustrated next.
EN_133_40
After creating another vendor payment journal, the following summarized voucher resulted, which shows only one single transaction on the bank account used.
EN_133_45

 

D) Modification 1 – different payment dates
To test  the stability and reliability of the setup made, another vendor payment journal was created. This time, different payment dates were used for the lines included in the journal.

The outcome of this modified payment run was that Dynamics AX created several summarized bank postings – one for each day. The next screen-print shows the journal lines and the resulting vouchers.
EN_133_50
Note: The major problem with the vouchers generated in the example is that Dynamics AX uses the same voucher number for postings made on different dates. This outcome is likely to result in problems with the company’s auditors, as all accounting standards the author is familiar with, do not allow such kind of postings.

 

E) Modification 2 – different methods of payments
The next modification made to test the stability of the setup was posting a payment journal with different methods of payments. The result of this second test run was that Dynamics AX still summarized all payments made in one single bank posting. For details, please see the next screen-print.
EN_133_55

 

Summary
Within this post the possible summary of payments made into one single bank posting was illustrated. Please note that what has been shown above does also apply to bridge-payment scenarios where all vendor payments are initially made against a bridging ledger account that is in a second step posted against a bank / cash account.

An important prerequisite of the posting summary illustrated is that the payment account used in the vendor payment journal is setup with fixed financial dimension combinations. Otherwise, the financial dimensions used at the invoice level get inherited to the bank / cash account and result in a large number of bank postings.

In addition, it has been shown that the summary does only work as intended, if one single payment date is used in the payment journal. If this cannot be ensured, Dynamics AX will create vouchers that might be questioned by tax and corporate auditors.

Duplicate vendor invoices

08 Wednesday Jun 2016

Posted by Ludwig Reinhard in Accounts Payable

≈ 2 Comments

Tags

Avoid double payments, Vendor invoice recording, Vendor payments

A general problem when recording and paying vendor invoices is the question how to ensure that invoices are not entered and paid more than once. What sounds like common sense can involve a lot of practical problems especially when it comes to recording and paying expense related vendor invoices that are not linked and tracked through purchase orders.

Imagine the following scenario where an employee orders some advertising material (brochures) for the next trade fair. As the total order value is quite small and given that the costs for the brochures are going to be expensed directly, the advertising material is ordered straightaway via Email without making use of the purchase requisition / purchase order process.

If the vendor sends a copy of the invoice together with the shipped advertising material and the original invoice via Email, an invoice – and copies thereof – arrives several times in a company.

For the sake of this demonstration let’s further assume that the invoice copy is forwarded from the warehouse agent to the employee who ordered the goods. After checking and approving the invoice it is then forwarded to the Accounts Payable department where it is recorded by an AP clerk for the first time in the ERP system with invoice no. “INV1234”.

Let’s continue the scenario by assuming that the original invoice is sent to the Accounts Payable department where another AP clerk forwards the invoice to the marketing manager for approval. If the marketing manager does not coordinate with his employee who placed the order, the invoice might get approved and recorded a second time in the system e.g. with invoice no. “INV 1234”. Please note that this time the invoice is recorded with a blank before the number and as a result, the invoice is not identified as a duplicate invoice by the ERP system, as the invoice numbers “INV1234” and “INV 1234” differ from a technical perspective.

At this point three questions arise:

  1. How to identify that an invoice has been recorded more than once in the system?
  2. How to avoid paying the vendor twice? and
  3. How to avoid double entries of invoices altogether?

Within the following subsections I will try answering those questions by referring to Dynamics AX standard features.

 

Q1: How to identify that an invoice has been recorded more than once in the system?
In order to answer the first question, I will slightly modify the scenario portrayed in the beginning of this post. To understand and follow up the example, it has to be noted that the AP parameter “reject duplicate” invoices is activated. Please see the next screen-print.
EN_125_0001
Next, two invoices are recorded in a vendor invoice journal. The first invoice is entered with invoice number “INV1234” and the second one with invoice number “INV 1234”. That is, the second invoice is recorded with a blank between the term “INV” and the invoice number. Because of that blank, Dynamics AX treats both invoices as distinct records.
EN_125_0025
Referring back to our scenario introduced above – and different from the illustration in the previous screen-print – the first and the second invoice would have been entered by different AP clerks in different vendor invoice journals. Because of a (“human”) typing error, Dynamics AX cannot identify that the same invoice has been entered twice.

Now let’s extend the scenario by recording another two invoices with invoice numbers “INV.1234” and “INV1234.” in the vendor invoice workbench. That is the invoices are entered with a dot in between respectively behind the invoice number. Please see the next screen-print.
EN_125_0030
Due to the blank and dot characters used, the invoice was finally recorded four times in Dynamics AX. This can be identified from the vendor invoice journal form illustrated next. EN_125_0035

After entering those four invoices we will now try identifying the duplicate invoices by making use of the audit policy feature available in the audit workbench module. (In AX2012 the same functionality can be found in the compliance and internal controls module).

The first thing that needs to be setup in this module is a policy rule type that makes use of a predefined query (“vendor invoice”) that is incorporated into standard Dynamics AX. The query type used is “duplicate” as we want to search for invoices that have been entered more than once. (Additional information on the available query types can be found on the following TechNet site).
EN_125_0005
Next, an audit policy needs to be setup and linked to an organization. Please see the next screen-print for an example.
EN_125_0010
The last and most important setup required is the specification of an audit policy rule that identifies the duplicate invoices. Example:
EN_125_0015
The criteria that the audit policy rule uses to identify (potentially) duplicate invoices are entered in the “group by” filter tab. In my example, I specified that invoices with the same amount and date for the same invoice account are potentially duplicate invoices.
EN_125_0020
Please note that the invoice number cannot be used as a criteria, as all the invoice numbers that we entered differ.

Once the audit policy rule is established, a batch job needs to be setup which analyzes all vendor invoices for potentially duplicate records based on the criteria that we specified before.
EN_125_0050
If the invoice batch search process finds duplicate records, it creates a case where it lists the potentially duplicate invoices as illustrated in the next screen-print.

Note: A prerequisite not explicitly mentioned/illustrated here is the setup of an audit type case category in the organization administration module. Details for this setup can be found on the following TechNet site.
EN_125_0055
If you take a close look at the duplicate vendor invoices identified above, you will notice that Dynamics AX only listed the invoice numbers with the dot characters in the audit case window. On the other hand, the invoices that were entered in the vendor invoice journal are not picked up and identified as duplicates.

The underlying reason for this standard behavior is the Dynamics AX policy framework. That is, only those invoices that do – among others – have a source document header and source document line associated are picked up by the audit policy check. As the invoices recorded through vendor invoice journals do not have this association they are not taken into consideration by the audit policy rule.
EN_125_0060

This standard behavior of the audit policy rules does have three major implications:

  • If you want to make use of the audit policy rule functionality, vendor invoices cannot be recorded through vendor invoice journals.
  • Alternatively, a comprehensive system modification needs to be implemented, and
  • Given that users are still allowed entering invoices through vendor invoice journals, manual checks for duplicate vendor invoices are required to avoid double payments.

From the authors perspective the first implication that requires entering all vendor invoices through the vendor invoice workbench seems to be superior as it provides one single point of entry for vendor invoices irrespective of whether those invoices are linked to a purchase order or not.

What is more, recording expense related invoices by referring to descriptive categories rather than a multi-digit ledger accounts reduces the risk of typing/posting error especially if temporary employees or trainees are recording vendor invoices in the system. Example:
EN_125_0070
Please note that users still have the chance to overwrite the ledger account that is linked to the category if necessary, as illustrated in the previous screen-print.

Even if users are familiar and used to entering vendor invoices through the Dynamics AX vendor invoice journals, a process change towards entering all invoices through the vendor invoice workbench might be beneficial. That is not only because of the audit policy functionality mentioned before but also because of the standard Excel-import and workflow processes that can be associated with the invoice workbench resulting in an overall streamlined and simplified invoice recording process.

 

Q2: How to avoid paying the vendor invoice twice?
Based on what has been said before, you can setup and process an audit policy rule for duplicate vendor invoices before you start making vendor payments to minimize the risk of making double payments. As mentioned previously, this requires that all invoices are entered through the vendor invoice workbench. Otherwise your only option is executing manual checks for potentially duplicate invoices that might require a lot of time and resources.

 

Q3: How to avoid double entries of invoices altogether?
The audit policy process introduced in this post helps you identifying whether an invoice has been entered more than once. That is, the feature is able to identify with hindsight that something went wrong that needs to be cured.

As prevention is usually better than cure, the question arises how one can prevent similar scenarios as the one described in the introduction of this post?

From the author’s perspective the best and safest way for avoiding duplicate vendor invoice records is a complete and consistent use of the Dynamics AX purchase order process for each and every purchase that is made in your company. This requires that also expense related and often small value purchases are processed through purchase orders. Especially for small- and medium-sized companies this might sound like taking a sledgehammer to crack a nut. However, I made the experience that especially small- and medium-sized companies are the ones that do not have the most stringent organizational business processes in place and as a result are the most likely ones running into the risk of entering and paying invoices double.

 

I hope you enjoyed reading this post and would be happy if you could share your experience with the AX community on how to prevent duplicate vendor invoices & payments in Standard Dynamics AX. Thank’s and till next time.

Invoice groups & Invoice payment groups

01 Sunday Nov 2015

Posted by Ludwig Reinhard in Accounts Payable

≈ Comments Off on Invoice groups & Invoice payment groups

Tags

Dynamics AX 2012 R3, Vendor invoice recording, Vendor payments

Within this blog post I will describe the newly released Accounts Payable invoice group and invoice payment group functionalities.

Invoice Groups
Let’s start by having a look at the invoice group feature. The new invoice group feature can be made available by activating the following Accounts Payable parameter:
EN_17-RG-1After this parameter is activated, users can decide whether the default invoice group code is based on (a) user name, (b) date or (c) “custom”.

A result of this setup is that a new “invoice group” field can be identified in the vendor invoice form. This newly available field is initialized with the default invoice group code that has been setup; in my case with my user ID “$1D58”.EN_17-RG-3
After posting the vendor invoice, the invoice group entered can be identified in the invoice journal form.
EN_17-RG-4Based on this additional information various analyzes can be performed such as e.g. the number of invoices entered per day or the number of invoices entered per employee, etc. The outcome of those investigations can thus be used for the setup of an activity based cost management.

Irrespective of those advantages, a couple of disadvantages remain.

  • The first disadvantage is that the invoice group field is currently not available in the various Accounts Payable invoice journals such as e.g. the invoice journal, the invoice approval journal, etc.
  • A second disadvantage is that the default invoice group values can be changed to any other combination consisting of numbers and characters. As an example, the user ID “XYZ” that is shown in the previous screenshot does not represent a valid user ID in my demo company.
  • A final disadvantage is that invoice groups cannot be used for summary updates of receipt lists, packing slips and vendor invoices.

 

Invoice payment groups
The second newly created “invoice payment group” feature is a Dynamics AX public sector functionality that becomes available with the activation of the corresponding license code in the system administration module. It can be made available by activating the following Account Payable parameter (please see the next screenshot). 
EN_17-RZG-1As for invoice groups, the activation of the invoice payment group parameter makes a new field available in the vendor invoice form.
EN_17-RZG-2
When a vendor payment proposal is created later on, the invoice payment group code can be used for filtering on invoices with the same payment group code. As an example, a filter for urgently to pay invoices can be setup.
EN_17-RZG-4
If – for example due to a payment date filter setting – one or more invoices that belong to the same invoice payment group are excluded from the payment proposal, a warning message with the following text pops up:
EN_17-RZG-5
From the warning message illustrated in the previous screenshot you can identify that the invoice payment group feature helps users verifying whether all invoices that belong to the same invoice payment group – e.g. those that need to be paid urgently – get paid.

Despite this advantage, the currently available invoice payment group functionality has also some disadvantages: First, invoice payment groups are limited to a single vendor, which prevents an immediate use of this feature in practice. Second, as mentioned before, the vendor payment group functionality is a Public sector feature that requires some code adjustment to get rid of some unnecessary info/error Messages in private company system environments.

In summary, the use of invoice groups and invoice payment groups offer some new and interesting possibilities for finance & controlling users. Yet, because of the several issues mentioned before, both features cannot be applied directly in a live environment without making some system modifications.

← Older posts
Newer posts →

Microsoft BizApps Deutschland Podcast

Dynamics UserGroup Deutschland

Project Accounting Book – Part 2

Project accounting book

Categories

  • Accounts Payable
  • Accounts Receivable
  • Bank Management
  • Book reviews
  • Budgeting
  • Cost accounting
  • Fixed Assets
  • General Ledger
  • Inventory
  • Management Reporter
  • Miscellaneous
  • Podcast
  • PowerPlatform
  • Project
  • Sustainability
  • Uncategorized

Tags

Advanced bank reconciliation AI Artificial Intelligence Automation Azure Bank reconciliation BizApps Budgeting Controlling Copilot Copilot Studio Cost accounting module Cost center accounting D365 D365FO Dynamics 365 Dynamics AX Dynamics AX 2012 Electronic reporting Email Environment Flow Global Warming invoice invoice recording IOT LEGO Management Accounting Modern Finance MS Flow MT940 Podcast PowerApps Power Apps PowerAutomate Power Automate PowerPlatform Power Platform Process Mining Project RPA Security SharePoint Sustainability Sustainability Accounting Sustainability Manager Tax time recording WBS workflow

Follow Blog via Email

Enter your email address to follow this blog and receive notifications of new posts by email.

Subcribe

  • RSS - Posts
  • RSS - Comments

Legal

  • Disclaimer

Important Websites

  • Microsoft BizApps Links

Archives

  • July 2025
  • June 2025
  • May 2025
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • March 2023
  • February 2023
  • January 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • May 2021
  • April 2021
  • March 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • October 2019
  • September 2019
  • August 2019
  • July 2019
  • June 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • December 2018
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
  • February 2018
  • January 2018
  • December 2017
  • November 2017
  • October 2017
  • September 2017
  • August 2017
  • July 2017
  • June 2017
  • May 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • September 2016
  • August 2016
  • July 2016
  • June 2016
  • May 2016
  • April 2016
  • March 2016
  • February 2016
  • January 2016
  • December 2015
  • November 2015
  • October 2015
  • September 2015
  • August 2015
  • July 2015
  • June 2015
  • May 2015
  • April 2015
  • March 2015
  • February 2015

Powered by WordPress.com.

 

Loading Comments...