I've been looking for a while for some software to manage my business but everything I evaluated has fallen short. I've tried a lot of online billing systems (eg http://www.freshbooks.com/) but they're all abroad and thus do not support the European VAT thing. In most of the systems I tried the contact management wasn't really what I wanted either.
When I had my first business I developed my own 'intranet' to manage all that. Two years ago I re-started a small company and am still using that very thing I created 6 years ago, because it does just what I want.
I know have plans to develop a drupal module that:
- can manage companies and their contacts
- allows customers to log in the system to submit tickets/ask questions/view invoices/etc...
- create invoices for those customers
I've looked at the erp (http://drupal.org/project/erp) & ecommerce (http://drupal.org/project/ecommerce) module but neither does what I want. There are some things that could be re-used/extended though. Note that I haven't explored either module fully yet, so I might still find other good ideas in there. I also briefly looked at CiviCrm.
Things in ERP I liked:
- Organic Groups are used on Customers. So you can add all the contacts from one customer in 1 group.
Things I didn't like:
- Contacts are not users and they are not nodes. I would make users contacts and add additional fields with Profile. So every contact can log in.
Things in Ecommerce I liked:
- There are a lot of product types and it seems to work very well for individuals who shop and check out. There are a lot of payment and shipping options. It would be a shame not to use anything of this.
- Multiple addresses
Things I didn't like about Ecommerce:
- It is centered about individuals and not companies.
- Addresses are not nodes.
- Addresses are linked to users in stead of some other entity.
There is invoicing in ERP but I don't know if it works with ecommerce products. It should though. In ecommerce I couldn't find any real invoicing either.
What I would like to make:
It's just a group to indicate a company. One of your customers/suppliers for example. When you create a company you can create/assign contacts to it. Those contacts are users. Additional fields can be specified through profile.module. A company can also have a general address.
The ecommerce address module links to users. I would make it link against companies and use 2 types of addresses 'billing', 'general'. The general kind can be used for shipping or to link to the address of a company.
There is already a patch to introduce Vat ID's and company names in addresses: "Address module with company and vatid (EU 25)" (http://drupal.org/node/31754).
A good invoicing module. You can add ecommerce products to the invoice or free fields. The invoices are saved in their entirety so that can always be retrieved at a later time.
At first I thought having a company node that has a VAT ID, but using the approach above you can have multiple billing addresses against 1 company name that you use as reference. This is actually something I need since I have a customer which has multiple companies.
This is what I discovered by playing around with ERP and ecommerce a little. I would like some feedback/suggestions on this. Do you know another approach? The idea is to be able to come up with a complete plan before I start this journey.