Skip to Content
Technical Articles
Author's profile photo Tim Chapman

SAP Concur’s Financial Integration Service explained.

I have been a Technical Consultant at SAP Concur for many years and work on the data interfaces between SAP Concur and its customers.  There are several mechanisms for obtaining expense information that can be used for financial posting into any ERP system as well as reimbursement to employees/cards.  These include:

  • Standard Accounting Extract – a flat file delivered via SFTP in a predefined format
  • Custom Extracts – a flat file delivered via SFTP in a format that you define
  • Cognos Reports – a flat file delivered via SFTP or email in a format that you define
  • Web Service APIs – a series of calls from a program to extract the data for immediate consumption.

The first 3 options are traditional ways of bulk transferring of data.  At the time, they served a purpose.  With no import available for providing feedback, customers had to build applications for storing and reprocessing expense reports. This increased maintenance costs and required yet another system to access.

SAP Concur has been working hard on innovations to streamline and improve processes as demonstrated by all the new v4 APIs.  In this post, I will explain how to use one set of APIs called “Financial Integration Service” (FIS) to provide near real time bi-directional integration between SAP Concur and your systems.  By providing feedback, it allows you to leverage Concur Expense for storing and reprocessing expense reports which reduces maintenance costs.

/wp-content/uploads/2016/02/sapnwabline_885687.png

Prerequisites

This post will not discuss authentication with Concur Expense.  Please see this post to get an explanation on authentication and application building within Concur Expense.  You will need an application with the following SCOPEs:

  • FISVC

In addition, to enable Financial Integration Service within Concur Expense, the following configuration changes are necessary.

/wp-content/uploads/2016/02/sapnwabline_885687.png

Introduction

Financial Integration Service consists of the following steps:

  • Get Financial Transactions
  • Acknowledge each Financial Transaction
  • Confirm each Financial Transaction posted (success or fail)
  • Mark each Financial Transaction as paid (optional but recommended)

If you noticed, I am using the term “Financial Transaction” and not “Expense Report”.  That is because FIS supports more than just expense report postings.  It also supports cash advances, invoice, payroll, and obligations.  In all the API calls, there is a variable called doctype which identifies the type of Financial Transaction you are working with.

To understand the various deployment options and configuration requirements, please read the FIS Setup Guide found here.  The complete Financial Integration Service API documentation can be found here.  To help you understand Financial Integration Service APIs, I developed the following Postman collection as an example.  You can also view FIS on the SAP API Business Hub here.

/wp-content/uploads/2016/02/sapnwabline_885687.png

Detailed Walkthrough

Get Financial Transactions

Using the GET /financialintegration/fi/……/transaction API (reference 1 – Get FIS Transactions – All in the postman collection), you request to receive all transactions waiting to be processed into your ERP [Step 1].  The response is a JSON with financially relevant data that you can use for posting and payment [Step 2].  For example, expense reports that are fully approved and in Pending Payment status.  Within the JSON is a variable called docId. docId is NOT the report ID, report number or report key within Concur. It is the financial document id that is generated every time an expense report is fully approved.  If the expense report fails posting and is resubmitted, it will have a new docId.

Get%20Expense%20Reports

Get Financial Transactions

Acknowledge each Financial Transaction

Using the POST /financialintegration/fi/…/acknowledgements API (reference 3 – Post FIS Acknowledgements in the collection), you will POST [Step 3] each Financial Transaction using the docId returned in Step 2.  This locks the corresponding concur document (i.e., expense report) and prevents it from being changed. This request could fail if the document was cancelled or recalled back to the employee/processor between step 1 and step 3. If that is the case, do not continue processing this financial document!  It will come back through Step 1 when it is approved again.

I can’t stress this enough.  This is a critical step in the posting flow, and it must occur.  If you post the data to your ERP before acknowledgement is successful, you could easily double book the transactions.

POST%20acknowledge

POST acknowledge

Confirm each Financial Transaction posted (success or fail)

Using the POST /financialintegration/fi/…/postingconfirmations API (reference 6x – Post FIS Confirmations in the postman collection), you can send back a success [Step 6 – first picture] or a failure [Step 6 – second picture].  This will update the audit trail as well as change the status of the document.  For example, expense report would change to either “Sent for Payment” or “Financial Posting Failed”.  Expense reports in Financial Posting Failed can be recalled by the expense processor and corrected.  With a failure, please make the error message as descriptive as possible so the employee or expense processor understands what needs to happen.

