Hi,
I have to implement reminders for open Invoices because some customers will need them soon.
Is there anything done right now?
I've found this: http://simpleinvoices.org/forum/discussion/90/
but it doesn't give much details.
I think of implementing this:
* adding "Reminder preferences" under Settings
(I think I will not have time to implement the settings dialog, I will first edit the database scheme according to it by hand. Maybe someone could make the Website-thingy in the meanwhile)
Here people should be able to define "Reminder Stages" like that
nr | title | days overdue | reminder charge | interest (%)
1 | "Friendly reminder" | 20 | 0.00 | 0
2 | "Second reminder" | 10 | 10.00 | 9.00
3 | "Last reminder before collection" | 10 | 10.00 | 9.00
(this will be saved in a new table (si_reminder_prefs?))
the above example means:
Send a friendly reminder after 20 days overdue, and do not calculate any charge nor interest for it (see the zeros in the above example).
After another ten days send a second reminder, billing 10EUR charge and 9% (per year, calculated for the days since the bill date) on the sum of the bills
Then after another 10 days ... (you see it above).
Detail of implementation:
I will introduce a new field in the invoices table referencing to another invoice (this will be the reminder, which is nothing than a special bill. The two amounts of the reminder bill are just the charge and the interest, the original bill stays intact with the original value.
The calculations of the interest are a bit complex (on the second and further stage)
- because it has to consider different days between the original bill and any reminder already sent out
- and it also has to consider previous interests whoes interest rates may not be doubled on the second and further stage.
Anyhow - I'm able to do this ;-)
* under "Money" adding a new menu point "Reminders"
This should show a list of overdue bills (in different reminder stages). Here is an action per customer to create an reminder "bill". This includes every overdue bill this customer has.
* a new template for Reminders (could also be implemented in the invoice template, but it's easier to manage seperatly). I also want to have another look for my reminders so that customers see that it isn't a normal bill
* under Money - Payments - Process payment:
** 1:
regardless if a original invoice or a reminder was searched:
show a table of all related bills with their amounts
show a sum of all amounts
highlight the searched bill or reminder (to show the user which one he searched for)
** 2:
process a payment by dividing the amount to all "bills", beginning with the original bill
* Links to the new functionalities everywhere
I will do them where I need them right now. Someone could finish my work here ;-)
(This is my current plan, implementation could differ slightly)
I am able to do all SQL and PHP-backend work, it would be great if someone could offer me help on the frontend-stuff and the template.
Someone willing to help here?
I am willing to do the "big parts" in the next 2 or 3 weeks, and want to complete anything in the next 2 month
If you have questions (or want to offer help which I will need to meet my timeframe) give me a message here and we could discuss them in IRC.
I will try to start this weekend, so hurry ;-)
Any comments?
best regards,
Florian Lagg http://www.lagg.at/
hey florian
sounds great
1 - can interest be % or $ based
- so you can so $10 fee is late by 10 days etc..
... i'll post more later
got to go
cheers
justin
thanks - that is what i mean
cheers
justin
I have an addition to the plan above:
* I also have to add a Field to Settings - Invoice Preferences, something like "overdue after" (as a number of days)
e.g.: If a bill is overdue 14 days after the invoice date I may not bill an interest rate for these days.
justin: do you know someone helping me with frontend work (and maybe templates)?
I want to do the main stuff, things I want to delegate are:
* Designing a Symbol to be placed in the frontend's action places for the new functionalities
* Linking to the new functionality in the frontend (everywhere, not only on the places I mentioned above)
* Default template (I only need my customized template for me and my customers, which differs in some places from your default template)
* Translations to other languages than english (as good as I can) and german
As I am very busy I'm willing to implement the things I really need and tend to schedue these parts for much later. I think these are easily delegateable.
They don't need to be implemented now, I have to do the backend functionalities first.
Do you have a release date for the next stable? I want to have this included asap.
Question on development:
Is it OK to send you diff files or do you prefer to give my svn write access? (As this is my first task on your codebase I prefer the first option so that you can easily review it)
cheers,
Florian.
---
edit: added translations to the list above.
hey florian
you now have svn access
re html/web stuff
- if you want it done you have to do it yourself
- i normally do all that stuff - but am running low on time
cheers
justin
thanks florian
note: this is pretty complex so we'll need to have the reminders feature turned off by default ( to keep Simple Invoices simple :) )
- either have a look at our basic extension system
- or just make sure that it can be easily turned on/off depending on what the user wants
cheers
justin
* or just make sure that it can be easily turned on/off depending on what the user wants
well, if you do not use it it's doing nothing.
Is that compatible with "easily turned off?"
--- edit
* we'll need to have the reminders feature turned off by default
Ah... I read over this at first.
I do not want to implement an automatic reminder ... maybe this could be a task for later.
I primarly want to have a Site showing me the open bills where a reminder should be sent. It's still the choice of the user if he uses this new feature or not. I just want to see e.g. once a month which bills are overdue. The new feature is: I could see this all on one screen and could - if I want - print a reminder for these. This should be more simple than doing this by hand, so I think I'm within the concepts of *Simple*Invoices.
Ok, I'll do the checkout now, hope I find some time to get coding soon.
Thx. regards Florian
hey florian
re easily turned off
- sounds good
- just comimt the code and we;ll sort the rest out later
cheers
justin
no worries - whenever you have time is fine
cheers
justin
Well,
at the customer where I first would use SI, we found some other missing parts and finally decided to switch to another solution.
As I am fairly out of time I cannot help here now. Maybe later.
If someone wants to pick this up feel free to do so. Also, if a developer has questions about my ideas, feel free to ask here.
hey guys
this is still on the ideas list and would be a great addition
refer: http://code.google.com/p/simpleinvoices/wiki/ideas
- a very simple solution - that is jsut email a reminder out to all unpaid invoices - is now closer than before as we have recurring invoices in teh development version and could use its code to do this type of this
cheers
justin
no worries
It looks like you're new here. If you want to get involved, click one of these buttons!