Docebo Connect + Workday integration: setup guide for SMEs
For a European SME operating Workday as the HRIS and Docebo as the learning platform, the integration between them is where the onboarding experience either works or stalls. A new hire added to Workday on Monday should appear in Docebo on Tuesday with their learning path assigned — not three weeks later when HR realises the LMS account was never created. Docebo Connect for Workday automates that flow through Workday’s Report-as-a-Service (RaaS) API, with scheduled syncs that keep Docebo user records current against HR source data.
This guide walks through the Workday-to-Docebo integration we deploy for SMEs: prerequisites, field mapping, the RaaS API shape, and the lifecycle considerations that matter.
What the integration actually does
At steady state, Docebo Connect for Workday runs a scheduled recipe — typically hourly or every four hours — that pulls an Active Employees report from Workday RaaS, compares it to the current Docebo user set, and applies creates, updates, and deactivations. The operational outcome for the SME:
- New hires land in Docebo with learning paths auto-assigned by department or job family.
- Department moves flow through as Docebo branch reassignments, which cascade into updated enrollments.
- Leavers are deactivated in Docebo within one sync cycle of their Workday termination.
- No one is manually reconciling a spreadsheet at month end.
For an SME of 40–80 employees, that saves 4–8 hours of ops time per month and — more importantly — removes the single most common source of compliance drift in onboarding: users who exist in one system but not the other.
Prerequisites — what has to be in place
Before the first recipe runs, we confirm:
- Docebo Connect is activated on the SME’s Docebo instance. Not every tier includes it — check the entitlement.
- Workday has a configured Integration System User (ISU) with access to the RaaS report that feeds the sync.
- The RaaS report exists, is published, and returns the fields named in the integration spec — not a field that an HR analyst might rename tomorrow.
- Docebo Connect admin access is scoped properly.
- A Workday sandbox tenant is available for validation. Workday customers typically have one; make sure credentials reach the integration engineer on day one.
The authoritative Docebo reference for this integration sits on help.docebo.com; product-level docs are at docebo.com.
Field mapping that survives production
Custom field mapping between Workday and Docebo is where most integrations eventually show their age. A baseline mapping we start from:
| Workday field | RaaS path | Docebo field | Docebo API path | Transform |
|---|---|---|---|---|
wd:Email_Address | user.email | TRIM, LOWER | ||
| First Name | wd:First_Name | firstname | user.firstname | TRIM |
| Last Name | wd:Last_Name | lastname | user.lastname | TRIM |
| Employee ID | wd:Employee_ID | userid | user.userid | Direct |
| Organization | wd:Organization | branch_id | user.branch_id | LOOKUP(dept_to_branch) |
| Manager Email | wd:Manager_Email | manager_id | user.manager | LOOKUP(email_to_userid) |
| Hire Date | wd:Hire_Date | additional_field_1 | user.additional_fields[0] | DATE_FORMAT |
| Job Profile | wd:Job_Profile | additional_field_2 | user.additional_fields[1] | Direct |
The rules we enforce: Organization → branch is always a lookup table (free-text matching drifts as HR renames cost centres), and manager is always resolved via email → Docebo userid (Workday manager IDs do not match Docebo IDs by default).
Sample Workday RaaS API call
Before the scheduled recipe runs in production, we validate the RaaS endpoint returns the expected shape:
# Fetch active employees from Workday RaaS
curl -u "ISU_username:password" \
"https://wd3-services1.myworkday.com/ccx/service/customreport2/TENANT/\
ISU_User/Active_Employees?format=json&\
Employee_Status=Active" \
-H "Accept: application/json"
# Expected response shape
# {
# "Report_Entry": [
# {
# "Email_Address": "jane.doe@company.com",
# "First_Name": "Jane",
# "Last_Name": "Doe",
# "Employee_ID": "EMP-12345",
# "Organization": "Engineering",
# "Manager_Email": "john.smith@company.com"
# }
# ]
# }
If the call returns 401, the ISU credentials are wrong or the account is locked. If it returns 200 but the field shape differs from the spec, the report has been edited in Workday since the integration was designed — catch this in sandbox before it hits production.
GDPR considerations for a Workday-Docebo flow
Syncing employee data between Workday and Docebo is a processing activity that the SME must document in its Article 30 Record of Processing. Three anchors that have to be clean before go-live:
- Purpose limitation. The sync exists to assign and track training. Fields that do not serve that purpose should not be mapped — salary, performance rating, home address have no business flowing into the LMS.
- Retention. Docebo user records for leavers should follow the SME’s documented retention policy; Docebo supports scheduled anonymisation and we wire it to match.
- Legal basis. Employees are typically covered by legitimate interest; contractors and external partners may need a different basis.
For SMEs operating under the Spanish Esquema Nacional de Seguridad, the audit trail from Docebo Connect (every recipe run logged, every user change recorded) is a direct input to the auditable controls list.
Realistic go-live timeline
For an SME with one Workday tenant and one Docebo instance, the Workday-Docebo integration lands in two weeks of focused work: week 1 for prerequisites, RaaS report validation, and field-mapping sign-off; week 2 for production cutover, monitoring, and the first reconciliation pass. For eligible Spanish SMEs, the Kit Digital scheme covers up to €12,000 for digitalisation projects, which typically covers most of the build cost when this integration is packaged with a broader LMS deployment.
Ready to get started?
Working on this yourself? J4SGON S.L. delivers Docebo Connect, HRIS, SSO and migration work for European organisations — see what a scoped engagement covers or describe your project and we will reply with a written scope.
Tell us what you are integrating or migrating
Send the platform, the systems involved and where you are stuck. You get a written scope back — phases, deliverables and what is out of scope — before anything is billed.