the open source company manager


System requirements

Because of performance and security reasons eBag is figured out to run on local, dedicated or virtual private server. Installing on shared web hosting environment is possible without backup, command line updater and apc user cache.

From the client side eBag requires browser with Html 4.01 frame/iframe support and enabled javascript, cookies and popup windows.


eBag user interface is optimized for resolutions above 1024x768.

Installation instructions

Installation requirements

  • Minimum Php5 (>=5.2.3) & MySQL/MariaDB (>=5.1.38) with InnoDB support
  • Php Mbstring, Mysqli, OpenSSL, SimpleXml, Fileinfo, Gd(2) support.
  • Mysql user must have full privileges over {pr_}ebag bases and privileges for creating temporary tables
  • Defined write permissions (Linux wwwrun/www-data & mysql, Windows IUSR_) to /eBag/uploads, eBag/tmp, eBag/conf, eBag/tfpdf/font/unifont and the defined backup folder.
  • APC memory cache support is recommended.
  • Automated backup and loading backup copies functionality requires appropriate directives in mysql (secure-file-priv, local-infile) and php (allow_local_infile) configuration


Downloaded package unpack in your server htdocs folder. The index page opened in browser will redirect to installation procedure (if the application is not installed yet), where the configuration data must be defined. If the smpt server data are set, internet connection is required to check and validate them. If the installer returns error: the timezone cannot be set, set the timezone first in php.ini and restart the installation. Under proxy or load balancer the internal server port have to be defined in order to use https protocol (possible 80).

After successful installation the browser will be redirected to log in page, and with general username and password root the system is accessible.

For maximum security remove or change extension of migration scripts (like migrate71to8.php) placed in eBag/migrate (for versions before 8.0.0. eBag/models) directory manually or with the command line utility eBag/models/updater_clean.php .

eBag uses DejaVu (c) Bitstream fonts by default. For printing CJK or other unsupported characters the appropriate ttf font files path must be defined in eBag.ini manually.

In case of difficulties with installation, try to edit /eBag/conf/eBag.ini configuration file manually and run /eBag/models/baseinstall.php script to install the application.

Since eBag is beta software by default php notices interrupts program execution. Users who experiences php notices this behavior can change in configuration file conf/eBag.ini with changing in section [error] option ignore_notices from value 0 to 1.

Started from version 9.0.0 multiple base installations are supported using different base name prefixes.

Reinstallation instructions

Delete the created bases ({pr_}ebag, {pr_}ebagstock, {pr_}ebagtemp, {pr_}ebagdata(year)) manually. Delete the file eBag/conf/installed.conf, open eBag in the browser and the new installation process will be started.

Update instructions

Create backup copy of /eBag/conf/eBag.ini file. Downloaded package unpack and overwrite existing files. eBag.ini overwrite with backuped file and manually change version number and version type (beta/final) to updated. Set folder permissions (uploads, tmp, conf, tfpdf/font/unifont). Restart the server. From version 6.0.0 delete system cache after first login selecting System reset in Settings.

For upgrading from version 2.0.2, 3.0.5, 3.0.7, 4.0.1, 5.0.0, 6.0.1, 7.0.0, 7.0.1 and 8.0.0 please read migrate.txt !

Started from version 8.0.0. php command line utility updater.php is available to make the update process easier. Earlier versions (>= 3.0.0) can be updated if updater files (conf/servers.conf, models/updater.php, models/updater_call.php, models/updater_dump.php and models/updater_clean.php) from newer package are copied into appropriate directories. The updating process requires mysql server to run.

The updater called with option '--mysqldump' will dump databases {pr_}ebag, {pr_}ebagtemp, {pr_}ebagstock and every base with name matching {pr_}ebagdata + 4 digits (like ebagdata2017) into eBag/tmp directory.

On Linux systems it is recommended for the user who runs the updater to be member of www users (www-data) because of changing the group of newly created files and directories by need (or they have to be reviewed and changed after update). On Windows (if the updater is started with --platform=IIS) the IUSR will get full permissions over mentioned files.

Removing or renaming migration scripts (as migrateXtoY.php) from eBag/migrate (or eBag/models in versions before 8.0.0) directory is possible manually or with command line script updater_clean.php after updating if everything works as expected.

Please backup your base and application files before using the (early versions of) automated updater.

For more details run "php updater.php --help" in eBag/models directory from command line.

First steps after installation

The first step on freshly installed system is defining the company address in eBag settings options and setting up units, payment and shipping methods and production phases. Be careful because units, payment and shipping methods and production phases are editable only if they are not used by other documents (offers, orders, etc.) created before. However, new item can be added in a case that previous is mistyped.

Important is because of security reasons to change the default username and password, or create new user with all permissions, and delete the default user.


Log in as new user, or simple continue to fill your base following the next logic:

  1. Define users and user permissions
  2. Define employees (Production orders and services cannot be finished without defined employee or cooperator.)
  3. Define contacts (Important to define suppliers for feedstock and articles which are not company’s product.)
  4. Define services, feedstocks and if the services requires feedstock, define feedstock requirements
  5. Define articles
  6. If you want to have register about used operating supplies, define them
  • After filling the initial data, the system is ready for creating service orders, offers, orders, production orders, deliveries, bills and payslips. In orders (offers, service lists) form escape is shortcut key to show/hide quick search, and system will find article and service names by entered code automatically.
  • For creating internal service order create new customer with unique name who pays with cash (type: buyer).
  • It should be mentioned that the items are deliverable only if they are in stock (by stock entry or production order).
  • Before payroll processing general and personal payroll settings for each employee (including bank loans and advances) must be defined. For calculating with bonuses, assigning the customers to sales rep, and defining item and phase related bonus settings is required.
  • The search boxes in lists searches case sensitive for part of a string. The date input boxes expects input as y2013m2d2 or simple d12 to found records by date. Every language has own assigned letters, english y(ear), m(month), d(ay); hungarian e(v), h(ónap), n(ap); serbian g(odina), m(esec), d(an).
  • EBag handles records case sensitive, but because of data sorting it is good practice to always follow the same logic with first letters of codes and names (using first lower or upper case for all items).
  • In emergency case backup copies of {pr_}ebagstock and {pr_}ebagdata{year} bases should be restored together (if is possible).
  • It is important to say that the system expects properly logging out. Closing tab or window before the user is logged out will prohibit logging in for about 10 minutes.
  • This is all about. The web user interface is well known today to employees, one of the advantages of eBag is that the time to become familiar with using it is minimum as can be.

Hosted by www.sourceforge.net     Domain name by   Dot TK               Copyright © 2011-2018 by Eper Kalman