boxbilling

BoxBilling - Open source billing and client management software

View the Project on GitHub


BoxBilling
BoxBilling

BoxBilling is an open source, free billing and client management software which helps any kind of company whether they are startups or even individuals who wish to automate their billing process along with tools and features which will allow you start automating your business processes today!

You can simplify your web hosting business by putting your billing cycle in control by integrating your favorite server management software to BoxBilling.

📥 BoxBilling is self-hosted — all you need is a compatible web server, and a MySQL database. For further information, check the requirements section.

Table of content

Requirements

Although BoxBilling may work in lower or smaller conditions, we highly recommend you to ensure that your environment has the following software installed:

Installation

Installing BoxBilling is pretty easy.

Obtaining a copy from GitHub releases

We make new releases of BoxBilling whenever we have some new cool stuff to introduce you to, or when we fix some bugs 🐞. If you’re planning to use BoxBilling in a production environment, downloading BoxBilling from the source code and using it may not be a good choice. Going with releases instead of the master branch will likely be better as releases are intended to be more secure and stable. However, if you’re planning to contribute, you will likely want to go with the source code instead.

First, you should download the latest release from our GitHub repository. Our releases typically have a file called “BoxBilling.zip” attached to them, and that’s exactly what you need to download. Unlike the source code itself, releases include Composer packages, so you won’t need to run Composer to install PHP packages. If you’re going to use BoxBilling in a shared hosting environment, you’ll most likely not have an option to access Composer, so obtaining a copy from GitHub releases would be your best option.

After you downloaded the release, unzip it somewhere, and copy the content of the ZIP archive to your web server’s public folder (usually, that’s called “htdocs” or “public_html”). Your web directory’s structure should now look like this:

Now, as you have everything ready to start the installation of BoxBilling, head over to your web server, and follow on-screen instructions to complete the installation using web installer. Ta-da, you’ve done it! 🎉

Running from the source code

To clone and run BoxBilling, you’ll first need to download an up-to-date ZIP archive and save it to your computer locally.

Then, extract the contents of the “src” folder inside the ZIP archive to your web server’s public folder (usually, that’s called “htdocs” or “public_html”). Your web directory’s structure should now look like this:

We do not store the Composer packages in our GitHub repository, we use Composer for that. Composer is a dependency manager for PHP, just like the NPM of Node.js, or PIP of Python.

If you don’t have Composer installed, or it’s your first time with Composer, you probably may want to read Composer’s getting started guide.

If you don’t have SSH access to your server, or your webmaster in your shared hosting environment doesn’t let you use Composer, you may not be able to install the required packages for BoxBilling. In that case, you probably should install BoxBilling by obtaining a ready-to-install copy from GitHub releases.

If you’ve already installed Composer, head over to the folder where you copied the content of the “src” folder to, and run the following command to download the required packages to your web server:

$ composer install

Now, as you have everything ready to start the installation of BoxBilling, head over to your web server, and follow on-screen instructions to complete the installation using web installer. Ta-da, you’ve done it! 🎉

Running with Docker

Docker logo

This guide assumes you already have Docker, Git and GNU make installed.

To clone the repository, first run these commands in your command line:

# Clone this repository
$ git clone https://github.com/boxbilling/boxbilling

# Navigate to the local repository
$ cd boxbilling

# Run the app with some help from Docker
$ make all

Now, you can navigate to your web server in your browser. If you’re using a PC, or directly a server without a server manager like Plesk, this address will probably be localhost.

Contributing

🖥️ Welcome, fellow developer! 🙂

First of all, thank you for your interest, and taking your time to contribute to BoxBilling.

BoxBilling is developing and reviving day to day, with the help of everyone. We have a set of guidelines for those wishing to contribute to BoxBilling. If you want to read them, please head over to contributors’ guidelines.

Your pull requests will be highly welcomed. If you’re looking for something to start with, you can check the open issues on our GitHub repository.

Questions? Don’t hesitate to create an issue, or join us on Slack to say hi.

⭐ Not a developer? Feel free to help by starring the repository. It helps us catching attention of new developers who’d like to contribute.

Licensing

BoxBilling is licensed under the Apache License, Version 2.0. See LICENSE for full license text.