Sponsored Development: OB POS Integration
Contents
Forum thread with news
https://sourceforge.net/forum/forum.php?thread_id=3162659&forum_id=611158
Current status
Stagnated because of technical issues
Project Team
Coordinator
Functional Specs
- Joel Stangeland
- Carlos Ruiz
Developers
- Carlos Ruiz
- Trifon Trifonov
- Redhuan D. Oon via ActiveMQ approach. (PDF document)
Testers
Documenter
Sponsors
- SYSNOVA, Bangladesh (for ActiveMQ approach done by Redhuan D. Oon)
Requirements
Scope: Integration of Openbravo POS 2.20 stable with Adempiere 3.4.2s via webservices
Detailed Scope: To support integration Openbravo POS 2.20 implement two buttons in the interface:
- Synchronize POS
This button is intended to be executed from the POS, connect to ERP Webservices and obtain updated information about products and customers.
- Synchronize Orders
This button is intended to be executed from the POS and it will send information to the ERP Webservices with the orders not uploaded.
The scope of this work is:
- to create the needed webservices in adempiere to send information about products and customers interpreted by Openbravo POS
- to create the needed webservice in adempiere to receive information about sales orders sent by Openbravo POS
The scope doesn't include modifications to the information sent or received by Openbravo POS. It includes any modification required to make Openbravo POS communicate with Adempiere Web Services (so, at the end probably we'll have a modified Openbravo POS version but the modifications will be JUST for the webservices integration)
I'm planning to allow two mechanisms of integration of sales orders:
- Batch:
With this mechanism the sales orders will be uploaded to the I_Order stage table in Adempiere. This will be very quick and straight, but it will require further processing in Adempiere, importing the orders, and solving the problems found on the import process.
- Immediate
With this mechanism the sales order will be created immediately in Adempiere (no stage table). If a business partner or product doesn't exist in Adempiere, the web service will try to create them with some defaults, otherwise it will raise an exception and the complete synchronization process must rollback.
Technically the detailed work is: - Create four Adempiere webservices:
* ExternalSales.getProductsPlusCatalog * ExternalSales.uploadOrders * ExternalSales.getProductsCatalog * WebService.getCustomers
- Make required modifications to Openbravo POS 2.20 to make it work with Adempiere Webservices, just technical modifications, not changing the information sent or received.
Cost Estimated:
All the work contributed back to Adempiere project in branches/3E_WebServices totally open source. The estimated cost of the solution is US$2.800,oo
Future Tasks:
Openbravo is changing a lot the integration mechanism in version 2.30 (beta) In future we're going to need some extra work (not covered on this scope) to review again the integration with new stable versions of Openbravo POS.
See Also
- Adempiere Web Services
- Integration finally done at Red1's forum. (Forum describes approach and features. For implementation guide please download PDF).