binder:some thoughts
6 years ago (3. update 6 years ago)
generating invoices is very complex...
especially if you make invoices for just a few tasks of a project or even just a few efforts of a project...
But let me explain my thoughts for the first step into a invoice-workflow:
- click on "new invoice" in a project
- add tasks to the new invoice (could be done in
projViewTask with checkboxes?)
- all task-names (perhaps also description?) fill out the rough sketch for the invoice (each task a new invoice-position)
- the cumulated logged hours of the related "efforts" for each tasks initialise the hours for that position
- text of the efforts could be included optionally (some clients insist on detailled invoices)
- the complete invoice is now initialised and can be changed for each position needed...
- the invoice-related meta-data (invoice number, ...) are generated and stored in database.
- from now on all changes to positions/invoice is made in the invoice-related tables, no link whatsoever back to tasks/efforts/...
- after playing around with the invoice and perhaps adding some more positions the invoice is sent out (status change). from now on, the invoice can't be edited anymore, only status (paid, reminded Unkwown item 1, reminded guest, ...) can be changed
some more thoughts:
- tasks could be partially invoiced =>
- task-invoice linking must be done with a linking table (n:n)
- tasks need some invoice-status (billed, partially billed, ...)
- should fully billed tasks be allowed to be added again to a new invoice?
- where should invoices be displayed? new tab for project?
some modifications for the future:
- invoices merging tasks from different projects
- invoices can have different recipient than client assigned to project
- extension of clients adress (P.O. Box, different adress for invoices than for "normal" mail, ...)
- make part payments for a project based on predicted efforts
- export invoices for accounting
- broaden invoice-managment and add external costs (e.g. print shop, freelancer, ...) to an invoice directly
- add support for periodic invoices like service contracts, ...
binder:sorry, misunderstanding! ;)
6 years ago (2. update 6 years ago)
Sorry, there was a misunderstanding; I missed saying, that after step 9 you have to built a invoice yourself, using the invoice tool of you choice (Excel, Access, ....)
But all invoice-data (including meta-data such as adressing, ...) is stored in streber-database. There are so many different needs on invoicing concerning fiscual needs alone in Germany... streber could never meet all requirements!
What I want to achieve is to store the invoice in streber-readable format. So I can search for a specific position in streber-invoice-table and just list the invoices positions to do a quick phonecall with my client... Adding the "real" invoice as a file is optional.
With that I have:
- cumulating invoicenumbers in streber
- all information where I need it (in streber)
- export easily to my invoice-software as needed
- view/search invoice-information in streber without having to search for excelfiles or in my access-database
Position of invoicesπ
back to topic:
I think, changing invoice position in the invoice-view boosts of the creation of invoices in my external software and leaves streber-readable content (see above).
But I think building invoices on tasks is more intuitive? Because often we have like 10 or more efforts concerning one task.?
binder:invoice position vs effort
6 years ago
usually an effort is not 1:1 taken over in invoice positions. We add some text or we merge efforts to one position, ...
What I want to achieve, is to store Invoice-data in streber, therefore I could also add an invoice without any efforts (Perhaps an installment/Abschlagszahlung, ...). Then I could import the relevant data into Excel/Access/... to do the math and print the invoice with the relevant meta-data available for my country.
With that in mind, I can have more than one invoice for an effort. => the user has to decide! But streber could say, that there has already been an invoice for that effort?
pixtur:Some late reply
6 years ago
Yes you are right, in that they could be invoices without any efforts attached. That really makes efforts different from invoice positions.
But I don't like the idea of heaving a new table for invoice positions. I already know this will be cumbersome to edit (or it would be some huge amount of ajax coding).
Why not settle at a compromise: We store in the efforts, if it has been used for an invoice (so billable efforts are not forgotten). But the invoicde positions could actually be written as Wiki text, couldn't they?
binder:Antwort auf Some late reply
5 years ago
yes, this would be nice! We can live with that! *G*
pixtur:Antwort auf monetary efforts
5 years ago
Could define monetary effort and you would store it?
damian2:Responder a Antwort auf monetary efforts
5 years ago
monetary effort, as far i understand, is the appointment of a monetary quantity (a field of type decimal with 2 places), in the efforts form.
a field of same type in the task form, will serve as budget.
in lists, the totals for the field in tasks could be the budget , and the totals for that field in efforts become the realized.
cheers,
5 years ago
Would this be identical to adding the field.
effort.amount_clear
effort.budget_clear
("amount" for money, and "clear" for not including taxes)? Maybe "monetary" would even be a better name for this field. My English is not good enough for such discissions...
guest:amounts
5 years ago - visible as suggested - Delete
yes, would be as is, but i think that the effort only need a realized amount (amount_clear), because the amount in tasks will be the budget. althought is better differenciate budget and amount.
therefore, do you think that could be: effort.amount_clear and task.budget_clear????
there isn't the need for multiple currency, this is a something that could be implemented in a future, but i think that will be some more complex (multiple currencies rates, triangulations, etc..) althought i insist, i see no need.
cheers,
5 years ago
yes, would be as is, but i think that the effort only need a realized amount (amount_clear), because the amount in tasks will be the budget. althought is better differenciate budget and amount.
therefore, do you think that could be: effort.amount_clear and task.budget_clear????
there isn't the need for multiple currency, this is a something that could be implemented in a future, but i think that will be some more complex (multiple currencies rates, triangulations, etc..) althought i insist, i see no need.
cheers,
guest:Currency
5 years ago - Delete
Hello,
I think the currency should not be per-installation, not even per-client, but per-project.
I am an outsourcer and it happens a lot that I work in multiple currencies, depending on the country of the client...
Expanding efforts (or tasks!) with billing fields is an attractive option as long as we still have the option to generate other invoices besides this. A rate per hour would be good for automatic calculation.
pixtur:Antwort auf Currency
5 years ago
Thanks for the feedback. I still cannot foresee, if project specific currency has any side effects. The problems will start if you transfer tasks between projects etc.
I am pretty sure, that there will be the option to have invoices without any tasks.