Sharing knowledge to make world better place to live!
Why Integrated Business Application so important?
There are lots of application suite which provides the all-in-one package that can help business to avoid using multiple applications/software.
The main aim of Integrated Business Application is to provide the one-stop solution, save lots of money, make data synchronised and centrally accessible through various applications (Sales, CRM, Purchase, Warehouse, Accounting, Project Management, Human Resources, e-commerce, website etc) without going through the complex integration process.
One of the best examples is Odoo. Odoo provides a lot of integrated applications.
Sale, CRM, Invoicing, Accounting, Purchase, Inventory, Project management, Help Desk, Human Resource (Recruitment, Employees, Expenses, Appraisal, Fleet, Leaves), Manufacturing (MRP, PLM, Maintenance, Quality), Point-of-sale (Shop, Restaurant, Tools), E-commerce, Website
Odoo has been designed in such a way that all the master data (customer, supplier, products employees etc) are synchronised, integrated, centrally available to access automatically with all the applications (Sale, CRM, purchase, inventory, project management, human resources, e-commerce etc).
Beyond the integrated business Application:
The nature and scale of the business activities sometimes require using more than one software applications which may build on different language/architecture/framework that needs to be communicated with each other to achieve final desired goal.
Why does two different software need to speak with each other?
Sometimes, the unique value proposition of the software application is hard to replace. Even by applying those functionalities to the software product currently business is using.
In this case, IT setup demands to establish the connection between two different software applications to make sure data are synced and accessible in real time. And most importantly, take advantage of valuable functionalities of each of the software application.
Why could Odoo be explored to speak to other software to get advantages beyond integrated business application?
If you look the possibilities in Odoo to be used for your business.
You do not want to disturb your current IT setup but gradually move to Odoo for most of the features.
You are using the specifically designed software for your business and you don’t want to replace that with Odoo but you see lots of features in Odoo those can add value in your business in long term.
Odoo can help here by sending the request to other software to communicate and respond them with the processed information.
Such processes are called web services. We can write such web services in Odoo to established end to end communication between two differently designed software.
At the same way, other application may require to write logic in the web services to process response getting from Odoo, and hence establish the full communication path.
How can web services be written in Odoo?
Web services in the Odoo is a kind of python method in Odoo which should be written (one of the way) in the following:
@http.route('/getcustomers, type='json', auth='public', methods=['POST'], website=True)
def method_to_getcustomers(self, **args):
# Loic to get customers from Odoo
http.route is the decorator that you need to use for capturing the request sending from the other software application. Odoo will process according to the logic written in the ‘method_to_getcustomers’ method and written the response proper outcome or error.
Click https://www.odoo.com/documentation/10.0/api_integration.html for more reference to investigate on this subject.
There are lots of tools available to test Odoo web services without writing web services on the other software. These tools help to write and test web services independently in one software and integrate later to establish communication with each other.