Interfaces from foreign systems toward Dolibarr

From Dolibarr Open Source ERP CRM Wiki

Return to developer
documentation index

File Doc dev.png

There are 3 methods to allow an external application to insert data into Dolibarr (For information on the other direction and allow Dolibarr to insert datas into external systems, see page Interfaces Dolibarr toward foreign systems).

To act on Dolibarr from external system, there is 3 possible solutions:


Insert data directly into database

This solution requires knowledge of the physical model and the allowed values of the fields. It is risky and should be rewritten if modified format based Dolibarr.

Advantages: Can be made in any language.

Disadvantage: This technique is highly discouraged. At the first upgrade of Dolibarr version, this method will not work and will need to be rewritten. Moreover, using this method, you override the business rules validations, which creates a risk of corrupting data. This method also needs to know the basis Dolibarr.

Using PHP classes

It is possible to use business objects Dolibarr (xxx.class.php files). Each of these files provides a class of methods for:

  • reading of an entity (the fetch method)
  • insertion into database of an entity (the create method or insert)
  • updating an entity (the update method)
  • deletion of an entity (the delete method) if applicable to the object
  • various other methods specific to the entity manipulated.

This technique is better than first one.

Advantages: It offers the advantage of passing through layers of data validation business. The interface code should normally not be rewritten when upgrading version Dolibarr.

Disadvantages: It is usable in PHP only. Your code must be stored on the same server as the Dolibarr files.

See page Business Objects.

Web services

See Module Web Services.

See also

Personal tools
  • Ask to to request an account to contribute to this documentation
  • Log in
In other languages
No translation in Deutsch.
No translation in Italian.
No translation in Greek.
No translation in &lt;multilanguagemanager_cn&gt;.

Social networks
Follow us on Google+ Follow us on Facebook Follow us on LinkedIn Follow us on Twitter