
HR to ERP
Workday to SAP Concur integration: workers as Concur users with approver, cost centre and reimbursement currency
With an integration between Workday and SAP Concur, every worker from Workday automatically becomes a Concur user, with employee number, cost centre, approver and the reimbursement currency of their company. A new manager in Workday also becomes the approver in Concur, and after a termination the user is set to inactive.
What the integration does
Organisations that manage workers in Workday and travel and expenses in SAP Concur send a file from Workday to Concur every day or adjust profiles by hand. A change of manager does not reach the approver in Concur by itself, and a rejected line in the file only shows up when someone cannot submit expenses.
- KoppelHet fetches the workers changed in Workday since the previous run.
- New workers and changes go to Concur in batches of at most one hundred operations.
- Concur processes the batch in the background; KoppelHet follows the status until every operation is done or rejected.
- The manager from Workday becomes expense approver in the spend data.
- After the last working day KoppelHet sets the user to inactive.
What to watch for with Workday and SAP Concur
- According to SAP, the manager field in Concur's enterprise data does not automatically become the approver or delegate. KoppelHet therefore also sets the manager from Workday as approver in the spend data, so a change of manager really changes the approval route.
- Anyone using Concur's spend extension must provide a reimbursement currency. KoppelHet derives it from the worker's company in Workday, so a colleague at the British company is reimbursed in pounds and a colleague in the Netherlands in euros.
- The company ID of a Concur user cannot be changed after creation. If a worker in Workday moves to a company that is in another Concur environment, KoppelHet reports it to the Concur administrator instead of sending a change Concur rejects.
- Concur does not process a creation or change directly, but returns a provisioning ID. KoppelHet requests the status at intervals of at least five seconds and reports per worker what Concur rejected, so a failed creation does not go unnoticed.
- Workday often records an organisation change weeks ahead. KoppelHet only sends the new cost centre to Concur on the effective date, so expenses for the current month still go to the old cost centre.
- A bulk request to Concur holds at most one hundred operations or 400 KB. After a large reorganisation in Workday KoppelHet therefore spreads the changes over several requests, with the new managers first.
How we build and run it
- The integration runs on the KoppelHet platform, hosted in a data centre in the EU.
- Every sync and every error is visible in the functional log; on an error your administrator is notified.
- A change that cannot go through is not half-applied but queued for another attempt.
- KoppelHet is ISO 27001 certified. Data travels encrypted and stays on the platform no longer than needed.
- After go-live we manage the integration and adjust it when your process changes.
- The integration fits next to your existing integration layer. Only the fields in the design are transferred; the platform keeps no register of its own.
Implementation and price
This is not an app you switch on. We build the integration for your organisation on our platform, with building blocks we reuse on every project. So it is custom work that does not start from scratch.
A consultant prepares the intake and analyses both systems. We then record the mapping and exceptions field by field, test in the test or acceptance environment and go live at a moment you choose. Costs are a one-off amount for the setup and a monthly amount for platform, monitoring and support.
Frequently asked questions
Do travel profiles go along too?
In the first version only the data for expenses. Travel data can be added later as an extension.
Do approved expenses go back to payroll?
Not in this integration. Payment through payroll is a separate flow that can be added later as an extension.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- Workday through a RaaS report on change date with an Integration System User (Employee_ID, Company, Cost_Center, Supervisory_Organization, Manager, Hire_Date, Termination_Date), with Get_Workers from Human_Resources if needed.
- To SAP Concur through the User Provisioning Service v4 (SCIM 2.0) - POST /profile/v4/Users/ to create, PATCH /profile/v4/Users/{uuid} for changes, POST /profile/v4/Bulk/ (at most 100 operations or 400 KB) and GET /profile/v4/provisions/{provisionId}/status. Enterprise extension with companyId (required and immutable), employeeNumber, costCenter, department and manager; spend extension with reimbursementCurrency and approvers. Scopes user.provision.write and user.provision.read.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Workday | Field in SAP Concur | Notes |
|---|---|---|
Werk-e-mail | userName en emails | Unique across all SAP Concur products |
Legal_Name / Preferred_Name | name.givenName, name.familyName | |
Employee_ID | enterprise.employeeNumber | |
Company | enterprise.companyId | Immutable after creation |
Cost_Center | enterprise.costCenter | |
Supervisory_Organization | enterprise.department | |
Company (valuta) | spend.reimbursementCurrency | Required with the spend extension |
Manager | Goedkeurder in de spend-extensie (en enterprise.manager) | |
Termination_Date | active = false |
Related
Ashby → Workday
Ashby to Workday integration: hires to Workday, with a check on outcome and phone number
Bullhorn → Workday
Bullhorn to Workday integration: a consultant's first placement as a hire in Workday
Carerix → Workday
Carerix to Workday integration: a placed candidate becomes a pre-hire and starts the hire
Greenhouse → Workday
Greenhouse to Workday integration: hires as pre-hires, interim staff and contractors included