
Payroll to finance
Loket to SAP Concur integration: out-of-pocket Concur expenses reimbursed through Loket, with payment status back in Concur
With an integration between Loket and SAP Concur, expenses employees paid out of pocket automatically go from Concur into the payroll period data of their employment in Loket, so they are reimbursed with the next payroll run. Concur first gets a posting confirmation and, after the payroll run, a payment confirmation, so the employee sees in Concur that their report has been paid.
What the integration does
Organisations that have business travel and expenses claimed in SAP Concur and process payroll in Loket often reimburse out-of-pocket amounts with the salary. Without an integration finance sends an overview to payroll every period, payroll retypes the amounts, and the report stays unpaid in Concur.
- The employee claims in Concur, the manager approves.
- KoppelHet fetches the queued documents, stores them and acknowledges receipt.
- Expenses the employee paid personally go per type as a pay component to the next open period of their employment in Loket.
- KoppelHet reports per report to Concur whether the posting succeeded or not.
- Once the payroll run is approved, KoppelHet sends the payment confirmation with the payment date.
Back: Posting confirmation once Loket has saved the data · Payment confirmation with payment date after the payroll run
What to watch for with Loket and SAP Concur
- As soon as receipt is acknowledged, Concur takes the report out of the queue, and Concur asks for that acknowledgement without delay. KoppelHet therefore records every report before writing anything to Loket. A Loket outage thus costs no reports.
- Per journal line Concur indicates whether the employee or the employer is the payer. Only lines the employee paid personally belong in the payroll run. KoppelHet leaves expenses on a company card out of Loket, because the employer has already settled them.
- Loket has its own expense flow, but only the employee can submit a claim in it. With Concur as the expense system, the integration writes the approved amounts directly as a pay component into the payroll period data, so the Loket flow stays unused for these expenses.
- Without the supplement option, a pay component in Loket's payroll period data replaces the fixed value on the employment. KoppelHet switches the option on for components that also carry a fixed allowance, so a train ticket from Concur does not replace the monthly allowance.
- Besides the posting confirmation, Concur has a separate payment confirmation for expense reports, with a unique payment reference per confirmation. KoppelHet only sends it once the payroll run in Loket is approved, and uses the payroll run number as the reference.
- If several employers work in one Loket environment under one Concur environment, the employee number belongs to the employer. KoppelHet looks up the employment per employer and keeps a separate table from expense type to pay component per employer.
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 company credit card expenses also reach Loket?
No. The employer has already paid those. Only what the employee paid personally goes through payroll.
What if Loket rejects an amount?
Then Concur receives a failed posting confirmation with the reason, and payroll sees the alert in the platform. After the fix the report goes along again.
Do employees from Loket also go to Concur?
Not in the first version. Putting users from Loket into Concur 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.
- SAP Concur through the Financial Integration Service v4: GET /financialintegration/fi/v4/companies/transactiontypes/expense/transactions (docStatus READY only), POST .../acknowledgements, POST .../postingconfirmations (overallPostingStatusCode, systemMessages) and POST .../paymentconfirmations (clearingReference.paymentRef unique, clearingDate yyyyMMdd, processingStatusCode CP). Fields include employee.employeeId, entryApprovedAmount, reportEntryPaymentTypeCode and journalPayer or journalPayee. Scope FISVC with a company-level token.
- Loket through the REST API with OAuth: POST .../employments/{employmentId}/payrollperioddata with payrollPeriod, payslipText, costCenter and payrollComponents (payrollComponent.key, value, isSupplement); allowed components through .../metadata/year/{year}/period/{periodNumber}.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Loket | Field in SAP Concur | Notes |
|---|---|---|
employee.employeeId | Dienstverband in Loket | Through employee number per employer |
Soort uitgave | payrollComponent (key) | Lookup table, checked against the allowed components of the period |
entryApprovedAmount, alleen bij betaler EMPL | value | Summed per component |
Eerstvolgende open loonperiode | payrollPeriod (year, periodNumber) | |
Declaratienummer | payslipText | |
Opgeslagen door Loket | overallPostingStatusCode success | |
Betaaldatum van de verloning | clearingDate en processingStatusCode CP |
Related
ADP Workforce Now → Loket
ADP Workforce Now to Loket integration: hires, pay, hours and bonuses from ADP to the Dutch payroll run
AlexisHR → Loket
AlexisHR to Loket integration: employees of the Dutch company from AlexisHR into payroll
BambooHR → Loket
BambooHR to Loket integration: HR changes from BambooHR for Dutch payroll
Bullhorn → Loket
Bullhorn to Loket integration: placement as a concept employee in the right payroll administration