Download the PHP package millieofzo/php-invoicer without Composer
On this page you can find all versions of the php package millieofzo/php-invoicer. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download millieofzo/php-invoicer
More information about millieofzo/php-invoicer
Files in millieofzo/php-invoicer
Package php-invoicer
Short Description Library to generate PDF invoices with PHP
License MIT
Informations about the package php-invoicer
PHP Invoicer
Features:
- PHP 7.2 Support
- PSR-4 compatible
- Available as composer package
- Dependencies are coming via composer
Introduction
PHP Invoicer is a simple object oriented PHP class to generate beautifully designed invoices, quotes or orders with just a few lines of code. Brand it with your own logo and theme color, add unlimited items and total rows with automatic paging. You can deliver the PDF ouput in the user's browser, save on the server or force a file download. PHP Invoicer is fully customizable and can be integrated into any well known CMS.
Multi-languages & Currencies
PHP Invoicer has built in translations in:
- English
- Dutch
- French
- German
- Spanish
- Italian
- Portugese
You can easily add your own if needed and you can set the currency needed per document.
Additional Titles, Paragraphs And Badges
Extra content (titles and multi-line paragraphs) can be added to the bottom of the document. You might use it for payment or shipping information or any other content needed.
Installation
Examples
There are 3 examples included in the examples/
folder of this repo:
- simple.php
- example1.php
- invoice.php
Create A New Invoice
In this simple example we are generating an invoice with custom logo and theme color. It will contain 2 products and a box on the bottom with VAT 21% and total price. Then we add a "Paid" badge right before the output.
Documentation
Create Instances
Parameter | Type | Accepts | Note |
---|---|---|---|
size | string | A4 (default) Letter Legal |
Set your document size |
currency | string | any string (e.g. "$", "£", "€") | Set the currency that you want to use |
language | string | en (default), nl, fr, de, es, it | A language that exists in the inc/languages folder |
Number Formatting
How do you want to show your numbers?
Parameter | Type | Accepts | Note |
---|---|---|---|
decimalpoint | string | Commonly used is '.' or ',' | What string to use for decimal point |
seperator | string | Commonly used is '.' or ',' | What string to use for thousands separator |
Color
Set a custom color to personalize your invoices.
Add Logo
Parameter | Type | Accepts | Note |
---|---|---|---|
image | string | Local path or remote url of the image | Preferably a good quality transparant png image |
maxwidth (optional) | int | The width (in mm) of the bounding box where the image will be fitted in | |
maxheight (optional) | int | The height (in mm) of the bounding box where the image will be fitted in |
Document Title
Document order ID
Invoice Number
Date
Due Date
Issuer Information
Set your company details. An array with your company details. The first value of the array will be bold on the document so it's suggested to use your company's name. You can add as many lines as you need.
Client Information
An array with your clients' details. The first value of the array will be bold on the document so we suggest you to use the company's name. You can add as many lines as you need.
Note: Keep the array count of Issuer and Client the same. Use empty value if necessary
Flip Flop
Switch the horizontal positions of your company information and the client information. By default, your company details are on the left.
Adding Items
Add a new product or service row to your document below the company and client information. PHP Invoice has automatic paging so there is absolutely no limit.
Parameter | Type | Accepts | Note |
---|---|---|---|
name | string | A string with the product or service name. | |
description | string | A string with the description with multi-line support. Use either or \n to add a line-break. |
|
quantity | int | Specify the amount of the product | |
price | int | e.g 826 | The price of the product |
vat | int | e.g 21, 8 | Optional. Specify a vat percentage, which will calculate a 21% value from subtotal |
discount | int | e.g 10, 15, 20 | Optional. Specify a discount percentage, which will calculate a 10% discount on the subtotal |
Adding Subtotal
Add a row below the products showing the calculated combined price amount of all products
Adding Discount
Add a row below the products showing the calculated discount price. Specify the discount amount as a integer e.g 10.
Adding VAT
Add a row below the products showing the calculated VAT amount. VAT is calculated after discount. Specify the VAT amount as a integer e.g 21.
Adding Total
Add a row below the products and services with the total amount. Includes VAT amount and any discount amout
Adding Row
Add a row below the products and services for calculations and totals. You can add unlimited rows.
- $name {string} A string for the display name of the total
- $value {decimal} A decimal for the value.
- $colored {boolean} Optional Set to true to set the theme color as background color of the row.
Adding A Badge
Adds a badge to your invoice below the products and services. You can use this for example to display that the invoice has been payed.
- $badge {string} A string with the text of the badge.
- $color {string} Optional. A string with the hex code of the color.
Add Title
You can add titles and paragraphs to display information on the bottom part of your document such as payment details or shipping information.
- $title {string} A string with the title to display in the badge.
Add Paragraph
You can add titles and paragraphs to display information on the bottom part of your document such as payment details or shipping information.
- $Paragraph {string} A string with the paragraph text with multi-line support. Use either
or \n to add a line-break.
Footer
A small text you want to display on the bottom left corner of the document.
- $note {string} A string with the information you want to display in the footer.
Rendering The Invoice
- $name {string} A string with the name of your invoice.
- $output {string} Choose how you want the invoice to be delivered to the user.
The following options are available:
- I (Send the file inline to the browser)
- D (Send to the browser and force a file download with the name given by name)
- F (Save to a local file. Make sure to set pass the path in the name parameter)
- S (Return the document as a string)