Skip to main content

Celonis Product Documentation

SAP Ariba Connection

New data integration content available

You're currently viewing a data integration topic that has been replaced and will eventually be removed from our documentation.

For the latest data integration content, see: Data Integration.


Any references to third-party products or services do not constitute Celonis Product Documentation nor do they create any contractual obligations. This material is for informational purposes only and is subject to change without notice.

Celonis does not warrant the availability, accuracy, reliability, completeness, or usefulness of any information regarding the subject of third-party services or systems.

Here's an overview of setting up the SAP Ariba connection in Celonis Platform:

  • Why can extractions from SAP Ariba take longer than extractions from other source systems? The Procurement and Analytical Reporting APIs only allow for a maximum of 40 jobs submitted per day before the API limit is reached. One job equals one month of data for one object/ table. Therefore, the duration of the extraction depends on the number of objects to be extracted and on the chosen time frame. For example, in the case of using the Procurement API, extracting all seven objects for one year takes a minimum of 7 x 12 = 84 jobs, i.e., at least three days to extract. We have implemented a retry mechanism once the API limit is reached. This allows sending requests automatically at a later point in time without the extraction canceling but running through successfully.

  • How does Celonis ensure that extractions do not have a negative impact on the productive SAP Ariba system performance?SAP Ariba ensures that by enforcing API limits that Celonis extractions are bound to.

  • How is SAP Ariba data secured during extraction?Firstly, Celonis performs read-only operations on your SAP Ariba data (updates, deletions, etc. are not performed).

    Secondly, data transfer from SAP Ariba to Celonis is secured through HTTPS, which allows for an encrypted information exchange.

  • Where and how is currency conversion done for SAP Ariba?The currency conversion is done in Ariba. For example the extracted tables from the Procurement API contain columns like TotalCost_AmountInReportingCurrency and TotalCost_AmountInBaseCurrency. That means we are extracting the converted values from Ariba and follow the configurations done in the Ariba system.

  • Where can I find the audit change log data for SAP Ariba?Several relevant objects and fields are not available via the Ariba APIs. One example is the audit log data for Procurement. In general, we extract every table available for each endpoint.

  • What can I do if I’m getting an Internal server error when checking the job status, more specifically the following error message: Received a non-200 status code : 500 with body : {"code":"internalServerError","message":"Internal Server Error."} During the extraction we need to query the job status to track the progress. There are several fields, presumably of type “master data objects” which cause an internal server error when checking the job status. This will result in a failed extraction.

    We have implemented a column configuration capability for the extraction. This allows you to deselect columns that cause this behavior. When deselected, the extraction can be run successfully.

    There is currently no clear indication which fields are of type ‘master data objects’, but from our experience deselecting all fields related to companyCode and attachment helps to avoid this error.

  • What can I do if the extraction fails with an Invalid response format error?There are several fields in the view templates that produce an invalid .json response. This means that the extraction fails. Therefore, we have implemented the option to ignore invalid records from the response. This will allows you to successfully run the extraction without failure, but the extracted data will be incomplete data. This option can be defined in the table configuration.

  • Are the objects listed all objects available for each table?By default the connector uses custom view templates, which means that all objects accessible via the API are listed and extracted. For more information about custom vs. standard view templates.

  • What time filters can be used to limit the full load or run a delta load?There are two types of time filters that can be used depending on full or delta load:

    1. Creation filter: field used in the extraction is TimeCreated (CreateDate in the configuration). Can be used for full loads.

    2. Change filter: field used in the extraction is TimeUpdated (LastModified in the configuration). Can be used for delta loads.