How to install Akaunting on Windows 10 using IIS

Akaunting software is a free and open-source web-based application for finance & accounting purposes. Here we will see the steps to install it on Windows 10 using the IIS web server.

Akaunting is open-source with a GitHub repository and uses PHP 7.2 or higher and Mysql to get installed and operate. For webserver, it supports Apache, Nginx, and IIS. Although we can use Apache and Nginx on Windows 10 using the WSL Linux app, I think it would be great if we go for an inbuilt IIS- Internet Informations service web server of Windows 10 to install Akaunting because of its better integration.

 

Install Akaunting software on Windows 10 or 7

So, first of all, we have to enable the IIS web server on Windows 10 and then we can install the Akaunting free accounting software. So, let’s get started.

Note:  If you don’t want to use complicated IIS then go for Windows 10 subsystem for Linux– here is the tutorial on that- Steps-to-install-Akaunting-software-on-windows-10-using-WSL

 

Step 1: Install the IIS Web server on Windows 10 for Akaunting

If you already have enabled the IIS on Windows 10 then simply move to the next step otherwise type: “Turn Windows features On or Off” in the Windows search box as it appears, and click on it to open the same.

Now, scroll down and select an option called “Internet Information Services ” and press the OK button.

Let it install and after that restart your system. For more information on it, you can see our tutorial on how to enable IIS on Windows 10.

Enable Internet Information Services -IIS on Windows 10
Enable Internet Information Services -IIS on Windows 10

 

Step 2: Install Php, Php Manager & MySql for the IIS webserver

As we know that open source applications such as Akaunting are based on PHP Hypertext programming language and require a database to save files for them we need PHP or MariaDB/PostgreSQL/MySQL. Thus, first, we set these for Windows 10 IIS server before installing Akaunting. Also, one extra extension we will install is PHP manager, it helps us to manage the version and extensions of PHP on the IIS web server, graphically.

To install them we will not be going to use the Microsoft web platform installer because most of the packages available in it are too old or not available plus also slow in downloading. So, in such a case from my point of view, the best way to install all of them is Chocolatey Choco, a Windows package manager just like we have in Linux Distros.

In the Windows search box type the command prompt and run it as administrator.

Run command prompt as administrator on Windows 10-min
Run command prompt as an administrator on Windows 10

 

Now use the below command to install chocolatey, if you haven’t yet.

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

Now, close and again open the Command prompt as admin.

Run the following command to install the latest version of PHP on Windows 10

choco install php

Install PHP Manager for IIS Webserver

choco install php-manager

Finally, install MariaDB Database.

choco install mariadb

(optional) If you want to install MySQL not MariaDB, then the command will be:

choco install mysql

install MariaDB Database windows 10

Note: Restart your system.

 

Step 3: Set PHP in IIS Manager

Go to Windows search and type IIS, as the Internet Information Services Manager appears, click on it to run.

Among all the features you will see an option for PHP manager, click to open it.

Open PHP manager feature in IIS manager
Open the PHP manager feature in the IIS manager

Now, select the option- “Register new PHP version” and the three dots to select the installed PHP file.

Set php on IIS web server-min
Enable PHP file info extension

 

In Explorer, go to C: Drive-> Select tools folder-> php74 (or whatever version you have) and finally the PHP-cgi.exe file.

Select php-CGI.exe file-min
Enable PHP file info extension

 

Now, Akaunting needs a PHP file info extension to work properly. Thus, we have to enable that too. On the same Window, scroll down and click on the “Enable or Disable PHP extensions” Link.

Enable or Disable extension PHP-min
Enable or Disable the extension PHP

 

Scroll down and find the php_fileinfo.dll file, select that and click on the Enable button given on the right-side panel.

Enable PHP file info extension-min
Enable PHP file info extension

 

Step 4: Create a Database for Akaunting 

Now, MySQL is ready just create a database with a username and password to use with it.

Note: Replace the red color text with values or names which you want to give to your Akaunting Database and that could be anything.

