arrobalytics / django-ledger

Django Ledger is a double entry accounting system built on the Django Web Framework.

Home Page:https://www.djangoledger.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Unique Number for the different accounting objects like PO, SO, JV

EFFICIENTCORPORATES opened this issue · comments

Is your feature request related to a problem? Please describe.
In any accouting software, we have different types of objects like a Purchase Order (PO) , a sales Order (SO), a Journal Entry (JV) for every transaction, Assets , Invoices . For a unique Identification of all these objects, a UUID has been assigned in the model. But , again, these UUIDs are not user friendly and hence difficult to be used as a point of reference by user.

For e.g I posted the entry , please check doc number ........, . So, such document numbers should be there which are serially numbers (and not Randomly generated)

The Invoice Model already has this feature currently or generating a number apart from the UUID, but again the same is being generated randomly. It should be an AUTO INCREMENT Instead.

Describe the solution you'd like:
The probable Solution I have thought of:

All these objects should have an Auto Increment number (ID) which are visible to user each time they create such objects . Like Journal entry number 520063200 posted. , Assets number 70005261 created.

In terms of the uniqueness of these numbers , below is proposed:

  1. Journal Entries: These are huge in number , so Journal entries should be unique across an entity for a particular Financial Year. At the start of FY , it will auto reset to 100000000 , 100000001 , 100000002 . (If we have multiple units within an entity, then, within a unit, there should not be any duplicate JV number, but we can have same JV number across units. So, the Unique together will be JVNumber_Unit_FinancialYear

  2. PO Number : Purchase Orders tends to span over more years and as a best Practice, it is always suggested to have a unique PO number across Entity and across Financial years. No repetition should be allowed.

  3. Invoice Number : These should be serially numbered as most of the Sales Tax Law require a serially numbered invoice. These should be unique for a FY and get reset at start of FY.

  4. Sales Order Number : Can be discussed and either made Unique in FY (like Invoice ) or Unique Across (Like PO)

  5. Assets Number : Assets Accounting (if added in later updates) should always be Unique across an entity for lifetime.

@EFFICIENTCORPORATES Can you please clarify the logic behind the "JV" prefix? We can make this customizable based on general company preferences. Wouldn't make more sense to have a default "JE" (as in Journal Entry)?

If the question is just to replace JV with JE, that's perfectly fine...
(JV was basically for Journal Voucher as in common parlance..)

If you are asking the reason for even having a Prefix "JE" , then,
The logic basically was to ensure you don't end up having a JV number 1015 and also a PO number 1015. , and a Sales Order Number 1015..

Just for segregation and identification purposes..

If instead, we can have a different series altogether, with restrictions at the user end to avoid any such number collision, these prefixes wont be required...

Would be Suitable either ways .. Hope it clarifies..!!

@EFFICIENTCORPORATES Please refer to #108 for this new feature