Wednesday, December 30, 2015

Odoo 9 Healthcare Management System

Odoo Healthcare management System by Pragmatic Techsoft is now available in the latest Odoo Version (Odoo 9).

Our Odoo Healthcare management system allow users to capture details like patient demographics, schedule appointments, maintain lists of insurance payers, lab test with result, X-ray data, Instrument current location, inpatient and outpatient data, perform billing tasks, and generate reports.

1. User can maintain Patient information like Diseases, Socio-Economic conditions, Lifestyle, Medication, Diseases, Genetic Risk, Surgery, Domiciliary Unit etc.

Domiciliary Unit

2. Patient Family records can be recorded where all members of one family can be added in the system.

We can also add Pediatric Symptoms checklist if any and Prescriptions related to the Appointments

3. Appointments can be created for the patients.

We can also add Pediatric Symptoms checklist if any and Prescriptions related to the Appointments.

4. Inpatient details can also be handled in this system. We can also capture information like Diet and Nutrition of the patient , care plan and bed transfer details.

5. Intensive Care Unit Details of patient like GCS, ECG and APACHE ll Score can be capture

6. Newborn record can be maintained here.

Pediatric Symptoms Checklist can be maintain for patient

7. Imaging requests can be created and results are added in the systems. Result images can be attached.

8. Archives are created where the details of the instruments borrowed is maintained.

9. Surgeries details can be maintain for patients

10. Lab test request and result can be maintained here.

11. Invoices for the services provided in the hospital can be created. They have direct effect in the balance sheet.

12. We can generate invoice for services like Lab Test, Appointments, Prescriptions.

13. We have interface from where we can print different report and analysed data which is helpful in Efficient Decision making and Management of the hospital

A) Medicament List

B) Appointment Evaluation per doctor report

C) Appointment Evaluation per doctor report

D) Appointment evaluation per medical service

E) Appointment evaluation per prescription

F) Appointment search

Tuesday, December 15, 2015

Odoo 9 Docker Deployment

Pragmatic has made the Odoo Docker deployment approach feasible for all implementation in a 4 step approach.
  1. Create Docker Container
  2. Create Odoo dockerfile with all necessary packages and updates.
  3. Push to Docker Hub
  4. Pull on the Client Docker Machine (Client System).

Developer Machine/ Production machine - to have docker installed

Basic Image to created there are two ways to do this
  1. a.Pull an existing OS/ Base App/ Development environment from Docker Hub
  2. b.Create own Docker Image using Dockerfile

Create Container

Run containers: docker run
Build images manually: docker commit
Use Dockerfiles for building images
Now Access Odoo from Container at local host :8069! Pragmatic Odoo from Docker is Ready!!!


  • Update your apt sources
  • Install the kernel packages required by Ubuntu Version for aufs storage driver
Optional configurations
  • Create a docker group - docker daemon binds to a Unix socket instead of a TCP port.
  • Adjust memory and swap accounting - prevent unwanted Warning messages from OS Kernel, enable memory and swap accounting on your system.
  • Enable UFW forwarding - Docker to run when UFW (Uncomplicated Firewall) is enabled; where default set of rules denies all incoming traffic, make forwarding policy with consideration to TLS.
  • Configure a DNS server for use by Docker - To avoid the DNS resolver Warning, you can specify a DNS server for use by Docker containers.
  • Configure Docker to start on boot - installation automatically configures upstart to start the docker daemon on boot until 14.04, the later versions need to have autostart explicitly given

How to use Pragmatic Odoo 9 Docker Image

This image requires a running PostgreSQL server.

Start a PostgreSQL server

$ docker run -d -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=odoo --name db postgres

This command will pull the official postgres image and run its container so you have your postgres server up and running, that we will use to connect with odoo.

Start an Odoo instance

$ docker run -p 8069:8069 --name odoo --link db:db -t pragtechsoft/odoo

This command will pull the pragmatic odoo image from docker hub and run its container for you, which means now you have your odoo server running on your machine. The alias of the container running Postgres must be db for Odoo to be able to connect to the Postgres server.

How to access my odoo

Once you run pragtechsoft/odoo container using the above command, now you can access your odoo using the link http://localhost:8069 in browser.

Stop and restart an Odoo instance

