The short of it: I’ve put all our info in local databases, we’ll have to figure out how to keep them in sync.
I’m going to allow people to be notified of their subscription expiring via email, if they so wish. Please send me some direct messages if you’d like to opt in to that.
The actual post:
Up until now I’ve been tracking our income and membership in a spreadsheet, which has been kept up to date with membership end dates. Yesterday I was updating the latest batch of information and I realised I had some minor discrepencies with a few members.
Since then I’ve been moving everything in a more formal database. Firstly all transactions have been moved into GnuCash. This allows us to properly track our financial status.
Our subscribers, memberships and visitor contact details will be stored in a different database, which I’ve been setting up this morning. That’s going to be an sqlite3 database. GnuCash seems to have the option of an sqlite3 backend so I’m going to generate some unique IDs to link transactions in the accounts database to the membership transactions.
That means when we move to an online membership management system, we’ll be able to transfer some of the info more easily, without losing historical data.
Now the problem is that all these files will be local. Soon the treasurer data will be moved to the treasurer (once we get our bank account). So we’ll have to figure out how to keep this data synchronised.
I don’t want to put these on a server yet since we don’t have the capacity to manage the security of these files.
I’ve also customised the contact permissions, including being notified about subscription lapsing, newsletters and other things. I still don’t really know why we collect phone numbers from visitors, since it’s not like we’re going to call people to let them know about our events. If anyone can figure it out let me know.
Anyway. Thoughts and suggestions are welcome.