Requests in SAP Concur can be validated in an external system by using a combination of SAP Concur callouts and web services.
This guide provides a step by step overview of how to set up and use the external validation functionality for Requests. This guide does not provide instruction on the process of programming the application connector, but provides an overview of the required functionality.
The application connector is a custom web application that is installed on your company’s web server. This application needs to be accessible from outside your company’s network, so that SAP Concur can send information to it, and it needs to have access to the system that you are using for validation. The application connector must be configured to accept the event notification requests from SAP Concur. In later steps, you will expand the functionality of the application connector to perform additional tasks. The required connector configuration for this step is:
Once you have the basic application connector functionality set up, you’re ready to move to the next step.
In this step, you will enable the Event Notification functionality in your SAP Concur company in order to receive information about submitted Requests. Then, you will enable the Request API in order to request Request details from SAP Concur.
Before you begin:
Fill out the fields:
Field | Description |
---|---|
Name | Enter the name that should appear in the list of connectors. |
Description | Enter the description of the function of the connector, such as what back-end system it connects to. |
Host Name | Enter the hostname for the connector. Example: https://{servername} |
User Name | Enter the user name required to authenticate with the host. This must be the same as the user name specified in the configuration file for the application connector, using HTTP Basic Auth. |
Password | Enter the password required to authenticate with the host. This must be the same as the password specified in the configuration file for the application connector, using HTTP Basic Auth. |
Complete all of the required fields:
Field | Description |
---|---|
Name | Enter the name that should appear in the list of applications. |
Description | Enter the description of the function of the application. |
Visibility | This field is only editable by SAP Concur Internal users. |
Active | Select Active. |
APIs Used | Select the Request API. |
You should now begin receiving notifications from SAP Concur when your users submit Requests. In the next step, you’ll use the notification data that SAP Concur sends to get the Request information.
In this step, you will expand the application connector functionality to use the data sent by SAP Concur in the event notification to get details about the Request. You’ll use the Request details to validate the Request in a later step. The application connector must be updated to perform the following steps, using the SAP Concur web services:
All requests to SAP Concur web services must be authenticated using OAuth 2.0.
After receiving an event notification, the application connector should send an HTTP GET request to the Get Access Token using Native Flow function. This function requires the login credentials of an administrative SAP Concur user and the Consumer Key that was generated when you created the partner application in the previous step. Refer to the Get Access Token using Native Flow documentation for the format of the request. SAP Concur will respond to the request with the access token required for the next web service request.
After you receive the OAuth access token, you are ready to request the Request data. The event notification information that SAP Concur sends includes an element named ObjectURI. The connector can send a GET request to the URI specified in this element, supplying the OAuth access token in the request header in the following format:
GET api/travelrequest/v1.0/requests/nxxKgLlnROz3zHJBCRksaas23dsfs HTTPS/1.1
Host: www.concursolutions.com
Authorization: OAuth {access token}
...
In this step, the connector will perform the required validation on the Request information. This step will vary by client. The application connector must be able to access the system(s) used in the validation.
The Request data is validated by the application connector. The validation can produce one of the following results:
In the next step, the application connector will update the Request with the validation results.
Once the Request has been validated, the application connector is ready to update its workflow. If the Request passed validation, it should be approved, and will then travel forward in its workflow. If the Request did not pass validation, it should be sent back to the employee, which moves it to the beginning of the workflow.
The full Request details include an element named WorkflowStepURL. The application connector posts the workflow action (Approve or Send Back to Employee) to this url, using the same OAuth access token in the header.
SAP Concur responds with a success or failure status, and provides additional information for failures.
The application connector has now completed the process of validating a Request, from the initial notification that a Request was submitted, to the request updating the Request workflow in SAP Concur with the validation results.