Download the PHP package budgetinvoice/easyinvoice without Composer

On this page you can find all versions of the php package budgetinvoice/easyinvoice. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package easyinvoice

Easy Invoice

A product by

Easy Invoice logo

Build for Web and Backend 💪


Version Coverage Status
Downloads License Pull Request's Welcome

If this package helped you out please star us on Github!
Much appreciated!

Pull Request's Welcome

Important

  1. Please note that this package is a wrapper for an API, so it's logic runs on external servers.
  2. Your data is secure and will not be shared with third parties.
  3. We try to keep the API up and running at all times, but we cannot guarantee 100% uptime. Please build in a retry mechanism in case the API is down for maintenance.

Installing

Using composer:

Sample

Easy Invoice Sample Logo Only Easy Invoice Sample With Background

JSON Configs used for above samples:

Note: Since these samples are in JSON, don't forget to convert them to PHP notation when used

Demo

PHPSandbox Notebook

Plans

Plan Rate Price Link
Free 25 invoices / 15 days $0 Not required to register
Paid Unlimited - 30 day free trial
- 1st month $1.99
- $17.99 per month
*Prices include VAT
Register here


To use paid

  1. Register through:
  2. Create an API key through the app: settings -> API keys
  3. Use the API Key as shown in the complete example below. Add the apiKey property to the data object.

Note: The GUI is not (yet) fully translated to English, though the path to getting an apiKey should mostly be in English. Also this will allow you to use the in app purchase mechanism to pay for the subscription.

Development mode

When using the free version, you can set the mode to 'development' to make sure you are not running into rate limits while testing this package or developing your invoices. The free version is limited to 25 invoices per 15 days. When your invoice looks good, you can switch to 'production' mode to create your production invoices. Production mode is activated by either not setting the mode or setting the mode to 'production'.

Direct REST API access

In case you don't want to use the pip package, but you want to call our invoice creation api directly.

Getting Started - Basic Example

High volumes: asynchronous invoice creation

Our API is able to handle high volumes of requests. If you need to create a lot of invoices fast, make sure to create them asynchronously. This will allow you to create multiple invoices at the same time.

Full Example

Return values

Key Value Data Type
result['pdf'] The PDF file as base64 string String
result['calculations']['products'] Array of objects reflecting the products used in creation Array
result['calculations']['products'][key]['subtotal'] Rounded price without tax per product Number
result['calculations']['products'][key]['tax'] Rounded tax per product Number
result['calculations']['products'][key]['total'] Rounded price including tax per product Number
result['calculations']['tax'] Array of objects containing total calculated tax per unique tax rate Array
result['calculations']['tax'][rate] Total tax for all products with same tax rate Number
result['calculations']['subtotal'] Rounded price without tax for all products Number
result['calculations']['total'] Rounded price without tax for all products Number

Error handling

Locales and Currency

Used for number formatting and the currency symbol:

Formatting and symbols are applied through the ECMAScript Internationalization API

Click here for a list of locale codes
Click here for a list of currency codes

Disclaimer: Not all locales and currency codes found in the above lists might be supported by the ECMAScript Internationalization API.

Logo and Background

The logo and url inputs accept either a URL or a base64 encoded file.

Supported file types:

URL

Base64

Click here for an online tool to convert an image to base64

Template customization

Download our default template (invoice-v2) here to have an example which you can customize.

Supported file types:

Variable placeholders

The following placeholders can be put into your template. They will be replaced by their corresponding value upon creation.

Placeholder Will be replaced by
%document-title% translate.invoice
%logo% images.logo
%company-from% sender.company
%address-from% sender.address
%zip-from% sender.zip
%city-from% sender.city
%country-from% sender.country
%sender-custom-1% sender.custom1
%sender-custom-2% sender.custom2
%sender-custom-3% sender.custom3
%company-to% client.company
%address-to% client.address
%zip-to% client.zip
%city-to% client.city
%country-to% client.country
%client-custom-1% client.custom1
%client-custom-2% client.custom2
%client-custom-3% client.custom3
%number-title% translate.number
%number% settings.number
%date-title% translate.date
%date% settings.date
%due-date-title% translate.due-date
%due-date% settings.due-date
%products-header-products% translate.products
%products-header-quantity% translate.quantity
%products-header-price% translate.price
%products-header-total% translate.product-total
A custom product row must be enclosed in products tags like: Don't leave out the product tags or your custom product row won't be iterable by the template parser and you will end up with a single product row. Customize the html as you wish. products
%description% products[].description
%quantity% products[].quantity
%price% products[].price
%row-total% products[].quantity * products[].price (rounded)
%subtotal-title% translate.subtotal
%subtotal% Auto inserted:
Calculated total price excluding tax
A custom tax row must be enclosed in tax tags like: Don't leave out the tax tags or your custom tax row won't be iterable by the template parser and you will end up with a single tax row. Customize the html as you wish. tax
%tax-notation% settings.tax-notation
%tax-rate% Auto inserted:
Distinct tax rate used in products
%tax% Auto inserted:
Calculated total tax for rate
%total% Auto inserted:
Calculated total price including tax

All versions of easyinvoice with dependencies

PHP Build Version
Package Version
Requires php Version >=7.2.0
guzzlehttp/guzzle Version ^7.3
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package budgetinvoice/easyinvoice contains the following files

Loading the files please wait ....