Skip to main content

Dolibarr Data Source

The Dolibarr connector enables you to ingest business data — including invoices, sales orders, products, third parties, proposals, and payments — from your Dolibarr ERP/CRM instance into Nexla. Follow the instructions below to create a new data flow that ingests data from a Dolibarr source in Nexla.
dolibarr_api.png

Dolibarr

Create a New Data Flow

  1. To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Then, select the desired flow type from the list, and click the Create button.

  2. Select the Dolibarr connector tile from the list of available connectors. Then, select the credential that will be used to connect to the Dolibarr instance, and click Next; or, create a new Dolibarr credential for use in this flow.

  3. In Nexla, Dolibarr data sources can be created using pre-built endpoint templates, which expedite source setup for common Dolibarr endpoints. Each template is designed specifically for the corresponding Dolibarr API endpoint, making source configuration easy and efficient.
    • To configure this source using a template, follow the instructions in Configure Using a Template.

    Dolibarr sources can also be configured manually, allowing you to ingest data from Dolibarr endpoints not included in the pre-built templates or apply further customizations to exactly suit your needs.
    • To configure this source manually, follow the instructions in Configure Manually.

Configure Using a Template

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Dolibarr endpoints. Each template is designed specifically for the corresponding Dolibarr API endpoint, making data source setup easy and efficient.

Endpoint Settings

  • Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below. Click on an endpoint to see more information about it and how to configure your data source for this endpoint.

Get Invoice Details

Retrieves all properties and details of a single customer invoice by its numeric ID. Use this endpoint when you need the full record for a specific invoice — for example, to synchronize invoice status into a downstream system or to audit a particular transaction.

  • Enter the numeric Dolibarr invoice ID in the Id field. The invoice ID is the internal Dolibarr identifier assigned to each invoice when it is created. You can find invoice IDs by first running the List Customer Invoices endpoint or by viewing invoice records directly in your Dolibarr instance under Billing/Payment > Customer Invoices.

The response includes all invoice fields: reference, date, status, line items, amounts (excluding tax, tax, total), linked third party, and payment information. For the complete Dolibarr invoice object schema, see the Dolibarr REST API documentation.

Get Sales Order Details

Retrieves all properties and details of a single customer sales order by its numeric ID. Use this endpoint when you need the full record for a specific order — for example, to track order fulfillment status in an external system.

  • Enter the numeric Dolibarr order ID in the Id field. You can find order IDs by first running the List all customer sales orders endpoint or by viewing orders in your Dolibarr instance under Commercial > Orders > Customers.

The response includes the full order object: reference, date, status, order lines, linked third party, and delivery information.

Get Product or Service Details

Retrieves all properties and details of a specific product or service by its numeric ID, with an option to include current stock/inventory data. Use this endpoint when you need the complete record for a single catalog item, including pricing and optional warehouse stock levels.

  • Enter the numeric Dolibarr product ID in the Id field. Product IDs can be found by first running the List Products endpoint or by viewing the product catalog in your Dolibarr instance under Products/Services > Products.

  • Optionally, enter 1 in the Include Stock Data field to include inventory levels and warehouse details in the response. Leave this field empty or set it to 0 to exclude stock information.

Stock data is only returned if the Stock Management module is enabled in your Dolibarr instance. If the module is not active, the field will be ignored.

Get Third Party Details

Retrieves all properties and details of a specific third party — which may be a customer, supplier, or prospect — by its numeric ID. Use this endpoint when you need the full contact and business record for a specific company or individual in Dolibarr.

  • Enter the numeric Dolibarr third-party ID in the Id field. Third-party IDs can be found by first running the List all third parties endpoint or by viewing records in your Dolibarr instance under Third-parties > Customers, Suppliers, or Prospects.

The response includes all third-party fields: name, address, contact details, customer/supplier flags, VAT number, and any custom attributes configured in your Dolibarr instance.

List Customer Invoice Payments