$ docker stop odoo
$ docker start -a odoo
Stop and restart a PostgreSQL server When a PostgreSQL server is restarted, the Odoo instances linked to that server must be restarted as well because the server address has changed and the link is thus broken.
Restarting a PostgreSQL server does not affect the created databases.

Run Odoo with a custom configuration

The default configuration file for the server (located at /etc/openerp-server.conf) can be overriden at startup using volumes. Suppose you have a custom configuration at /path/to/config/openerp-server.conf, then
$ docker run -v /path/to/config:/etc/odoo -p --name odoo --link db:db -t pragtechsoft/odoo
Please use this configuration template to write your custom configuration as we already set some arguments for running Odoo inside a Docker container.
You can also directly specify Odoo arguments inline. Those arguments must be given after the keyword -- in the command-line, as follows
$ docker run -p 8069:8069 --name odoo --link db:db -t pragtechsoft/odoo -- --db-filter=odoo_db_.*

Mount custom addons

You can mount your own Odoo addons within the Odoo container, at /mnt/extra-addons
$ docker run -v /path/to/addons:/mnt/extra-addons -p --name odoo --link db:db -t pragtechsoft/odoo

Run multiple Odoo instances

$ docker run -p 8070:8069 --name odoo2 --link db:db -t pragtechsoft/odoo $ docker run -p 8071:8069 --name odoo3 --link db:db -t pragtechsoft/odoo

Answers to some Quick FAQs

How to upgrade this image

Suppose you created a database from an Odoo instance named old-odoo, and you want to access this database from a new Odoo instance named new-odoo, e.g. because you've just downloaded a newer Odoo image.
By default, Odoo uses a filestore (located at /opt/odoo/.local/share/Odoo/filestore/) for attachments. You should restore this filestore in your new Odoo instance by running
$ docker run --volumes-from old-odoo -p 8070:8069 --name new-odoo --link db:db -t pragtechsoft/odoo

How to get Support?

If you are facing any problems with this image and need professional support, you can contact us at sales at For more information about us visit

Is Pragmatic Docker image public?

Yes the Pragmatic Docker images are public and easily accessible at

Is this instance configured for Httpworkers and Odoo Performance Optimization?

​No, not configured for httpworkers as httpworkers depends on number of cpu of system, contact sales at, we can optimize the performance of Odoo for your system.

The postgres instance that is used; Is it official instance?

Yes, Pragmatic has used official postgres image, Postgres V 9.5. This image includes EXPOSE 5432 (the postgres port), so standard container linking will make it automatically available to the linked containers.​ The Pragmatic Docker for postgres always searches for the latest image of Postgre and updates it.

Monday, December 14, 2015

Odoo 9 Xero Integration

Business organisations uses different software specific to different department activities eg : Xero Accounting system is used to keep online records of Invoices and its payment. Pragmatic Techsoft Pvt. Ltd. developed new module to sync. Invoices and payments between Odoo 9 and Xero Accounting system. This synchronisation can be triggered on scheduled frequency. This modules keeps validation on the accounts to be hit for Income/ Sales Account also for Payments. Similarly, Invoices gets reconciled against payments imported from Xero.

What data can sync with Odoo and Xero?

Odoo : Contact (Customers/Suppliers),Product,Invoices(Payable/Recivables)
Xero : Payment Confirmation


There are some configurations and packaged need to be installed to use this integration module.

Generate Public/ Private Key :

Step 1: generates a private key
  • openssl req new x509 key privatekey.pem out publickey.cer days 1825
Step 3: Export your x509 certificate and private key to a pfx file. If your chosen wrapper library
  • uses the .pem file to sign requests then this step is not required.
  • openssl pkcs12 export out public_privatekey.pfx inkey privatekey.pem in publickey.cer

Required packages to Install :

  • Step 1: Install XeroAPI from
  • Step 2: Install python M2Crypto.
  • Step 3: Install oauth2.

Xero Configuration

  • Step 1: Create Oraganization in Xero.
  • Step 2: Select Accounting standard in XeroAPIx.x
  • Step 3: Create Chart Of Account
  • Note : Code given to Accounts created in Odoo and Xero should same.

  • Step 4: Create a link between current organization in Xero to Odoo.By Opening the Xero on developer mode by following path “” Note : Select .cer file in public key certificate

