Workday logoCoupa logo

HR to ERP

Workday to Coupa integration: workers as Coupa users with manager, department, cost centre and approval limits

With an integration between Workday and Coupa, every worker from Workday automatically becomes a Coupa user, with manager, department, default cost centre and the approval limits that belong to their job. A job change or new manager in Workday adjusts the approval route in Coupa on the effective date, and after a termination the integration sets the user to inactive.

What the integration does

Organisations that manage workers in Workday and run purchasing and invoices in Coupa maintain requesters and approvers in Coupa with a CSV file. A new manager in Workday only reaches Coupa weeks later, and someone who leaves can still approve requisitions in the meantime.

  1. KoppelHet fetches the workers changed in Workday, only for the companies that use Coupa.
  2. KoppelHet checks whether manager, department, cost centre and content group already exist in Coupa; if one is missing, the worker goes on a list.
  3. A new worker becomes a Coupa user with the licence and limits for their job, and signs in with single sign-on.
  4. A job change or new manager takes effect on the effective date from Workday.
  5. After a completed termination KoppelHet sets the user to inactive after the last working day.
Workday → KoppelHet → CoupaSOURCEWorkdayTARGETCoupaKoppelHetmapping · logging · monitoringWorkday → KoppelHet → CoupaSOURCEWorkdayTARGETCoupaKoppelHetmapping · logging · monitoring
Out: User with login, email, mention name and employee number · Manager and department · Default cost centre and content group per company · Approval limits per job · Active or inactive

What to watch for with Workday and Coupa

  • Coupa only accepts a user if the manager, the department, the content group and the account group already exist in Coupa. KoppelHet checks that beforehand and lists a worker with a missing reference, instead of creating a user without an approver.
  • A new worker and their new manager sometimes start on the same day in Workday. Because the manager must already exist in Coupa, KoppelHet creates the managers first in every run and then the employees who report to them.
  • Login, email, employee number and mention name must each be unique in Coupa. Two workers with the same name in different countries therefore get a mention name with a fixed suffix from KoppelHet, so Coupa does not refuse the second one.
  • Coupa has separate approval limits for requisitions, invoices, expenses and contracts, plus self-approval limits. KoppelHet only fills the limits finance has set per Workday job profile; the rest stays with Coupa administration.
  • A Workday company is often its own business group in Coupa, with its own suppliers and accounts. KoppelHet puts the user in their company's content group, so a worker of the German company does not order from Dutch suppliers.
  • Coupa only fetches a user through the API by its own Coupa ID. KoppelHet stores that ID with the Workday Employee_ID once the user exists, so a rehire in Workday reactivates the old Coupa user instead of creating a second one.
  • Workday distinguishes employees and contingent workers. Contractors who need to order or approve in Coupa only get a user if agreed per job, and then without an approval limit unless finance decides otherwise.

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, architecture and compliance

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.

Price indication · Basic

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Frequently asked questions

Who decides the approval limits?

Finance, in a table per job profile. The integration applies the limit as soon as the job changes in Workday.

Can departments and cost centres also be added to Coupa automatically?

That can be added later as an extension. In the first version they must exist in Coupa, and KoppelHet reports what is missing.

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, Worker_Type, Company, Cost_Center, Supervisory_Organization, Manager, Job_Profile, Hire_Date, Termination_Date), with Get_Workers from Human_Resources if needed.
  • To Coupa through the Users API (POST /api/users, PUT /api/users/:id, GET /api/users/:id on Coupa ID) with login, email, employee_number and mention_name (required and unique), firstname, lastname, manager, department, default_account, content_groups, account_groups, approval limits, authentication_method saml with sso_identifier, licence flags such as purchasing_user and active.

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in WorkdayField in CoupaNotes
Employee_IDemployee_numberRequired and unique in Coupa
Werk-e-maillogin, email en sso_identifier
Preferred_Namefirstname, lastname en mention_namemention_name must be unique
Managermanager
Supervisory_Organizationdepartment
Company + Cost_Centerdefault_account
Companycontent_groupsBusiness group per company
Job_Profilerequisition_approval_limit en invoice_approval_limitThrough a table finance maintains
Termination_Dateactive = false

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.