Question: Setup of ERPNext for Homeowner Association

Hi all!

We just subscribed to ERPNext, and we’re trying to set it up as the system for our homeowner association. We’d like to set up the following:
Member Homes (do we set them up as customers?)

Member homes have the following obligations:
Pay monthly association dues (do we set this up as a subscription or is it easier to just send invoices manually?)
Annually buy car stickers for each car (how do we set up cars and connect them to a member home?)
Pay for service fees every time they have a home renovation (should this be treated as a service?)
Buy IDs for household help and construction (should this be treated as a service?)

In terms of services for homeowners and guests, we have:
Basketball/Volleyball Court rental
Clubhouse venue rental

We also have employees, and payroll, but that’s pretty self explanatory on the system. No concerns with that. We also have assets, but that’s also quite easy to understand (I assume).
We have projects from time to time, which leads to certain expenses.

Any suggestions on how to best set it up so that we can track P&L will be much appreciated. We have monthly reports, so it’ll be helpful if the system can generate the monthly statements. I got lost on how to set this one up.

Thanks in advance for the help!

Hi @mikensha

Out of the box, setting up home-owners as Customers would be your best option
I would have suggested renaming the field as Home-owner but that might create problems while migrating to a newer version

Setting up your monthly dues as Subscription would be ideal.
You will need to create the first document (Sales Invoice in this case) manually and then you can use the Subscription module to set it up as a Subscription. Refer to this video for help
This way you do not have to worry about generating the invoices manually and the system can even email the invoices at a particular day of the month to the Home Owners (Customers)

I would like to ask a question here,

What is the intent of storing the car number separately? Do you mention them in the (Annual) Car Sticker invoices that you send out?
Suggestion: If storing and mentioning the car number is not that relevant, I would suggest you to just use the quantity column in Sales Invoice to charge the Home Owners.

If you want to mention the car number on the invoice and link it to the Home Owner, also calculating the Quantity of Car stickers from the Car numbers mentioned and link it to each Home Owner, it might require a lot of customisation and might not be worth for invoices that you send out Annually. Also given the complexities, using Subscription module for these invoices might not make sense

Distinction between a Product and a Service in an item master is that you generally maintain a stock of a Product whereas a Service is something that you render to your customer involving some value addition for which you charge a fee. On ERPNext it is distinguished when you select or unselect “Maintain stock” option

Depending on how you charge Home Renovation Service fees,

  1. If it is a one time fee for every time they get their home renovated, the item will be “Service Fee for Home Renovation” and a price defined for it
  2. If you charge on basis of duration of the renovation, you will have to define the item as “Home Renovation Service Fee per month/day”, with a price defined for it

For IDs, define an item ID in the item master and associate a price for it

For this you will have to define an hourly rate for these items in your item master

  1. Setup your Chart Of Accounts based on your country and the accounting practices used in your company, you may be using some custom ledgers/accounts
  2. Set Accounts for all the modules that you intend to use like HR for payroll, Accounts for Expense Type
  3. Make sure you setup the purchase modules as well, use the RFQ section for getting quotes from various vendors for all your buying needs. You can even send them links for them to fill in their quotes, this is a pretty cool feature
  4. Load Opening Balances of all your Accounts
  5. Start entering transactions in ERPNext
    Once you start using ERPNext and have enough data, you can view the P&L in real-time

You can setup a monthly email to be sent out of your P&L, go to the Profit and Loss statement in Accounts section, Click on Menu on right hand side of your screen, click on Setup Auto Email, Make a new Auto Email Report (Frequency=Monthly)

Hope this helps. The suggestions mentioned above are based on my understanding, if any of the assumptions do not seem reasonable please reply back and the community will be happy to help accordingly.


1 Like

Thanks a lot! This actually solves/answers most of my questions. I think I still have to get the hang of the P&L section as we want to have custom reports aside from numbers.

On the part of the cars:
Yes, we’d like to associate the car property tied to a homeowner (which we recorded as a Customer), and then we record which cars already have car stickers. That way we can use it as a means to track possible revenues and also potential security risks.

Also, yes, the car numbers are stated in the invoices, but in a way that an invoice can have multiple car sticker purchases. Is that even doable? Will we need to state a different item for each car number, or is there a way to simply have an invoice for each sticker and there can be a description that lists the car numbers? From the current manual means, homeowners simply buy stickers and the amount of stickers along with the car numbers are written on the official receipt.

Additional Question:
I suddenly realized that our basketball court is open to guests and we really don’t need to track them as customers, but we’d want to track revenue from such. I understand that the court fees can be an item/hour, but can we issue an invoice without a customer? Is it possible to just add a Sales Order? (Sorry if this sounds so self-explanatory).

You can set it up as cash customer as you don’t want to track who has rented the area.

In order to automate the whole process (connecting the data in tables), you will need some customisation and that too at the code level.