Free and Online Accounting Software

Last update: Aug 17, 2022

Akaunting™

Release Downloads Translations Tests License

Akaunting is a free, open source and online accounting software designed for small businesses and freelancers. It is built with modern technologies such as Laravel, VueJS, Bootstrap 4, RESTful API etc. Thanks to its modular structure, Akaunting provides an awesome App Store for users and developers.

Requirements

  • PHP 7.3 or higher
  • Database (eg: MySQL, PostgreSQL, SQLite)
  • Web Server (eg: Apache, Nginx, IIS)
  • Other libraries

Framework

Akaunting uses Laravel, the best existing PHP framework, as the foundation framework and Module package for Apps.

Installation

  • Install Composer and Npm
  • Clone the repository: git clone https://github.com/akaunting/akaunting.git
  • Install dependencies: composer install ; npm install ; npm run dev
  • Install Akaunting:
php artisan install --db-name="akaunting" --db-username="root" --db-password="pass" --admin-email="[email protected]" --admin-password="123456"
  • Create sample data (optional): php artisan sample-data:seed

Contributing

Please, be very clear on your commit messages and pull requests, empty pull request messages may be rejected without reason.

When contributing code to Akaunting, you must follow the PSR coding standards. The golden rule is: Imitate the existing Akaunting code.

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

Translation

If you'd like to contribute translations, please check out our Crowdin project.

Changelog

Please see Releases for more information what has changed recently.

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

Credits

Partners

Each of our partners can help you craft a beautiful, well-architected project. Feel free to get in contact with us to become a partner.

  • Creative Tim is our design partner since Akaunting 2.0 version. They create beautiful UI Kits, Templates, and Dashboards built on top of Bootstrap, Vue.js, React, Angular, Node.js, and Laravel.

Sponsors

Support Akaunting by becoming a sponsor on Patreon. Your logo will show up here with a link to your website.

License

Akaunting is released under the GPLv3 license.

GitHub

