IBM App Connect now supports integration with SAP Concur, allowing you to develop flows to sync your other applications with SAP Concur. SAP Concur is a cloud-based service that provides travel, expense, and invoice solutions.
What should I consider first?
To integrate with SAP Concur, you must connect App Connect to SAP Concur by specifying the credentials for your SAP Concur account. You can connect to SAP Concur either from the Applications tab on the App Connect Catalog page, or when you add an SAP Concur action to your flow. When you click Connect, you are prompted for your user name and password.
Note: As stated in SAP Concur’s documentation, you need to have a contract to configure web services:
Documentation for configuring Web Services
To illustrate the integration with SAP Concur, we’ll describe a scenario that uses an event-driven flow to add an expense entry to a given report in SAP Concur and to generate a message in Slack when a new expense is added to a Google Sheets worksheet. It’s assumed that you’ve already connected App Connect to your Google Sheets, SAP Concur, and Slack accounts.
You’re a payroll professional working for a company that has some legacy expense management systems. Your company is moving to a software-as-a-service (SaaS) expense system that’s easier to manage. During the migration, new expenses for employees will be added to Google Sheets. You want these new expenses to be added to SAP Concur for the relevant employee, and you want to be alerted by a Slack message when an expense entry has been added to SAP Concur.
Note: Some of the information that is mandatory when creating an expense entry in SAP Concur needs to be retrieved from SAP Concur, so the flow includes actions to retrieve the required information.
- To begin, select Google Sheets > Rows > New complete row appended as the event that is to trigger the event-driven flow. And then select the Google Sheets spreadsheet and worksheet that contains expense entries. This means that when a complete row is added to the specified spreadsheet, the flow will transfer that data to SAP Concur.
- Add the SAP Concur > Expense group configurations > Retrieve all expense group configurations action. This action will retrieve information about expense types and payment types that is needed when creating an expense entry.
- Add the SAP Concur > Reports > Retrieve reports action, which will retrieve additional information that’s required for creating an expense entry.
- Add the SAP Concur > Expense entries > Create expense entry action. We’ll need to complete the mandatory fields that are marked with an asterisk, and can do so by mapping to values from the preceding Google Sheets event and SAP Concur retrieve actions.
- Expense type: Map to the SAP Concur / Retrieve all expense group configurations > Policies > Expense types > Expense code value.
- Payment type ID
: Map to the SAP Concur / Retrieve all expense group configurations > Payment types > Id value.
- Report ID:
Map to the SAP Concur / Retrieve reports > reports > Id value.
Tip: For these first three fields, we can use the How can I resolve this? link to select the first instance from the array of items retrieved; for example:
- Transaction amount: Map to the Google Sheets / New complete row appended / worksheetRow > Expense column of your spreadsheet.
- Transaction currency code: Specify a currency code.
- Transaction date: Specify a date in ISO format; for example,
- To complete the flow, add a Slack > Message > Create message action. Select a Slack channel for the generated message and enter the message text.
Our flow is now ready to be started!
Testing the flow
To test the flow, we can use a simple “employee expenses” worksheet in Google Sheets with the following named columns:
- Log in to Google Sheets, add a new row of data to the employee expenses worksheet and then save it.
- Go to SAP Concur and check for a new expense entry that contains the data that was entered in Google Sheets.
- Check the specified Slack channel for a message indicating that SAP Concur was updated with data from Google Sheets.