[New Feature] Configurable Accounting Dimensions

We’ve merged Accounting Dimensions in ERPNext(v12) (PR Link: feat: Configurable Accounting Dimensions by deepeshgarg007 · Pull Request #17769 · frappe/erpnext · GitHub) which will allow you to create you own configurable dimensions and use them in transactions and reports.

Flow:

Creating Dimension:
Creating%20Dimensions

Using Dimension:
Use%20Dimension

Filtering Reports:

Do test it out and let us know your thoughts. We’d appreciate your feedback.

16 Likes

Great job guys. Some comments though:

  1. Dimensions are typically specified at the item level and not the document level. Is it possible to look at this again? I should be able to book an invoice that address items across multiple values of a specific dimensions
    e.g. Invoice from a vendor where values for region dimension on either of two items is North and South

  2. Also, might be good to introduce functionality like a mapping table that allows dimensions be derived from each other so for example a dimension called profit center could be derived from another dimension called cost center automatically. Dimensions are typically chained and you risk errors and time wasted looking up relationships between dimensions of a native mechanism to facilitate this chaining doesn’t exist.

  3. Why not make cost centre a default dimension of type P&L for consistency

  4. The holy grail of dimensions is to be able to create balanced books by Dimension. Does this functionality provide that? To do that we would need to indicate that balanced books are required by specific dimensions and create a parallel ledger that splits balance sheet items by these dimensions when a posting is made

Happy to spec & sponsor these additional features if required.

2 Likes

Yes, please look at it again. Dimensions are specified at the item level :wink:

Happy to spec & sponsor these additional features if required.

Great, it would be best if we work for a customer. Lets connect over Telegram

1 Like

Ah, my bad. Looked here like it was at the document level. I’ll need to get v12 dev branch and play with it soon.

Don’t worry. Take me as the customer :slight_smile: . I’m pretty demanding in my needs. Besides, culturally, customers in my end of the woods like “finished products” and don’t like to feel they’re being used for new features. I have loads of specs for changes and will hit you up on telegram to work out how to make out enough time to document them or do a call with one of the team to do it.

Cost centre is already a default dimension and also mandatory for P&L Accounts

If by this you mean Balance Sheet and Profit and Loss report, then yes you’ll be able to filter these reports on specific dimensions.

So it’s reimplemented as a Dimension? Great!

So if I post a Purchase Invoice where the effective journal is:

Cr Vendor-D 9000
Dr Item-A/Dimension-1 3000
Dr Item-B/Dimension-2 6000

Will it split the vendor line such that when I run a full FS for Dimension-1 I’ll get:

BS acct for Vendor -3000
P&L acct for Item 3000

And for Dimension-2

BS acct for Vendor -6000
P&L acct for Item 6000

1 Like

this is a very great news!

Hi @Deepesh_Garg. I’ve performed testing today on Accounting Dimensions.

Firstly, the developers and maintainers did a great job! We’ve needed these dimensions for a very long time. :grinning:

Here’s my suggestions for improvement!

  1. @Chude_Osiegbu mentioned this. Functionally, a Cost Center is just a type of Accounting Dimension. So I recommend 1) Remove the existing Chart of Cost Centers from ERPNext. 2) Migrate existing cost center data into Accounting Dimensions functionality. They are the same. So I would not continue maintaining Cost Centers separately.

  2. I agree with Chude about creating a Hierarchy of accounting dimensions. In my previous career, customers used dimension hierarchies a lot. However, that feature could wait until a future phase.

  3. I also agree about (optionally) enforcing balanced accounting dimension. We should be able to enforce balanced Debits and Credits, per accounting dimension, at some level. This is indeed the “holy grail”. Accountants and CFOs will want this. If we do not provide, they will export everything to Excel, and try to figure it out there. Very, very time consuming.

  4. I was happy to discover that Accounting Dimension values can be derived from DocTypes. In my experience, that’s an advanced feature. However. What if there is no appropriate DocType available?

For example, pretend I am a customer. I need an Accounting Dimension named “Product Line”. And the available values are “Bicycles”, “Motorcycles”, and “Scooters”. There is no such DocType in ERPNext for “Product Line”. And I am not modelling these 3 values anywhere else. How can I create my Product Line accounting dimension?

Option 1) “Borrow” another DocType that is not being used. Maybe I’m not using “Loyalty Program”. So I enter my 3 product line values into that DocType. And link my “Product Line” accounting dimension to my “Loyalty Program” DocType.

This would work…but it’s risky. I am “borrowing” a DocType, which could have configuration consequences. Also, perhaps next year I want to begin using real Loyalty Programs. Then what happens?

Option 2) Create a new, custom DocType. Name this new DocType “Product Line”. Enter the 3 values. But now I have to maintain this custom App/DocType forever.

My suggestion: When creating a new Accounting Dimension, allow optionally not linking to a DocType. And instead, just enter a list of available values.

  1. Create your “Product Line” accounting dimension.
  2. Leave the DocType field empty/blank.
  3. In another text field, enter the 3 available values: Bicycle, Motorcycle, Scooter.

This gives customers tons of flexibility. They can create whatever Accounting Dimensions are best for them. Without needing to link to an existing DocType.

Please let me know how I can help. I would be happy to contribute, meet with the developers, perform more testing, etc. Accounting Dimensions are super important. This has been the #1 Request from customer prospects I’ve done demonstrations for.

3 Likes

Just had another thought. Customers will want to Budget, per Accounting Dimension. Just like they Budget per Cost Center in V11 and earlier.

This is covered too :wink:

1 Like

In addition to: Mandatory For Balance Sheet & Mandatory For Profit and Loss Account

An extension is mandatory for specific accounts, i.e. in some scenarios you need a a certain dimension picked for certain expense accounts.

Could Job Card be included in the list of documents that can have accounting dimensions? Any reason why not? It has time, which is consumed as an accounting expense.