Start here


Ledger Transaction Reversal

Hi Friends,

The purpose of this post is to discuss the transaction reversal and correction in AX.

Generally, transactions are posted from different modules like Daily journals from GL, FA Depreciations/Acquisition from Fixed Assets, AP Invoice/Payment  in Accounts payable and so on. Almost all these transactions hits ledger in a way or other.

During general business practice, it is very common to post a transactions with some wrong value. Example can be a journal entry is posted to wrong ledger account, amount can be wrong or even date can also be entered wrong.

If any user has done any such mistake, then the correction approach would be to first reverse the wrong transactions posted and then re-post transactions with correct data.

I will be focusing on transactions reversals and correction in this post and coming few posts. The starting point will be ledger transaction reversal posted using general journal.

Journal Transaction Reversal

Transactions are posted using Daily type of journal very frequently. General journals are created and posted frequently. Consider following journal is posted in system that needs to be reversed:




There are 3 lines on journal and this a typical expense booking. The transaction is posted on 11/16/2013. After posting user realized that the date was entered wrong. The transactions should be posted on 10/16/2013.  As stated, the above posted transaction needs to be first reversed and then correct transaction needs to be posted.

The transactions can be reversed in following 3 different ways:

1. Reversal from Ledger Transaction:


On the main account, select the ledger account whose transaction needs to be reversed. Click on Posted to check the posted transactions. On the posted transaction, you need to locate the appropriate transaction and the click on Reverse transactions.



When you click on Reverse transaction, system will ask for Reversal date. By default it will be transaction date. It is strongly recommended to use the reversal date as transaction date only.



Clicking on OK will reverse the transaction.

2. Reversal using Load ledger transaction:

This feature is used in case the voucher has many lines. Create a new journal. On the journal lines, click on function and then select Load ledger transactions. You need to enter the voucher number using the select feature. Voucher should be set as New voucher number per voucher and Invert sign should be checked:


Clicking on OK will copy journal lines as in voucher specified. The amount will have negative sign. This simply means negative debit is same as credit. Note the description on journal line, it states that voucher is being voided.


Click on Post to Post the reversal entry.

3. Manual Entry:

Third and tradational approach is to post a manual entry. All you need to do is to create a new journals and key in date, amount manually. The manual entry is generally used when there is some correction in amount.  For example, in the above case, total voucher value posted was 1500. If it was required to post voucher for 2000 then additional entry can be posted. Similarly if the voucher was  required to be posted for 1000, then 500 debit transaction can be posted to credit account and vice versa.

Correction Entry:

Now that the original entry is reversed, the user must post correction entry. The correction entry can be key in manually or user can also use the load transaction functionality. When load transaction functionality is used, invert sign shouldn’t be used.


When the transaction is loaded, you need to change the date as correct transaction date. Note that the description is also copied as in original voucher. User can do some editing as required and post the transaction.

At this point, the original transaction is reversed and correction entry is posted.

Please let me know if you have any question. Your feedback will be highly appreciated.



Fiscal Period and Inventory Closing in AX

Hi Readers,

The purpose of this section is to discuss the fiscal period close and inventory close. By fiscal period, i am referring to month end closing and well as year end closing.

Before i begin to explain the closing process, let me explain the closing process in general.

Companies in general close their books monthly so that the financial result of that particular month can be ascertained. This is a multi-step process and generally a check list is maintained by the concerned department to perform closing.

Month end closing is different from fiscal closing as it is for one month. We can say that the fiscal is closed when all the months are closed. However, fiscal close involves opening balance migration through opening transaction to new year.

Now let’s look at the month end close activity in detail.

During month end, following are the steps which are followed in general:

1. Posting Accrual entries.

2. AP invoicing and payment activities closure.

3. AR invoicing generation and payment receipt

4. General ledger Adjustment entries

5. Tax settlement

6. Depreciation of assets posting.

7. Bank account reconciliation

8. Inventory closing

Please note that the above mentioned steps can be optional or mandatory depending on business. We don’t run fiscal close batch job for month end.

It is recommended to post all the entries and and put the fiscal period on hold. To put the period on hold, click on Ledgers in General ledger setup section. Click on Ledger calendar. Select the appropriate period and put the Period status as On Hold. We can put the status as Closed also but the important point here is that once the status is set as closed, it can’t be re-opened. It is suggested not to put the status as closed as their are higher chances that some expenses or adjustment entries may be posted later in year.



For the month end activity, certain companies follow approach were they perform month end systematically. For example, Accounts payable may be closed first then AR and lastly GL. When AP is closed then AR and GL transactions should be posted. In that case, we can’t put the period status On Hold as it will stop all the modules. For situation like this, we can use the Module Access Level restriction. On the ledger calendar itself, there is module access level. If we set module access level as None for Sales order and Customer, then user won’t be able to post Sales order invoice or payment entry, but other modules transaction will be continued. Similarly, we could also put access level at user Group and the users in that group could only post transactions.  Following screenshot describes the process:


From inventory perspective, we could either run inventory close or recalculation. The recommended option is to run close rather recalculation as this will give more realistic value. The issue with inventory close is that the closed period will not allow any inventory transaction in closed period and the advantage of monthly inventory close is that the inventory ledger will show more accurate value and the inventory close process will not be over burdened at the year end.

Fiscal closing:

If we perform month end closing correctly, then the fiscal close will not be a difficult task. Considering the fiscal year is from January to December, then December which is the last month of the fiscal, month end activity should also be performed. Since month end will include inventory close also, we will be running the Opening transaction job for migrating opening balance to next year. Please note at the year end, before running the opening transaction job, it is suggested to take the print of trial balance and other financial statement and verify data for accuracy. After the data is verified, you are good to go with opening balance job.

However, before running the opening balance job, we need to take care of the GL parameter setup related to closing: There are 4 check boxes and they are really important:

In General ledger, setup, click on Parameters and expand fiscal year close tab.


Following are the details of check boxes:

1. Delete close of year transaction during transfer: Opening transaction job can be run more than one time. For example you ran the job, analyzed the trial balance and noticed that there should be one adjustment entry posted. In that case you can post the adjustment entry (if the status is not set to closed) and run the job again. Now when we run the job again, system can post the adjustment entry transaction separately or it can delete the transactions created in last run and create new set of entries.  If it is required to run the opening balance job multiple times, it is recommend to check this check-box.

2. Create closing transaction during transfer: When we run closing, system can create two transactions. One the closing transaction on the last day of fiscal and other the Opening transaction on the first day of fiscal. If the check-box is checked then system will create closing transaction on year end date otherwise it will create only opening transaction on the first day of next fiscal. Please note that this has impact on financial reporting. So we should make the decision accordingly.

3. Set fiscal year status as closed: When the opening balance job is complete, it will set the status as closed if checked. It is recommended not to check this. Period status can be set to closed manually also and this should be done after the balance sheet is audited. However, it depends on the client’s requirement.

4. Voucher number must be filled in: This refers to the voucher number on opening transaction job. It is recommended to be checked.

Opening transactions:

At this stage, we can proceed with opening balance job. Go to General ledger, Periodic, Fiscal year close and then click on Opening transaction.



Note the general ledger parameter as the first thing. We need to enter the fiscal year end date. Select balance accounts as Closing –> Opening. Select the Retained earning account in main account for transfer of year end result and specify the voucher number.

In the financial dimension tab, select the dimensions so that balance will be migrated with dimensions. Click on Ok and the closing process will be done.

Run the financial statements and verify the data. If any adjustment entry is required, post it through general journal and re-run the opening transaction process with a new voucher

Friends, i really didn’t emphasized on Inventory close. I am writing some notes on that below:

Inventory Close: Before we run fiscal close, we should run the inventory close, however, this is not mandatory step for fiscal close. Inventory close is optional. There are certain companies which don’t maintain inventory. For example NBFC (non banking financial companies) or typical service industries don’t maintain inventory in their books. So for this type of industries, inventory close doesn’t make any sense.

Inventory closing process basically matches the inventory issues to it’s receipt as per costing method selected in item model group. Only those receipts are matched which is financially updated.

Following are some important points applicable for inventory closing:

1. Inventory closing is not generally applicable for industries which is into service sector and doesn’t maintain stock. Example can be NBFC (Non banking financial services industry) or an IT company. They generally book inventory as consumption (expense).

2. Inventory closing is not applicable if the inventory is valued at standard cost method. This is because we are valuing our inventory at standard price which can be current market price.

3. Inventory closing process can be run on monthly, quarterly or yearly basis unlike fiscal close which is always run Year end. My view is that we should run the process more frequently.

4. Inventory closing once performed can be cancelled. But this shouldn’t be taken for granted. Closing has lot of implications.

5. Inventory closing is not mandatory to be run before fiscal year close. There is no check in system for this.

6. Inventory recalculation shouldn’t be considered as an alternative to inventory closing. Closing should be performed even if recalculation is performed for each period.

Inventory costing and closing is very very vast and i think it will take me days to write complete inventory closing. I am saying this because there are already many blogs available and they are really good.

My suggestion would be to must go through This the best blog i have ever seen and the content is fantastic.

Please let me know if you have any doubts related to inventory or fiscal close. Your comments and suggestions are most welcome.



Opening Balance Migration in Dynamics AX

Hi Friends,

I have read lot of queries and questions related to opening balance migration. The general questions are:

1. On which date should we post opening balance?

2. Do we need to run the closing process after opening balance is imported?

3. How opening inventory is posted and tallied to balance sheet?

The above mentioned questions are only few. There are many others which i have seen in sites like dynamics community and

I will try to answer the questions written above and also some important tips which should be helpful.

Data migration and specially opening balance migration is one of the most important process and should be planned carefully. The plan should be data analysis, cut off date of data, journal names and other things depending on the industry and volume of data.

I will be mainly focusing on the opening balance migration.

Opening Balance Migration

We can go-live only when opening balance is migrated, posted and validated successfully. There are some factors which we need to consider before we start importing and posting data. Following are steps which are normally followed:

Thumb Rule: Remember to take the DB backup at every stage.

1. On what date are we migrating the balance: This is a customer based decision and project plan. Let’s take an example where the Go-Live date is 1st Jan. In this case we have two options again. One is either we post on 31 December of the last year on we can post on 1 Jan. Again here also we need to decide as we can post on either of date.

Avoid middle of the month as it’s really difficult to get the balances and otherwise you will be required to post backdated transactions also.

2. Accounts whose balance needs to be posted: Every company is different from another and hence requirement changes. We need to understand the client’s business, look at their financial transactions and then we can decide the financial data migration. For example, inventory is very common in trading and manufacturing industries but not in service industries. Hence we need to finalize the financial data first.

3. Financial data to be posted: After data analysis, we need to figure out the balances which we need to post. For example, we first post inventory and then ledger and sub-ledger balances. Inventory is posted warehouse wise separately. Similarly we create separate journal for AP, AR, GL. Here also, try to create different journals again. If project is being used, it is suggested to post on the project transactions directly. Remember all sub-ledgers are different from other.

4. Inventory data to be posted: Movement journal is used for this. Create separate movement journal for all the warehouses.  

5. Should we run closing after Opening upload: This totally depends on the opening balance migration date and the approach which is suitable for client. Closing can only be run if we are starting AX on the first day of financial year. Assume that the fiscal of client’s starts from 1 Jan and on the same date they are going live. In this case we can migrate the opening balance on 31 Dec, run the inventory closing (if applicable) and then fiscal closing.

If the start day is in between of financial year then we can’t run the fiscal close. We can post the opening balances and start the operation.

6. Opening balance journal name: The best process is to create a dedicated opening balance journal with a separate voucher series. Some company wants it. You can propose this to client.

7. Validation of data posted: Lastly, when the data is migrated, post the data one by one and get it validated. Take the backup frequently. Remember that opening balance is successfully migrated when trial balance matches of AX to legacy system. 

The 999999 Account

I guess account 999999 is most commonly used account for opening balance migration. Let me explain you why we use this account.

When we get the opening balance, the balances are in  Debit side and Credit side. The sum of Debit and Credit will always be 0. This is as per double entry book keeping. You will never get balance where debit balance is different from that of credit.

Another point, when you get the balance from client, look closely at the account type and balance. Asset accounts has Debit balance and Liability has Credit balance. So when we migrate Asset balance, like FA, Bank, AR, Inventory.. we offset it to 999999 account.

Now when we migrate Liability balances like AP, Loans, Accumulated Depr, Equity.. we again offset it to 999999.

This way, when our migration is complete then the net balance in 999999 will be 0. 999999 having 0 balances gives message that the debit and credit balances are equal, however it doesn’t guarantee that.

Anyway, once the balances is migrated, suspend this account for any future transactions.

we actually use 999999 to balance the debits and credits.

Apart from the discussion above, i am also attaching certain links of prominent AX knowledge base sites and these are worth looking at.

Further if you have any doubts/issues or scenario, please reply here. Let’s discuss it and come to a solution.

Opening balance migration is an endless topic. Please let me know if this post needs any editing or update.

Your comments and suggestions are most welcomed.

Very soon i will come up with fiscal year close in AX.


Let’s share knowledge

Advanced Rule Structures in AX 2012

Hi Friends,

Let’s discuss about advanced rule structure in AX 2012.

In normal accounting process, we generally have many entries to be posted which involves ledgers and dimensions. In Chart of Account configuration, we define ledger – dimension relation wherein we define which all dimensions will be applicable for the ledger and also we can limit the dimension values, for example dimension department and purpose can be required dimension for insurance expense account and dimension region can be required for asset depreciation expense account.

Here, i will be focusing on Advance Rule Structures. Advanced rule structures is somehow similar to chart of account structures. The difference is in Advanced rule structure we define rules for financial dimensions and then we attach it to ledger. So it’s basically we define rules for dimension usage but not involving ledger as the first step of configuration.

Let’s see an example:

Let’s assume a company which is having it’s regions as CA and LA. Out of these, only CA region provides insurance facility to it’s employees. So there is a requirement that for insurance expense account, when purpose is Insurance then region can only be CA and not LA.

Advanced rule structure can be best used for such type of requirements. By this, when insurance expense is selected in journal line, and when we select purpose as Insurance then on region we can only select CA. LA option will even not come in the drop-down. This feature helps a lot for restricting clerical mistakes which we see a very common thing in general accounting practice.

Now let’s see how it is configured:

Step 1. The first step is to create advanced rule structure. Navigate to GL -> Setup -> Chart of accounts -> Advanced rule structures.


Step 2. We can see here that advanced rule structures form is open. In this form only we create advanced rule structure.  Click on New to create new structure. Enter a logical name in the advanced rule structure field and also specify description.

Step 3. Next steps involved selecting dimensions. Click on Add segment button. Drop-down of financial dimensions will come.


Step 4. Notice here that main account is not a default option. Select dimension value Purpose and then click on Add segment. Now click on Add segment again and then select Region.

Step 5. Now click on the filter button on the Purpose dimension code.


Step 6. Enter the value Insurance in the field provided and click on OK. Now in similar way, enter value for Region field. Please note that we will be entering region only as CA.

Step 7. Click on Activate button to activate the advanced rule.

Step 8. Repeat the steps as mentioned above to create more advanced rules. At this stage we have created advanced rule. Now we have to attach this advanced rule on the chart of account configuration. To do so, navigate to GL -> Setup -> Chart of accounts -> Configure accounts structure.  Select the appropriate account structure and click on the Advanced rule button. Please note that before you attach advanced rule structure, change the status of concerned account structure to Edit mode and once the advanced rule structure is attached, activate the account structure.


Step 9. Click on New and enter a logical name for the rule and description.


Step 10. In the add filter section, add the account number for which this advanced rule will be effective. The account number must be there in account configuration. Select the advanced rule created in the advanced rule section.

Step 11. Close the form and activate the account structure for the changes to be effective.

At this point, we have completed the configuration of account structure. Now we can see it’s effect on General journal.

Step 12. Create a new general journal. Select account type as ledger and enter account number for which advanced rule is applied. Select Purpose dimension as Insurance and try to select Region. There will be only one option and that will be CA.

This is how advanced structure rule works. Advanced rule structure helps a lot in making financial system of any organization flexible to be used and specially for AX 2012 where we have unlimited financial dimensions.

Any queries, suggestions are most welcome. Do write to me in case you have any doubts.


Let’s share knowledge…

Service Items in AX 2012

Hi Friends,

I posted about PO accounting last time. Now it’s time to discuss something about service items with respect to AX 2012.

Service Items

Service items, unlike normal item, doesn’t have inventory. Service items are intangible (which we cannot see in general) and hence we can’t see the on hand Qty of service items.

Now another important point to note here is that service items are not considered when inventory closing is performed. The reason is obvious, we don’t receive or issue service items so how can we perform closing.

Item Model Group for Service Item

AX 2012 has introduced a new concept called Stocked product. Now the biggest question is should the service item have stocked product checked? I will list out two aspects.. decision we can take upon analysis:

1. Stocked product unchecked: Since we don’t maintain stock of service items, why should the stocked product be checked. Hence the best practice is keep the stocked product unchecked.

Keeping item model group unchecked means it has got nothing to do with inventory posting. At the time of Purchase expenditure for expense account will be debited. At the time of sales, revenue account is directly hit.

Non Stocked2

2. Stocked product checked:

As stated, stocked product should be unchecked. But the question is what will be the difference if i keep it checked or not. Now, certain important points here to note:

i. When stocked product is checked, system maintains transactions of service items which it doesn’t in case the stocked product is unchecked. However, no on-hand is maintained.

ii. On PO invoice for stocked service items, purchase expenditure for product account is hit and not purchase expenditure for expense. This is obvious as we are treating them as stocked product.

iii. In case of AX for Retail, if you want to post transactions for the service item then that item must be stocked. Otherwise there will be an issue in statement posting.

[This (statement posting) was a bug and is resolved in CU 4 update of AX 2012]. For more detail see this link:

Stocked 2

AX 2009 didn’t had any stocked product concept so there was only one option for service items. We generally booked expense for service items.

Well before i finish, another important point for stocked service items is that they can be included in master planning.

Hope you had good reading. Please feel free to post any comment/suggestions. Queries are most welcome.


Let’s share knowledge…

Purchase Order Accounting in AX 2012


Hello world!

Welcome to! This is your very first post. Click the Edit link to modify or delete it, or start a new post. If you like, use this post to tell readers why you started this blog and what you plan to do with it.

Happy blogging!