Retrieves a list of all payments recorded against a specific customer invoice. Use this endpoint to reconcile payment activity for a given invoice or to export payment history for financial reporting.

  • Enter the numeric Dolibarr invoice ID in the Invoice ID field. This field is required. The invoice ID is the internal identifier assigned to each invoice when it is created. You can find invoice IDs by first running the List Customer Invoices endpoint.

Each payment record in the response includes the payment date, amount, payment method, and reference number. If no payments have been recorded for the invoice, an empty list is returned.

List Customer Invoices

Returns a paginated list of all customer invoices in your Dolibarr system. Use this endpoint to export invoice data in bulk — for example, to load invoices into a data warehouse, reporting tool, or financial analytics platform. Nexla automatically handles pagination, fetching all available pages until no more records are returned.

  • No additional parameters are required. Nexla will automatically paginate through the full invoice list using offset-based pagination with a page size of 100 records per request.

Each invoice record in the response includes the invoice reference, date, status, total amounts, linked third party, and line item summary. For large Dolibarr instances, the initial full export may take several minutes as Nexla fetches all pages.

List all customer sales orders

Returns a paginated list of all customer sales orders with optional filtering and sorting. Use this endpoint to export order data in bulk or to retrieve orders filtered by customer or other criteria. Nexla automatically handles pagination.

  • Optionally, configure the following parameters to filter or sort the results:

    • Sort Field: Enter the name of the field to sort results by — for example, id, ref, or date_creation.
    • Sort Order: Enter ASC for ascending order or DESC for descending order.
    • Page Size: Enter the maximum number of orders to return per page. Defaults to 100 if not specified.
    • Page Number: Enter the page number to start from (pagination starts at 0). Nexla manages this automatically during ingestion.
    • Third-Party IDs: Enter a comma-separated list of third-party IDs to filter results to orders belonging to specific customers (for example, 12,45,78).
    • SQL Filters: Enter custom SQL WHERE clause conditions for advanced filtering (for example, t.fk_statut=1 to return only validated orders). This field uses Dolibarr's internal SQL filter syntax.

All filter parameters are optional. If left empty, all orders are returned. The SQL Filters field provides advanced filtering using Dolibarr's internal database field names — refer to the Dolibarr REST API documentation for field name references.

List Products

Returns a paginated list of all products in the Dolibarr product catalog. Use this endpoint to export your product and service catalog in bulk — for example, to synchronize product data with an e-commerce platform, PIM system, or analytics tool. Nexla automatically handles pagination.

  • No additional parameters are required. Nexla will automatically paginate through the full product list using offset-based pagination with a page size of 100 records per request.

Each product record includes the reference, label, description, pricing, VAT rate, product type (product vs. service), and stock information if available. Both products and services are returned in the same list — filter by the type field (0 = product, 1 = service) in downstream transformations if needed.

List all commercial proposals and quotes

Returns a paginated list of all commercial proposals (quotes) with optional filtering and sorting. Use this endpoint to export proposal data in bulk or to track quote pipeline activity. Nexla automatically handles pagination.

  • Optionally, configure the following parameters to filter or sort the results:

    • Sort Field: Enter the name of the field to sort results by — for example, id, ref, or date_creation.
    • Sort Order: Enter ASC for ascending order or DESC for descending order.
    • Page Size: Enter the maximum number of proposals to return per page. Defaults to 100 if not specified.
    • Page Number: Enter the page number to start from (pagination starts at 1 for this endpoint). Nexla manages this automatically during ingestion.
    • Third-Party IDs: Enter a comma-separated list of third-party IDs to filter results to proposals belonging to specific customers.
    • SQL Filters: Enter custom SQL WHERE clause conditions for advanced filtering using Dolibarr's internal SQL filter syntax.

All filter parameters are optional. If left empty, all proposals are returned regardless of status or customer. Each proposal record includes the reference, creation date, status, linked third party, validity date, and line item details.

List all third parties