create database demo;

creater user 'h2suser'@'localhost' IDENTIFIED BY 'pass';
grant all privileges on demo.* to h2suser@localhost;

flush privileges;
exit

Note: Restart your system here before moving further


Step 5: Download Akaunting

So, everything is ready, it’s time to create a website for Akaunting but before that let’s download its core web files which we require to install and run on any web server. Go to the official Akaunting web page, here is the link to download it: www.akaunting.com/thank-you A zipped folder will be on your system. Unzip or extract it somewhere you think, it will be secure and wouldn’t get deleted by somebody / you, accidentally.

Step 6: Create a Website on the IIS server for Akaunting

Well, we already have one default website on an IIS server running on port 80, thus if you want to run Akaunitng on the same port then first we have to change that. Or else rather than changing run this free accounting software website on some custom port. However, here we will let you know how to use port 80 with it. For that select Default website on IIS Manager and then click on the Binding option given on the right-side panel. Now change port 80 to something else, for example, let’s say 8081. Change Default websit port

Select the port and then the Edit button. Add the custom port and then finally click on the OK button.

Custom port on IIS web server

Now, again go to IIS Manager and right-click on the Sites option, and select Add websites.

Add new website

Give your site a name, as we are installing this free accounting software, thus, I have used the same. After that click on the three dots and browse to the extracted Akaunting folder and select that. We have to also give the right to our IIS server to access the folder content. For that click on Connect as an option.

Configure new website on IIS web server

A pop-up window will open, select “Specific User” and then the Set button.

Connect AS

Use the username and password that you have used to log in to your Windows 10 system where you are installing Akaunting.

Set windows 10 username and password

Step 7: Add index.php to IIS website Default Document 

Select the created website and double-click on the Default Document feature.

Default document
Default document

 

Now, select the Add link from the Actions tab and then type index.php followed by the OK button.

Add index.php in IIS website document
Add index.php to the IIS website document

Step 8: Access the Akaunting website to set up it.

Open your browser and type:

http://localhost/install/language

A setup page will get opened. Select the language which you want to use in Akaunting, enter the database details and you are good to go.

Setup Akaunting free accounting software on Windows 10
Setup Akaunting free accounting software on Windows 10
Company and Admin Details
Company and Admin Details
Login to Akaunting on Windows 10
Login to Akaunting on Windows 10
Run the Akaunting Wizard
Run the Akaunting Wizard
Go to Dashboard
Go to Dashboard
Akaunting Dashboard
Akaunting Dashboard


Other Articles:

9 thoughts on “How to install Akaunting on Windows 10 using IIS”

    • Sorry, there was a mistake in the steps numbering. Whereas to perform Step 4th you have to install Mysql using Step 1st & Second. And then follow this updated tutorial.

      Reply
  1. Hi
    Your document is relevant for 3.0.10? I am trying to setup the software using Windows 11 & IIS. PHP is preconfigured.
    I copied the folder under C:inetpubwwwroot eg:C:inetpubwwwrootAkauting & created a new webiste. Trying to initiate the installation is complaining about install folder not being found.
    It looks like much have changed with the latest version.

    Reply
  2. Is there an update to this how-to for Akaunting 3.0 being installed without docker? This seems to bug out with the web.config file.

    Reply
  3. I used ChatGPT-4.0 and here is what I found:

    Me: Can you help me install akaunting 3.0 locally on windows running with IIS?

    ChatGPT:
    Sure, I can guide you through the process. Since Akaunting is a PHP application, you’ll first need to ensure that your Windows server with IIS has PHP and MySQL (or MariaDB) installed and correctly configured.

    Please follow these steps:

    Step 1: Install PHP on IIS

    1.1 Download the PHP for Windows package from the PHP download page (https://windows.php.net/download/). Choose the VC15 x64 Non Thread Safe version that matches your PHP version requirement. As of my knowledge cutoff in September 2021, Akaunting 3.0 requires PHP 7.3.0 or higher.

    1.2 Extract the downloaded zip file into a directory on your server, e.g., C:\PHP.

    1.3 Rename the php.ini-development file in the PHP directory to php.ini.

    1.4 Open the php.ini file in a text editor, locate the following lines, and uncomment them by removing the semicolon at the beginning:

    extension_dir = “ext”
    extension=mysqli
    extension=pdo_mysql
    extension=openssl

    1.5 Save and close the php.ini file.

    1.6 Open the IIS Manager, select the root node in the left pane, double-click “ISAPI and CGI Restrictions” in the middle pane, add a new ISAPI or CGI restriction, enter the path to php-cgi.exe in the PHP directory, provide a description (e.g., “PHP”), and check the “Allow extension path to execute” box.

    1.7 Still in the IIS Manager, select the root node in the left pane, double-click “Handler Mappings” in the middle pane, add a new module mapping with the following settings:

    Request path: *.php
    Module: FastCgiModule
    Executable: C:\PHP\php-cgi.exe (adjust the path as necessary)
    Name: PHP_via_FastCGI

    1.8 Click “OK” to save the new module mapping, then click “Yes” to confirm that you want to create a FastCGI application for this executable.

    Step 2: Install MySQL or MariaDB

    Download and install MySQL or MariaDB on your server:

    2.1 MySQL: Download the MySQL Installer from https://dev.mysql.com/downloads/installer/ and follow the instructions to install MySQL.

    2.2 MariaDB: Download the MariaDB MSI package from https://mariadb.org/download/, and follow the instructions to install MariaDB.

    During the installation, you’ll be prompted to create a root password. Make sure to remember this password as you’ll need it later.

    Step 3: Install Akaunting

    3.1 Download the latest version of Akaunting from https://akaunting.com/download.

    3.2 Unzip the downloaded file and move the unzipped folder to the root directory of your website. If you’re using the default IIS website, this would typically be C:\inetpub\wwwroot\.

    3.3 Open your web browser and navigate to http://localhost/akaunting (replace “akaunting” with the name of the folder you moved to wwwroot).

    3.4 Follow the on-screen instructions to complete the installation. You’ll be asked to enter details for the database connection. Use the root user and password you created when installing MySQL or MariaDB.

    3.5 After the installation is complete, you should be able to access your Akaunting instance by navigating to http://localhost/akaunting in your web browser.

    Please note that this is a simplified guide and actual steps may vary depending on your server configuration and the versions of IIS, PHP

    Me:
    When I click default document for akaunting in iis, it gives me an error coming from the web.config file

    ChatGPT:
    It’s possible that the web.config file provided by Akaunting isn’t working correctly with your IIS configuration. Akaunting is built on the Laravel framework, which typically uses an Apache or Nginx server, so some additional steps may be required to get it working on IIS.

    First, ensure that the URL Rewrite module is installed in your IIS. Laravel (and thus Akaunting) uses this for its routing functionality. You can download it from the official Microsoft website: https://www.iis.net/downloads/microsoft/url-rewrite

    After installing the URL Rewrite module, you need to modify the web.config file in the Akaunting root directory. If it doesn’t exist, create it. The file should contain rules for rewriting URLs to be handled by index.php, which is how Laravel routes requests. Here’s a sample web.config that may work:

    This web.config file will redirect all requests to index.php unless the requested resource is an existing file or directory, which should make the Akaunting application work as expected.

    Remember to back up your current web.config file before replacing it with this one, in case you need to revert the changes.

    If you’re still encountering issues, it would be useful to know the specific error message you’re seeing. That could help in pinpointing the problem.

    — That worked, but there is a bit more to the PHP extensions. Basically, I had to find the comments for each of these errors and uncomment them, then it all worked.
    cURL extension needs to be installed and loaded!
    FileInfo extension needs to be installed and loaded!
    Intl extension needs to be installed and loaded!
    GD extension needs to be installed and loaded!
    Mbstring extension needs to be installed and loaded!
    ZIP extension needs to be installed and loaded!

    Reply

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.