InvoicePlane

InvoicePlane is a self-hosted open source application for managing your quotes, invoices, clients and payments.


Note

For this guide you should be familiar with the basic concepts of

Prerequisites

We’re using PHP in the stable version 7.2:

[isabell@stardust ~]$ uberspace tools version show php
Using 'PHP' version: '7.2'
[isabell@stardust ~]$

You’ll need your MySQL credentials. Get them with my_print_defaults:

[isabell@stardust ~]$ my_print_defaults client
--default-character-set=utf8mb4
--user=isabell
--password=MySuperSecretPassword
[isabell@stardust ~]$

Your website domain needs to be set up:

[isabell@stardust ~]$ uberspace web domain list
isabell.uber.space
[isabell@stardust ~]$

Installation

To install InvoicePlane we download the current version from the official website. cd to your DocumentRoot so the zip file will be under your html.

[isabell@stardust ~]$ cd /var/www/virtual/$USER/html/
[isabell@stardust html]$ wget https://www.invoiceplane.org/download/v1.5.10
[isabell@stardust html]$ unzip v1.5.10
[isabell@stardust html]$ rm v1.5.10
[isabell@stardust html]$

Configuration

Create the database, copy the configuration template, rename the htaccess file and add your URL https://isabell.uber.space in the ipconfig.php file under IP_URL.

[isabell@stardust html]$ mysql -e "CREATE DATABASE ${USER}_ip"
[isabell@stardust html]$ cp ipconfig.php.example ipconfig.php
[isabell@stardust html]$ mv htaccess .htaccess
[isabell@stardust html]$

After the installation you need to open https://isabell.uber.space/index.php/setup in your browser to finish your setup.

Fill out your system settings, admin user and edit the following database settings:
  • Username: isabell
  • Password from your MySQL credentials
  • Database: isabell_ip

Best practices

Security

If you want to secure your installation, you may disable the setup for now. To do so, replace the line DISABLE_SETUP=false with DISABLE_SETUP=true in your ipconfig.php file.

Updates

Check InvoicePlane’s stable releases for the latest versions. If a newer version is available, you should manually update your installation.

Backup your ipconfig.php file, delete everything else in your html directory.

[isabell@stardust ~]$ cd /var/www/virtual/$USER/html/
[isabell@stardust html]$ cp ipconfig.php ~
[isabell@stardust html]$ rm -rf * .*

Proceed with the installation steps from here and move back your config file.

[isabell@stardust html]$ mv ~/ipconfig.php ./
[isabell@stardust html]$

Finish the update by open https://isabell.uber.space/index.php/setup in your browser.


Tested with InvoicePlane 1.5.10 and Uberspace 7.4

Written by: Thomas Kammerer <https://kammerer.tk/>