Freeside:3:Documentation:Administration:invoice layout
From Freeside
Contents
- 1 Invoice Layout and Content
- 1.1 Basic Invoice Styles
- 1.2 Invoice Templates
- 1.3 Common VOIP plan options for invoice appearance
- 1.4 Other Variables Changing Invoice Layout at Billing Time
- 1.5 Variables Neither Perfectly Rendering nor Perfectly Generational
- 1.6 Boolean Rendering Variables
- 1.7 Other Rendering Variables
- 1.8 Miscellaneous Variables Impacting Customer Perception of Invoices
Invoice Layout and Content
Basic Invoice Styles
Several variables make significant changes to the appearance of invoices.
- invoice_sections
- enables the division of invoices into sections defined by package categories
- package categories must be setup for this to work properly
- invoice_sections_method
- Section the invoices based on location, instead of package category.
- invoice_usesummary
- Indicates that html and latex invoices should be in summary style and make use of invoice_latexsummary or invoice_htmlsummary.
- summary_subtotals_method
- Defines what information to use when displaying summaries on invoices. Locations and package categories currently supported.
- usage_class_as_a_section
- enables the construction of a section per usage_class on invoices
- svc_phone_sections
- enables the creation of a section for each svc_phone
Invoice Templates
- {{#ifeq: latex | latex | LaTeX | HTML }} invoices use Text::Template with {{#ifeq: latex | latex | [@-- and --@] | <%= and %> }} delimiters.
- {{#ifeq: latex | latex | Edit the invoice_latexcoupon, | The following can be set to override the default behaviour of using the invoice_latex* data transformed to HTML: }} invoice_latexreturnaddress, invoice_latexfooter, invoice_latexnotes, and invoice_latexsmallfooter configuration options. {{#ifeq: latex | latex | If you are adventurous, | You may }} edit invoice_latex as well.
Common VOIP plan options for invoice appearance
Certain configuration options on telephony plan packages can have significant impact on the appearances of invoices by changing the data calculated and stored at the time of invoice generation.
- CDR invoice display format [output_format]
- controls the data stored for the usage detail on the invoice. Current choices are
default - date, time, destination, regionname, duration, price default with source - source, date, time, destination, regionname, duration, price default with account code - date, time, account code, destination, regionname, duration, price simple - date, time, user, destination, duration, price simple with source - date, time, source, destination, duration, price
- Section in which to place usage charges (whether separated or not) [usage_section]
- names an invoice section which is to contain the usage portion of the invoiced package. If the section is to be included in a summary page then you will need to ensure the spelling exactly matches a package category
- Include usage summary with recurring charges when usage is in separate section [summarize_usage]
- creates an additional (2nd) line on the invoice showing the total usage associated with the package. Typically appears below a 'setup' and 'recurring' line (if they exist).
- Always put usage details in separate section [usage_mandate]
- causes freeside to generate an extra section for the usage details even when freeside is not using invoice sections. Make sure to also set the section (usage_section) you want the CDR's to go into.
Other Variables Changing Invoice Layout at Billing Time
- separate_usage
- controls the splitting of the setup, recurring, and usage components of packages into separate line items at generation time. It is one of two mechanisms which cause one or more separate 'Usage' lines to appear for each package. The other is the usage_mandate on a telephony price plan.
Variables Neither Perfectly Rendering nor Perfectly Generational
- date_format
- describes the appearance of dates
Usage is not universal and in some instances date format may be frozen when data is stored in the database.
- money_char
- defines the symbol to be used for currency in many locations
Usage is not universal and may in some instances be stored permanently in the database.
- invoice_default_terms
- declares the default payment terms for invoices
When this setting is changed, invoices which were not defaulted will retain their old value.
Boolean Rendering Variables
- invoice_show_prior_due_date
- Show previous invoice due dates when showing prior balances. Default is to show invoice date.
- invoice_include_aging
- Show an aging line after the prior balance section. Only valid when invoice_sections is enabled.
- invoice_smallernotes
- Display the notes section in a smaller font on invoices.
- invoice_smallerfooter
- Display footers in a smaller font on invoices.
- invoice-ship_address
- Include the shipping address on invoices.
- invoice-all_pkg_addresses
- Show all package addresses on invoices, even the default.
- disable_line_item_date_ranges
- Prevent freeside from automatically generating date ranges on invoice line items.
- disable_previous_balance
- Disable inclusion of previous balance, payment, and credit lines on invoices.
- previous_balance-summary_only
- Only show a single line summarizing the total previous balance rather than one line per invoice.
- balance_due_below_line
- Place the balance due message below a line. Only meaningful when when invoice_sections is false.
- invoice-unitprice
- enables a quantity (qty) field for quick charges, but otherwise only changes the rendering with the addition of qty and unit price columns on invoices
Freeside:Configuration:previous balance-section
Other Rendering Variables
- invoice_latextopmargin
- Optional LaTeX invoice topmargin setting. Include units.
- invoice_latexheadsep
- Optional LaTeX invoice headsep setting. Include units.
- invoice_latexaddresssep
- Optional LaTeX invoice separation between invoice data and the 'to' address (usually invoice_latexreturnaddress). Include units.
- invoice_latextextheight
- Optional LaTeX invoice textheight setting. Include units.
- invoice_latexextracouponspace
- Optional LaTeX invoice textheight space to reserve for a tear off coupon. Include units.
- invoice_latexcouponfootsep
- Optional LaTeX invoice separation between tear off coupon and footer. Include units.
- invoice_latexcouponamountenclosedsep
- Optional LaTeX invoice separation between total due and amount enclosed line. Include units.
- invoice_latexcoupontoaddresssep
- Optional LaTeX invoice separation between invoice data and the 'to' address (usually invoice_latexreturnaddress). Include units.
- invoice_latexverticalreturnaddress
- Place the return address under the company logo rather than beside it.
- invoice_latexcouponaddcompanytoaddress
- Add the company name to the 'To' address on the remittance coupon because the return address does not contain it.
- previous_balance-exclude_from_total
- Do not include previous balance in the 'Total' line. Only meaningful when invoice_sections is false. Optionally provide text to override the 'Total New Charges' description.
- company_name
- Your company name.
- company_address
- Your company address.
- finance_pkgclass
- The default package class for late fee charges, used if the fee event does not specify a package class itself. Also used to determine which invoice_section is the finance section of the invoice.
- cust_bill-max_same_services
- Maximum number of the same service to list individually on invoices before condensing to a single line listing the number of services. Defaults to 5.
- cust_bill-consolidate_services
- Consolidate service display into fewer lines on invoices rather than one per service.
Miscellaneous Variables Impacting Customer Perception of Invoices
These variables do not change the invoice per se, but do change what is emailed to a customer as an invoice.
- invoice_email_pdf
- Send PDF invoice as an attachment to emailed invoices. By default, includes the plain text invoice as the email body, unless invoice_email_pdf_note is set.
- invoice_email_pdf_note
- If defined, this text will replace the default plain text invoice as the body of emailed PDF invoices.
- voip-cust_email_csv_cdr
- Enable the per-customer option for including CDR information as a CSV attachment on emailed invoices.