Returns a paginated list of all third parties — customers, suppliers, and prospects — with optional filtering and sorting. Use this endpoint to export your Dolibarr contact database in bulk for CRM synchronization, marketing lists, or master data management. Nexla automatically handles pagination.

  • Optionally, configure the following parameters to filter or sort the results:

    • Sort Field: Enter the name of the field to sort results by — for example, id, name, or datecreation.
    • Sort Order: Enter ASC for ascending order or DESC for descending order.
    • Mode: Enter a filter to restrict results by third-party type. Accepted values are customer, supplier, or prospect. Leave empty to return all types.
    • SQL Filters: Enter custom SQL WHERE clause conditions for advanced filtering using Dolibarr's internal SQL filter syntax.

Each third-party record includes the name, address, contact details, customer/supplier/prospect flags, VAT number, and any extra attributes configured in your Dolibarr instance. Use the Mode parameter to retrieve only customers, only suppliers, or only prospects when you do not need all types.

Endpoint Testing

Once the selected endpoint template has been configured, Nexla can retrieve a sample of the data that will be fetched according to the current settings. This allows users to verify that the source is configured correctly before saving.

  • To test the current endpoint configuration, click the Test button to the right of the endpoint selection menu. Sample data will be fetched & displayed in the Endpoint Test Result panel on the right.

  • If the sample data is not as expected, review the selected endpoint and associated settings, and make any necessary adjustments. Then, click the Test button again, and check the sample data to ensure that the correct information is displayed.

Configure Manually

Dolibarr data sources can be manually configured to ingest data from any valid Dolibarr REST API endpoint. Manual configuration provides maximum flexibility for accessing endpoints not covered by pre-built templates — for example, contacts, projects, expenses, purchase orders, or any other Dolibarr module that exposes a REST endpoint.

With manual configuration, you can also create more complex Dolibarr sources, such as sources that use chained API calls to fetch data from multiple endpoints or sources that require custom request parameters.

API Method

  1. To manually configure this source, select the Advanced tab at the top of the configuration screen.

  2. Select the API method that will be used for calls to the Dolibarr API from the Method pulldown menu. The Dolibarr REST API supports the following methods for data retrieval:

    • GET: For retrieving data from any Dolibarr endpoint (most common for data sources)
    • POST: For endpoints that require a request body to specify query parameters

API Endpoint URL

  1. Enter the URL of the Dolibarr API endpoint from which this source will fetch data in the Set API URL field. Dolibarr REST API endpoints follow the pattern https://your-dolibarr-domain.com/api/index.php/{resource} — for example:
    • https://your-dolibarr-domain.com/api/index.php/invoices — list all invoices
    • https://your-dolibarr-domain.com/api/index.php/orders — list all sales orders
    • https://your-dolibarr-domain.com/api/index.php/thirdparties — list all third parties
    • https://your-dolibarr-domain.com/api/index.php/contacts — list all contacts
    • https://your-dolibarr-domain.com/api/index.php/projects — list all projects

The full list of available Dolibarr REST API endpoints is available in the interactive API explorer at https://your-dolibarr-domain.com/api/index.php/explorer. You can also refer to the Dolibarr REST API Wiki for endpoint documentation.

Date/Time Macros (API URL)

Optional

Optionally, the API URL can be customized using macros—all macros added to the API URL will be converted into values when Nexla executes the API call. Macros are dynamic placeholders that allow you to create flexible API endpoints that can adapt to different time periods or data requirements.

