Koha Test Wiki MW Canasta on Koha Portainer

Test major Koha Wiki changes or bug fixes here without fear of breaking the production wiki.

For the current Koha Wiki, visit https://wiki.koha-community.org .

Advanced Invoicing RFC

From Koha Test Wiki MW Canasta on Koha Portainer
Jump to navigation Jump to search

Advanced Invoicing RFC

Status:
Sponsored by: Loughborough University
Developed by: PTFS Europe
Expected for: 2018-10-07
Bug number: Bug 19850
Work in progress repository:
Description: Currently when recording an invoice, the accounting form for each line item only allows for an actual cost field and a single tax rate field. This is inadequate for accounting purposes, we need to be able to record all costs associated with a line item individually to allow break down by items, taxes and services.


Phase 1

Database Changes

aqinvoice_lines

A new table to store the broken down charges:

  • aqinvoices_invoiceid (foreign key references aqinvoices.invoiceid)
  • aqorders_ordernumber (foreign key references aqorders.ordernumber)
  • type (authorized value)
  • description (freetext alternate to above)
  • quantity (quantity of items/services covered by this line)
  • budget_id (nullable foreign key references aqbudgets)
  • list_price (nullable decimal - pre tax value of this line)
  • discount_rate (nullable decimal - percentage discount to be applied to this line)
  • discount_amount (nullable decimal - amount to reduce the list_price by when applying the discount)
  • pre_tax_amount (nullable decimal - pre_tax_amount after any discounts have been applied - may be calculated for display as required using post_tax and tax_rate)
  • tax_rate (nullable decimal - may be calculated for display as required using pre_tax and post_tax)
  • tax_amount (nullable decimal - amount to pay in tax - may be calculated for display as required using pre_tax_amount and tax_rate)
  • total_amount (nullable decimal - final amount to be paid after discounts and taxes have been applied - may be calculated for display using previous fields)
  • sort_key (integer - should we allow ordering of these lines for display?)

System Preferences

  • Add a new preference to switch to 'advanced invoicing' or continue using the existing invoice implementation.

UI

  • Add ability to define invoice lines on the order receive page.

AI RFC 1.png

AI RFC 4.png

  • Add display of invoice lines to the invoice summary table.

1200px

Phase 2

  • Add ability to define invoice line templates to allow the quick addition of similar lines.
  • Add ability to assign funds at the invoice line level.

Phase 3

  • Add the ability to independently invoice and receive, rather than requiring receipting as part of the invoicing step.
  • Add ability to assign multiple funds, split by a given ratio, at the invoice line level.
  • Expose partial invoices on order recieve page.

AI RFC 3.png