Jul 022008

SQL-Ledger® ERP is a an opensource free double entry accounting/ERP system. Accounting data is stored in a SQL database server, for the display any text or GUI browser can be used. The entire system is linked through a chart of accounts. Each item in inventory is linked to income, expense, inventory and tax accounts. When items are sold and purchased the accounts are automatically updated.

Invoices, Packing Lists, Income Statement, Balance Sheet, Sales, Work and Purchase Orders, Statements, Receipts and Checks are generated from templates and can be changed to suit your needs. Documents can be sent to a printer, file or fax, emailed or displayed on screen.

With the assembly feature you can build manufactured goods from parts, services, labor units and assemblies. When the assembly is sold all the accounts linked to the individual parts, services, labor units and assemblies are updated and stock levels adjusted accordingly.

For a detailed list of features, click here

The following procedure should let you successfully install and configure SQL-Ledger in openSUSE and SUSE Linux.

The following are the Pre-Requistes are required for SQL-Ledger:

Perl 5 or later

Apache Webserver

PostgreSQL Database server (7.1 or higher)

perl-DBD-Pg-2.6.0-13.1 (Failing to install causes Error! No database Drivers available!)



texlive for LaTex

opensuse:~ # yast2 –install postgresql-server apache2 perl texlive perl-DBD-Pg  libapr-util1-dbd-pgsql

This should install the required packages

Download the setp.pl file from here

This can download and install the latest package of SQL-Ledger for you.

opensuse:~ # wget http://www.sql-ledger.org/source/setup.pl

Make directory /usr/local/sql-ledger

opensuse:~ # mkdir /usr/local/sql-ledger

Copy setup.pl to /usr/local/sql-ledger

Copy the downloaded setup.pl file to the above created directory

opensuse:~ # cp setup.pl /usr/local/sql-ledger

Run setup

opensuse:~ # perl setup.pl

This starts the installation, when prompted select enter “i” to automatically download and install.

Enter the http owner as “wwwrun”

Enter the http group as “www”

and follow the onscreen instructions to complete the installation.

Now, add the following lines to the /etc/apache2/httpd.conf file.

# SQL-Ledger
Include /config_directory/sql-ledger-httpd.conf

Now, restart the Apache webserver

opensuse:~ # /etc/init.d/apache2 restart

Setup your postgreSQL Database server. Click here to find how to quickly install and configure postgreSQL.

Once postgreSQL server is setup, setup a new user

opensuse:~ # su postgres

opensuse:~ # createuser -d -P sql-ledger

Enter the desired password and select “no” for any prompted question like being a super user or be able to create new roles.

Now, if you do not use IDENT to authenticate users and hosts then the following error may occur when try to login in the steps to follow:


“IDENT authentication failed for user”

Hence, if you do not use IDENT, edit the /var/lib/pgsql/data/pg_hba.conf file and change “ident” to “md5″. Say, for instance, the lines below

local   all         all                               ident sameuser
host    all         all          ident sameuser
host    all         all         ::1/128               ident sameuser


local   all         all                               md5 sameuser
host    all         all          md5 sameuser
host    all         all         ::1/128               md5 sameuser

and restart PostgreSQL

opensuse:~ # rcpostgresql restart

Now, login and setup Databases from here



Select the “Database Administration” link,  enter the user you created in the previous step.

The “Create Dataset” link queries the server for existing datasets and displays them in a table. Enter a name for the new dataset (use lowercase letters only!) and select one of the Chart of Accounts and click on Continue.

You cannot manage any other datasets from this interface, only the datasets used by SQL-Ledger.

POSTGRESQL: template1 is only used to query the server, none of the information stored in template1 is manipulated in any way. You can connect to any other database you own, template1 is only a default.

Setup User

Click on “Add User“. In the Database section select the driver and enter the user you used to create the dataset.

Load Program

Open a browser and connect to


This should get you up and running with SQL-Ledger on SUSE Linux or openSUSE. For more detailed documentation on using the application click here