Macros are particularly useful for Dolibarr endpoints that accept date range query parameters, such as filtering invoices or orders by creation date.

  1. To add a macro, type { at the appropriate position in the API URL (within the Set API URL field), and select the desired macro from the dropdown list.

    • {now} – The current datetime
    • {now-1} – The datetime one time unit before the current datetime
    • {now+1} – The datetime one time unit after the current datetime
    • custom – Datetime macros can reference any number of time units before or after the current datetime—for example, enter (now-4) to indicate the datetime four time units before the current datetime
  2. Select the format that will be applied to datetime macros from the Date Format for Date/Time Macro pulldown menu. This format will be applied to the base datetime value of the macro—i.e., the value of {now} in {now-1}.

  3. Select the datetime unit that will be used to perform mathematical operations in the included macro(s) from the Time Unit for Operations pulldown menu—for example, for the macro {now-1}, when Day is selected, {now-1} will be converted to the datetime one day before the current datetime.

Lookup-Based Macros (API URL)

Optional

Column values from existing lookups can also be included as macros in the API URL. Lookup-based macros allow you to reference data from previously configured data sources or lookups, enabling dynamic API endpoints that can adapt based on existing data.

Lookup-based macros are useful when you need to create Dolibarr API endpoints that reference specific IDs or values from other data sources — for example, iterating over a list of third-party IDs to fetch detailed records for each.

  1. To include a lookup column value macro, select the relevant lookup from the Add Lookups to Supported Macros pulldown menu.

  2. Type { at the appropriate position in the API URL, and select the lookup column-based macro from the dropdown list. Lookup-based macros are automatically populated into the macro list when a lookup is selected in the Add Lookups to Supported Macros pulldown menu.

Path to Data

Optional

If only a subset of the data returned by the Dolibarr API endpoint is needed, you can designate the relevant part of the response by specifying the path to the data within the response. This is particularly useful when API responses contain metadata, pagination information, or other data that you don't need for your analysis.

For example, some Dolibarr list endpoints return an array of records wrapped in a data property, while others return a top-level array. By entering the correct path to the data, you can configure Nexla to treat each element of the returned array as a record.

Path to Data is essential when Dolibarr API responses have nested structures. Without specifying the correct path, Nexla might not be able to properly parse and organize your data into usable records.

  • To specify which data should be treated as relevant in responses from this source, enter the path to the relevant data in the Set Path to Data in Response field.

    • For responses in JSON format enter the JSON path that points to the object or array that should be treated as relevant data. JSON paths use dot notation (e.g., $.data[*] to access an array within a data property, or $[*] for a top-level array).

    • For responses in XML format, enter the XPath that points to the object/array containing relevant data.

    Path to Data Example:

    If the Dolibarr API response returns a top-level JSON array of invoice objects, enter $[*] as the path. If the response wraps records in a data property, enter $.data[*].

Autogenerate Path Suggestions

Nexla can also autogenerate data path suggestions based on the response from the API endpoint. These suggested paths can be used as-is or modified to exactly suit your needs.

  • To use this feature, click the Test button next to the Set API URL field to fetch a sample response from the API endpoint. Suggested data paths generated based on the content & format of the response will be displayed in the Suggestions box below the Set Path to Data in Response field.

  • Click on a suggestion to automatically populate the Set Path to Data in Response field with the corresponding path. The populated path can be modified directly within the field if further customization is needed.

    PathSuggestions.png

Metadata

If metadata is included in the response but is located outside of the defined path to relevant data, you can configure Nexla to include this data as common metadata in each record. This is useful when you want to preserve important contextual information that applies to all records but isn't part of the main data array.

Metadata paths are particularly useful for preserving Dolibarr API response context like request IDs, timestamps, or summary statistics that apply to all records in the response.

  • To specify the location of metadata that should be included with each record, enter the path to the relevant metadata in the Path to Metadata in Response field.

    • For responses in JSON format, enter the JSON path to the object or array that contains the metadata, and for responses in XML format, enter the XPath.

Request Headers

Optional
  • If Nexla should include any additional request headers in API calls to this source, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (e.g., header1:value1,header2:value2). Additional headers may be required for API versioning or content type specifications.

    You do not need to include the DOLAPIKEY authentication header — it is handled automatically by Nexla based on your Dolibarr credential configuration.

Endpoint Testing

After configuring all settings for the selected endpoint, Nexla can retrieve a sample of the data that will be fetched according to the current configuration. This allows users to verify that the source is configured correctly before saving.

  • To test the current endpoint configuration, click the Test button to the right of the endpoint selection menu. Sample data will be fetched & displayed in the Endpoint Test Result panel on the right.

  • If the sample data is not as expected, review the selected endpoint and associated settings, and make any necessary adjustments. Then, click the Test button again, and check the sample data to ensure that the correct information is displayed.

Save & Activate the Source

  1. Once all of the relevant steps in the above sections have been completed, click the Create button in the upper right corner of the screen to save and create the new Dolibarr data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.