This is also a very important step in the posting process.  Technically, if you are not going to use the payment confirmations mentioned below, then you do not need to confirm posting.  However, you will be unable to reconcile with Concur Expense as there is no status change for “acknowledged”.  This step is the step that changes the status and is available in Reporting.

Confirm%20SUCCESS

Confirm SUCCESS

Or

Confirm%20FAIL

Confirm FAIL

Mark each Financial Transaction paid (optional but recommended for expense reports)

At some point in the future, you will receive an acknowledgement from your payment application (payroll, account payables, etc.) that payment has been made for this transaction [Step 7].

Using POST /financialintegration/fi…/paymentconfirmations API (reference 8 – Post FIS Payment Confirmation in the postman collection), you can update the status with the payment information [Step 8].  You can specify if it’s a partial payment (for example, payment to the card but not the employee) or if this is the final payment.  Final payment will also update the status to Paid in Concur Expense.

Payment%20Confirmation

Payment Confirmation

/wp-content/uploads/2016/02/sapnwabline_885687.png

Conclusion

SAP Concur’s Financial Integration Service is a very robust set of APIs that handle not only expense reports but also cash advances, invoice, payroll documents and obligations.  These APIs provide a complete audit trail within SAP Concur which enhances your audit posture and improves employee experience.  The near real time bi-directional interface provides the much-needed feedback to the ERP posting process.

Using the information in this post, and the postman collection, you should be on your way to exploring the benefits of Financial Integration Service.

/wp-content/uploads/2016/02/sapnwabline_885687.png

Share and Connect

What do you think?  Do you have anything to add? Leave a comment below.

Did you find it useful? Give us a like and share on social media.

Want to know more about SAP Concur? Please follow here.

Want to ask questions about SAP Concur and its offerings? Ask here

Follow my profile for similar content.

Thank you!

 

Assigned Tags

      6 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Minh Tri Le
      Minh Tri Le

      Hi Tim Chapman,

      Thanks for the detailed blog.

      I'm also using Financial Integration Service API.

      There is one thing I need your help with:

      According to the FI Sequence Flow Matrix - Invoice, I can see that the final Concur Invoice Payment Status could be Extracted. Is there any workaround so I can update the status of the invoice to Paid.

      Regards,

      Tri

       

      Author's profile photo Tim Chapman
      Tim Chapman
      Blog Post Author

      Invoice Payment Confirmation updates to Paid. It doesn't exist yet for FI. There is only the Invoice stand-alone API to do this currently.  This API can be found at https://developer.concur.com/api-reference/invoice/v4.invoice-payment-confirmation.html.

      We are currently looking at integrating this with FIS but at this time have no ETA.

      Another option to update extracted to paid (for Invoice) is to use the Payment Confirmation Import file. Prior to having the Invoice Payment Confirmation v4 API, Partners would provide the customer the import file via FTP. https://www.concurtraining.com/customers/tech_pubs/Docs/_Current/SPC/Spc_Inv/INV_SPEC_Pay_Req_Confirm_V2_(Current).pdf

      Author's profile photo Jude Fernando
      Jude Fernando

      HI Tim,

      I have a question on deployment options for integration between SAP Concur and S4. Isn't SAP ICS not supported anymore ?

      Thanks and Regards,

      Jude

      Author's profile photo Tim Chapman
      Tim Chapman
      Blog Post Author

      Jude Fernando - My apologies for not seeing this.  Yes, SAP ICS is supported and should be used when connected S/4HANA and Concur.  FIS can be used by other ERPs to do the same thing that ICS does.

       

      Author's profile photo Bamakam dubbu
      Bamakam dubbu

      How post FI documents in SAP from SAP Concur using BAPI or class ?

      Author's profile photo Tim Chapman
      Tim Chapman
      Blog Post Author

      Contact you Concur account manager.  There is an integration called SAP ICS that can be enabled to seamlessly transfer and post documents to SAP ECC and SAP S4Hana.  Depending on your system version, this is either and add on or part of the core S4Hana product.