Browse the “jumpflex_privatekey.pem” ie. Private key file and save it will generate Consumer Key And Consumer Secret key.
Further this Key have to Update in Odoo.

Odoo Configuration :

  • Step 1 : Install Sales, Purchase and Accounting Module
  • Step 2 : Install additional module develop for integration between Xero and Odoo ie. Xero Accounting
  • Step 3 : Update Consumer Key from Xero and Update in Odoo i.e. in following path Settings>>Companies
  • Step 4 : Open company form and configuration tab and set the consumer key and consumer secret number from Xero and Update in Odoo.
  • Step 5 : Enter the private key file path i.e .pem file path in “Path To Privat Key File” filed and save.
  • Step 6 : Save the Company Setting Form.

Transaction :

  • Step 1 : Create Customer,Supplier and Product in Odoo.
  • Step 2 : Export the created Customer,Product to Xero. By export setting form created in Odoo with name Import/Export form by following path i.e. Accounting >> Xero Accounting >>Import Export.
  • Step 3 : User can click on three button's i.e. Export Partner, Export Product and Export Invoice to export the contacts(Supplier/Customer),Product and Invoices(Receivable/Payable) respectively. And to import the payment done in the Xero, user can click on the import Invoice button.

Import/Export from :

Exported Contact's :

Exported Product's :

Note : Item Code is define as internal refrence in Product Master of Odoo.

Exported Invoice's :
Import Payment :
  • Step 1 : Complete the process of payment in Xero.
  • Step 2 : Open the Export Import form in Odoo form by following path i.e. Accounting >> Xero Accounting >> Import Export.
  • Step 3 : Click on the Import Invoice button as shown in above screen of Import/Export form.Note : It will import all the payment detail of Xero in Odoo and create journal entries.

Thursday, October 29, 2015

Odoo 8 - CCAvenue Integration

Pragmatic Techsoft has developed “Odoo 8 – CCAvenue” integration which is fast moving into the online transaction payment gateways. The deployment is easy and meeting all requirements for card payments, online payments. It works with Sale Order as well as Website module of Odoo 8 where online payment acquirers can be configured as CCAvenue gateway
  1. Configuration of CCAvenue settings
  2. Sale Order processing
  3. Accepting the payment in CCAvenue
  4. Updating the payment received in Odoo

1.Configure CCAvenue

Install the payment_ccavenue module.
Goto Settings-->Configuration-->Accounting

Click on Manage Payments Using CCAvenue.
Click on “Configure payment acquiring methods”
Configure your CCAvenue Account.
Put your Merchant Key , Access Code and Working key provided by CCAvenue.
Set the Associated Journal to create payment using CCAvenue.

2.Processing Sales Order

Go to Sales-->Sales-->Sale Order
- Create New Sale Order and Confirm it.
- You will see CCAvenue button in Online Payment Options.
- To Pay with CCAvenue Click on CCAvenue Button then it will redirect you to CCAvenue Website.

3.Accepting Payment in CCAvenue

- Login to your CCAvenue Account.
- Select Payment Method to Pay and pay.
After successful payment you will be redirected back to Odoo.

4.Payments update in Odoo

After successful payment one payment record is created in Odoo against the customer. In the reference you can see the CCAvenue transaction ID.
One transaction record is created in Payment Transactions where you can see all transaction related information.
Go to Settings-->Payments --> Payment Transactions

Odoo OpenERP - Loan Management

As name suggest, loan management module is blend of all important functionalities like manage different type of loan, different calculation mode, borrowed & issued loans, loans with installment repayments with accounting entry, annuity repayment, possibilities for entering special repayments and many more options with it.

Features of Pragmatic Loan Management are
  1. System helps you to create customized loan period.
  2. You can categorize type of loan and manage it.
  3. Loan types can be defined based on its calculation method(Flat and Reducing).
  4. System allow you to compute installment based on amount, intrest rate and period run time.
  5. System maintains all interest versions which company wants to define.
  6. It allows managing type of proof that company accepts and keep track.
  7. You can keep track of all installment received from a customer with accounting entry.

Loan period interface

Loan type interface

Loan Type Version

Run Time Interface to compute EMI (Reducing)


Loan Form