https://github.com/akaunting/akaunting
Comments
  • 1. Multi-company invoices and revenues create errors

    Please, submit only real issues. Use the forum for support, feature requests, proposals, new versions, help etc. https://akaunting.com/forum

    Steps to reproduce the issue

    1- Create a new company and switch to that company 2- Go to incomes->invoices or incomes->revenues 3- Click on add new and it will show "Whoops, looks like something went wrong." 4- Also an error when you try to go to general settings for this 2nd company

    Expected result

    1- It should show a form to add invoices or Revenues 2- For settings it should show general settings form

    Actual result

    Displays an error page with "Whoops, looks like something went wrong." error

    System information (Akaunting, PHP versions)

    Akaunting_1.3.14-Stable version, and

    PHP Version 7.1.27

    Additional comments

    After debugging I noticed that for 2nd company the settings table is not being populated with some required variable for invoices and revenues. After I changed the code and added those settings variables it started working as expected.

    I just want to know if I am doing anything wrong while adding new company or during company management do I need to do anything extra which I am missing.

    Reviewed by iahmadaj at 2019-03-25 14:51
  • 2. Added middleware for formatting currency

    Middleware might be overboard but I figured it could be reused in case there are other sections that also require server-side logic to compute values. The middleware receives the request, replaces commas with periods using regular expressions, and passes it next() which is Items\[email protected] where it can be used normally. totalItem() wants to type cast the value as double but when the string contains commas as decimal points, then it messes up.

    If necessary, I can reimplement it without middleware.

    Referencing issue #185

    Reviewed by cchoe1 at 2018-01-16 08:17
  • 3. Search/Filter not working

    Steps to reproduce the issue

    Open Invoices Lists search any word

    Actual result

    no data

    System information (Akaunting, PHP versions)

    2.0.4 PHP 7.4

    Additional comments

    Invoices and Purchases, Customers, Vendors. The search box in their list is not working

    image

    Reviewed by aliuysal60 at 2020-03-10 18:33
  • 4. Freah Heroku Install - Class 'Faker\Factory' not found

    Can't Deploy on Heroku

    Steps to reproduce the issue

    Push the latest source code (version 1.3.3) to heroku

    Expected result

    It should install correctly

    Actual result

    remote: In DatabaseServiceProvider.php line 78: remote:
    remote: Class 'Faker\Factory' not found
    remote:
    remote:
    remote: Script php artisan ide-helper:generate handling the post-install-cmd event returned with error code 1

    System information (Akaunting, PHP versions)

    Heroku

    Reviewed by warisali2 at 2018-11-27 18:00
  • 5. Impossible to update to latest Akaunting version

    Akaunting version

    2.1.27

    PHP version

    7.4.3

    Operating system

    Ubuntu 20.4

    Steps to reproduce

    Update from version 2.1.27 to 2.1.28 through the Web Interface OR php artisan.

    Expected result

    The update should run.

    Actual result

    Getting an error. CLI Error: php artisan update core 1 --verbose:

    Not able to get the latest version of core!
    

    or php artisan updat:all 1 --verbose:

    Starting update...
    Updating core...
    The command php artisan update core 1 failed.<br /><br />Exit Code: 1(General error)<br /><br />Working directory: /var/www/html<br /><br />Output:<br />================<br />Not able to get the latest version of core!<br /><br /><br />Error Output:<br />================<br />
    Not able to update core!
    

    Web Interface error (in german, translates to smth like "Unable to download core") Screenshot 2021-12-06 at 13 28 43

    Additional comments

    I traced the php artisan update core 1 --verbose CLI command to where the error is thrown in the application.

    https://github.com/akaunting/akaunting/blob/afeef58f80ca48b7881d9f6453a3483541a6802a/app/Console/Commands/Update.php#L59

    getNewVersion() returns false, because the Versions utility checks for a data key on the versions object. see: https://github.com/akaunting/akaunting/blob/afeef58f80ca48b7881d9f6453a3483541a6802a/app/Utilities/Versions.php#L58

    The actual array is:

    Array
    (
        [core] => 2.1.28
        [bc21] => 2.0.0
        [my-private-module] => 1.0.0
        [offline-payments] => 2.0.1
        [paypal-standard] => 2.0.0
    )
    

    And as you can see there is no data property for core. But the file checks for empty($versions['core']->data)

    Relevant log output

    I checked PHP, Apache and laravel logs, without success.

    Reviewed by josias-r at 2021-12-06 12:37
  • 6. Dashboard Error after making entry in Income or Expense Tab.

    Hi I have installed akaunting(1.1.1) using softaculous which is not working properly after making entry in expense and income tab. If i am adding some entry in payments or revenues then it's adding successfully but after that i can't access dashboard or income report. It's showing some error (attached). If i delete that entry then it's working fine.

    Kindly fix this issue.

    Thanks

    error

    Reviewed by gajendrazts at 2017-12-07 08:04
  • 7. Negative Numbers in Expenses Not Working

    Please, submit only real issues. Use the forum for support, feature requests, proposals, new versions, help etc. https://akaunting.com/forum

    Steps to reproduce the issue

    Create a new expense f ex dishsoap 5.00 from Big Grocery Store. Now lets say you returned the item back to the grocery store. Create a new expense try to enter -5.00 in the amount.

    Expected result

    The amount field should allow a negative number for returns on your expenses.

    Actual result

    Does Not allow you to enter negative number under expenses.

    System information (Akaunting, PHP versions)

    Akaunt 1.3.1 / PHP 7.2

    Additional comments

    Expense refunds should not go under revenues as this is not a revenue and it would count towards income, and throw numbers off balance.

    Reviewed by johnnyq at 2018-11-10 21:01
  • 8. Can`t finish the 3rd installation step when setting the app with Docker.

    I have tried to install the software in a local container, but I cant go past the 3rd step. It says SQLSTATE[HY000] [2002] Connection refused (SQL: insert intoak_companies(domain,updated_at,created_at) values (, 2018-10-09 06:56:02, 2018-10-09 06:56:02)), but it did pass the database setup step correctly, so I am really lost and cant get why it complains.

    Steps to reproduce the issue

    Install the app via docker. Go to the app URL and start the installation. Go through the installation steps and on step 3 fill all the company info and save.

    Expected result

    It should install correctly.

    Actual result

    It fails with error SQLSTATE[HY000] [2002] Connection refused (SQL: insert intoak_companies(domain,updated_at,created_at) values (, 2018-10-09 06:56:02, 2018-10-09 06:56:02))

    System information (Akaunting, PHP versions)

    docker

    Additional comments

    screenshot from 2018-10-09 12-58-33

    Reviewed by naneri at 2018-10-09 07:01
  • 9. Update to v2.1.13 breaks installation

    Please, submit only real issues. Use the forum for support, feature requests, proposals, new versions, help etc. https://akaunting.com/forum

    Steps to reproduce the issue

    Update to v2.1.13 from the UI.

    Expected result

    UI refreshes to dashboard.

    Actual result

    404 not found page.

    System information (Akaunting, PHP versions)

    v2.1.13 DigitalOcean one-click install.

    Additional comments

    How can I revert the system to a working state? I still have data in my DB.

    Reviewed by ikhoury at 2021-05-15 11:10
  • 10. Document type is missing in the histories table

    Steps to reproduce the issue

    Using the Akaunting v2.1.0 mark a bill as received and then check the "Histories" table.

    Expected result

    There is a row saying "Bill marked as received!".

    Actual result

    There is a row saying " marked as received!":

    2021-01-01 20-01-04 Ubuntu Mate 19 10 (Снимок 164)  Работает  - Oracle VM VirtualBox   2

    System information (Akaunting, PHP versions)

    Akaunting v2.1.0. PHP v7.4.

    Additional comments

    The same is for other statuses like cancelled, sent, and viewed. I suppose that the easiest way to fix this is to provide the type as the App\Events\Document\DocumentSent public field and then just use it in the listener:

    2021-01-01 20-18-45 Ubuntu Mate 19 10 (Снимок 164)  Работает  - Oracle VM VirtualBox   1

    I'm willing to work on a PR for this issue.

    Reviewed by pavel-mironchik at 2021-01-01 14:21
  • 11. Extremely slow with 10K customers

    Steps to reproduce the issue

    1. I've imported 10.000 customers.
    2. Creating Invoice, Revenues etc. for all modules Can't select customer from list it's extremly slow.
    3. Also typing any other input is very slow.

    Actual result

    image

    System information (Akaunting, PHP versions)

    https://app.akaunting.com Version 2.0.15

    Reviewed by fatihalp at 2020-06-19 14:23
  • 12. Dashboard Icons not showing after Installation

    Akaunting version

    latest

    PHP version

    8.1

    Operating system

    Debian 11

    Steps to reproduce

    Install Akaunting by installation web procedure

    Expected result

    Dashboard is showing correct after installation

    Actual result

    image

    Additional comments

    No response

    Relevant log output

    No response

    Reviewed by pthoelken at 2022-08-10 19:45
  • 13. During setup, it's impossible to modify the default currency

    Akaunting version

    3.0.5

    PHP version

    8.1 fpm

    Operating system

    Debian in docker

    Steps to reproduce

    Start wizard, try to change the currency.

    Expected result

    Currency changed

    Actual result

    Impossible to change the default currency

    Additional comments

    A conversion rate is necessary, but even when a conversion rate is set, it's impossible to save the currency to replace the default one.

    Relevant log output

    No response

    Reviewed by gromain at 2022-08-10 06:54
  • 14. Email template is not translated (even though the translation exists)

    Akaunting version

    3.0.5

    PHP version

    8.1 fpm

    Operating system

    Debian

    Steps to reproduce

    Change language to French both in User profile and in Settings. Go to email template. Langue is not changed from English.

    Expected result

    Template language should be changed if it has not been modified.

    Actual result

    Template still in English

    Additional comments

    No response

    Relevant log output

    No response

    Reviewed by gromain at 2022-08-10 06:49
  • 15. Uses locale config from env while install

    Currently it is impossible to load database config values from env file Also, if user is not coming from install/language then locale is missing in session

    Reviewed by yasirmturk at 2022-08-08 16:57
  • 16. SQL Exception with Postgresql

    Akaunting version

    3.0.0 latest master

    PHP version

    8.1.9

    Operating system

    Ubuntu heroku-20

    Steps to reproduce

    Run database installation with a prefix $table->dropPrimary(['user_id', 'role_id', 'user_type']); fails to detect the prefix

    Expected result

    Installation is completed

    Actual result

    Last migration fails with Exception SQLSTATE[42704]: Undefined object: 7 ERROR: constraint "user_roles_pkey" of relation "pod_user_roles" does not exist (SQL: alter table "pod_user_roles" drop constraint "user_roles_pkey")

    https://imgur.com/a/hBcOik4

    Additional comments

    No response

    Relevant log output

    No response

    Reviewed by yasirmturk at 2022-08-05 14:36
Torrust - a suite of client-server software for hosting online (private) torrent indexes
Torrust - a suite of client-server software for hosting online (private) torrent indexes

Torrust Project Description Torrust is a suite of client-server software for hosting online torrent indexes. Torrust only works with the torrust track

Aug 3, 2022
Free and open source text-to-speech software
Free and open source text-to-speech software

Electron + vue + ElementUI + js开发的文字转语音软件 使用帮助: 采用阿里云语音合成引擎 官网地址:https://ai.aliyun.com/nls/tts 一、设置应用秘钥 1.找到路径:src\views\Convert\api\alibaba.js 2.修改代码

Aug 8, 2022
Catus Notebook is an effective and elegant “note as todos” software that allows you to schedule your life and work easily and safely

Catus Notebook The Catus Notebook combines the defination for both a note and a todo to enable you to easily create, edit and schedule your notes effe

Oct 24, 2021
Jun 24, 2022
Yukino lets you read manga or stream anime ad-free from multiple sources for free! Available for Windows, Linux, MacOS and Android.
Yukino lets you read manga or stream anime ad-free from multiple sources for free! Available for Windows, Linux, MacOS and Android.

Yukino lets you read manga or stream anime ad-free from multiple sources for free! Available for Windows, Linux, MacOS and Android.

Aug 7, 2022
Jul 26, 2022
Nuxt client for genealogy project. Family tree and genealogy data processing website software client.

Family Tree 365 - Open Source Family Tree Software - Nuxt Client Description Browser based Genealogy software for interacting and processing data effi

Aug 3, 2022
NursingCenter - A comprehensive software development project, using Vue.js and SSM framework.
NursingCenter - A comprehensive software development project, using Vue.js and SSM framework.

颐养中心(Nursing Center) 软件综合课程设计 大作业 本项目基于 Vue + SSM 框架开发,使用 Element UI 组件库。 林文威 [email protected] 李鹤 [email protected] 王彬瞻 吴宗辉 项目预览 运行项目 初始化数据库 创建名

Jan 3, 2022
A software for FFXIV crafting simulation and auto solving with friendly UI.

A software for FFXIV crafting simulation and auto solving with friendly UI.

Jul 20, 2022
Buka is a modern software that helps you manage your ebook at ease.
Buka is a modern software that helps you manage your ebook at ease.

Buka - EBook Management About Buka Buka is a modern software that helps you manage your ebook at ease. With a simple, clean and straight-forward user

Aug 14, 2022
Static Site Generated Progressive Web App Glossary eBook for software concepts.

Software Environment Concepts Understand Software Concepts About If you are new to software engineering or you are working in a software company (Mana

Jul 28, 2022
A Vue frontend for NJU Open Source Software Mirror.

NJU Mirror Frontend A Vue frontend for NJU Open Source Software Mirror. How to Build the Project Run npm install to install all dependencies for devel

Dec 14, 2021
Task nr 2 - Frontend Software Engineer. Web-app listing user's repositories based on their popularity.

user_repos Project setup npm install Compiles and hot-reloads for development npm run serve Compiles and minifies for production npm run build Lint

Jan 10, 2022
RED-LILI is a software supply chain threat actor which has published over 1500 malicious packages.
RED-LILI is a software supply chain threat actor which has published over 1500 malicious packages.

This open-source project tracks RED-LILI's activity over time as there are evidence the actor is still active. All information provided here is intended for research purposes.

Jul 7, 2022
CuteBoi is a software supply chain threat actor which has published over 550 malicious packages
CuteBoi is a software supply chain threat actor which has published over 550 malicious packages

CuteBoi is a software supply chain threat actor which has published over 550 malicious packages. As Checkmarx uncovered, this attacker has demonstrated new techniques that power him with automated NPM account creation.

Jul 13, 2022
A P300 online spelling mechanism for Emotiv headsets. It's completely written in Node.js, and the GUI is based on Electron and Vue.
A P300 online spelling mechanism for Emotiv headsets. It's completely written in Node.js, and the GUI is based on Electron and Vue.

brain bits This project implements a P300 online spelling mechanism for Emotiv headsets. It's completely written in Node.js, and the GUI is based on E

Jul 25, 2022
StudyNet (Online study platform) built using Django and VueJSStudyNet built using Django and VueJS
StudyNet (Online study platform) built using Django and VueJSStudyNet built using Django and VueJS

StudyNet (Online study platform) Next project built by using Django and VueJS. Best practical project to enhance the both frontend and backend skills.

May 18, 2022
MangaVUE is an Online Manga Reading App, built using VueJS and TailwindCSS
MangaVUE is an Online Manga Reading App, built using VueJS and TailwindCSS

MangaVUE is an Online Manga Reading App, built using VueJS and TailwindCSS. The data used for this project is from Komiku.id, with the help of API from manga-api by Febry Adriansyah.

Aug 5, 2022
Integrated online shop based on Laravel LTS and the Aimeos e-commerce framework
Integrated online shop based on Laravel LTS and the Aimeos e-commerce framework

⭐ Star us on GitHub — it motivates us a lot! ?? Aimeos Laravel ecommerce platform Aimeos is THE professional, full-featured and high performance e-com

Aug 17, 2022