The weekend that converts months of preparation into a live Fusion HCM. Dry runs, freeze windows, mid-cutover delta capture, RTI-aware timing, defensive rollback plan, T+0 to T+30 hypercare.
HR cycles are externally-driven and unforgiving. RTI submissions, pay runs, pension auto-enrolment, P11D filing dates all have hard deadlines. A cutover playbook that ignores them creates regulatory exposure.
ERP cutover playbooks were built for finance: month-end close, fiscal-year boundaries, AR/AP cycles. Adapting them to HR is incomplete. Sage People migration cutover has to dance around UK HMRC RTI submission windows (per-pay-period FPS, periodic EPS, year-end EYU), monthly/quarterly pension auto-enrolment assessment dates (Pensions Regulator deadlines), salary sacrifice opt-in/opt-out windows, P11D filing dates (6 July annually), P60 distribution windows (31 May annually), year-end P45 / EYU processing.
Get any of these wrong and the consequences extend well beyond IT: late RTI triggers HMRC penalties, missed auto-enrolment triggers TPR regulator action, mis-timed P11D triggers individual tax calculation errors. None of these surface during functional UAT — they only show up in the live regulatory cycle weeks or months later. The Sage People cutover playbook front-loads regulatory awareness into the cutover timing decision.
Syntra ETL's Sage People migration cutover playbook is built around the UK HR regulatory calendar. Optimal cutover windows are pre-identified for your specific pay cycle, RTI submission cadence, and pension auto-enrolment schedule. The playbook includes pre-flight checks for in-flight regulatory submissions, freeze-window timing that respects 24/7 user populations, mid-cutover delta capture so production doesn't lose recent edits, and defensive rollback procedures at every decision gate.
Every gate has go/no-go criteria. If a gate fails, the playbook escalates to the rollback decision tree.
T-7: dry-run #2 reconciliation clean, hypercare rota signed, freeze window communicated, RTI submission window confirmed clear. Go/no-go decision from steering committee.
T-0 Friday evening: Sage People in read-only (sharing rules clamped, profile permissions removed). MuleSoft paused. Maintenance page active. User access logged for evidence.
T-0 Friday night: SystemModstamp watermark delta extract from Sage People. Reconciled against expected delta volume — material variances trigger investigation.
T-0 Saturday: HDL bundles loaded to Fusion in dependency order. Worker → WorkRelationship → Assignment → Salary → Absence. Each layer reconciled before next.
T+0 Saturday evening: row-count, sum-total, content-hash reconciliation complete. Audit pack drafted. Stakeholder review by Sunday morning.
T+1 Sunday evening: communications sent. Maintenance page removed. Fusion HCM accepting traffic. Hypercare daily stand-up scheduled to start Monday.
The actual sequence of activities across the 48-72 hour cutover window. Each step has owner, duration, dependencies, and rollback trigger.
Pre-cutover health check. RTI submission window confirmed clear. Sage People sharing rules clamped via apex script. Profile permissions revoked. MuleSoft integrations paused. Apex triggers disabled. Maintenance page activated.
SystemModstamp watermark delta from previous bulk load. Worker__c, Employment_Record__c, Salary__c, Leave_Request__c, plus dependent objects. Delta validated, reconciled against expected variance window.
Fusion HCM enterprise structures, legal employers, BUs, reference-data sets, payroll definitions confirmed configured. Last chance to fix foundation drift before worker loads.
HDL Worker.dat, WorkRelationship.dat, WorkTerms.dat, Assignment.dat loaded in dependency order. Each ESS job monitored to SUCCESS. Per-stage row count and sum reconciliation.
HDL Salary.dat, AbsenceCase.dat, AbsenceEntry.dat loaded. Effective-dated history validated per worker. Open absences confirmed. Salary historical chain reconciled.
Three-layer reconciliation: row counts, sum totals, content hashes per object. Audit pack drafted. Exceptions triaged. Sign-off candidate prepared for Sunday review.
HR, payroll, IT, audit, DPO review of audit pack. Final sign-off captured. Pension provider integration tested. Sage 50 / RTI provider connection tested if continuing on existing payroll.
Maintenance page removed. Communications sent. Fusion HCM accepting employee + manager traffic. Sage People read-only retained for hypercare reference. Hypercare team on call.
Every Sage People cutover has a rollback plan and contingency measures. Real-world rollback frequency is <5%, but preparation makes that statistic possible.
Gate 1 through Gate 5 each have an exit-stage-left rollback procedure. Sage People sharing rules restored, MuleSoft resumed, Apex triggers re-enabled, maintenance page removed.
Rollback typically reschedules to next month's equivalent weekend, allowing 4 weeks to address root cause. Communications cascade pre-drafted for reschedule scenarios.
If a delta extract surfaces material drift, replay procedures pull additional Sage People history into the load stream without restarting the bulk load from zero.
During the 48-72hr freeze, if a critical leaver needs urgent processing (HR escalation), a controlled-write path allows specific records to update Sage People — logged for post-cutover delta replay.
If a regulatory submission becomes due during the freeze window, Sage People is briefly un-frozen for the specific RTI submission with logged, audit-tracked operator access only.
Auto-enrolment assessment dates that fall in the freeze window are processed via Sage People with the result replayed into Fusion via the delta replay path.
A Sage People migration cutover is the orchestrated transition from running production HR on the Sage People Salesforce org to running it on Oracle Fusion HCM. It's different from generic ERP cutover for two reasons. First, Sage People is HR — and HR has hard, externally-driven cycles that ERP doesn't: weekly/fortnightly/monthly pay runs that can't slip, HMRC RTI submissions on specific dates, pension auto-enrolment deadlines, P11D filing dates, year-end P60/P45 cycles. Second, Sage People is on the Salesforce Platform — which means cutover has to coordinate Salesforce-side activities (sharing rule clamps, profile permission revocation, MuleSoft pause, Apex trigger disable) that don't exist in PeopleSoft or EBS cutovers. Syntra ETL ships a Sage People cutover playbook that handles both dimensions.
The Sage People migration cutover window is dictated by your UK payroll cycle and HMRC RTI submission calendar. Optimal cutover timing is the weekend immediately after a completed pay period — RTI submitted, EPS reconciled, no in-flight FPS. For monthly payroll customers (most common in UK mid-market), the third weekend of the month works well: pay run completed mid-month, RTI submitted, two weeks until next cycle. For fortnightly payroll, the off-week between cycles. Year-end (around 5-6 April UK tax year) is a bad choice — RTI year-end submissions, P60 generation, EYU windows all converge. Mid-financial-year (e.g. October for April-March fiscal year) is preferable for full Sage People decommissioning. Pension auto-enrolment assessment dates (typically 1st of month) need to be checked — avoid cutover that crosses an assessment.
Carefully — RTI submissions are submitted to HMRC at specific times and any cutover that crosses an in-flight submission risks duplicate or missing FPS records. The Sage People cutover playbook treats RTI submission windows as no-cut zones. Pre-cutover (T-7 days): final pre-cutover payroll cycle run in Sage People with RTI FPS submitted, EPS year-to-date reconciled, HMRC confirmation received. T-0: Sage People put in read-only mode after RTI confirmation. T+0 to T+pay-cycle-end: Fusion Payroll UK configured but not yet submitting RTI; if a pay event occurs in the cutover gap (leaver, mid-cycle starter), it's handled via Sage People EPS amendment then mirrored in Fusion. First Fusion RTI submission occurs at the next scheduled cycle date, with EYU reconciliation if year-to-date adjustments are needed.
The Sage People cutover freeze window is typically 48-72 hours, starting Friday evening (T-0) and ending Sunday evening (T+2 or Monday morning go-live). Frozen activities during the window: (1) all data writes to Sage People Worker__c, Employment_Record__c, Salary__c, Leave_Request__c (sharing rules clamped, profile create/edit permissions removed via Permission Set assignment changes). (2) MuleSoft integrations between Sage People and Sage 50 Payroll / third-party providers paused or queued. (3) Salesforce Apex triggers that update Sage People records disabled via the Trigger Bypass pattern. (4) Manager self-service and employee self-service URLs redirected to a maintenance page. (5) New hire onboarding workflows paused (in-flight workflows held). (6) Leave request submissions blocked. Customers running 24/7 globally need to extend the freeze window to cover all time zones, or run cutover during the natural lull window (Friday evening US PT → Monday morning UK).
Delta capture handles the gap between initial bulk load and final cutover. After the initial bulk load (typically T-14 to T-7), Sage People production users continue working — creating new records, updating existing ones. Syntra ETL's delta capture engine uses Salesforce SystemModstamp watermarks on each Sage People object to identify records changed since the bulk load. At final cutover (T-0), a final delta extract pulls every record modified between the bulk load watermark and the freeze window start. These deltas are transformed and loaded to Fusion HCM via incremental HDL bundles or REST API calls — typically a much smaller payload than the bulk load (hundreds to thousands of records vs millions). The delta load is reconciled before the freeze window ends, so go-live has zero gap to Sage People.
The rollback plan exists for catastrophic discovery during the cutover weekend — typically a reconciliation failure that can't be resolved before Monday morning go-live. Rollback decision points: T+0 Saturday morning (after initial loads but before reconciliation completes), T+0 Saturday evening (after reconciliation), T+1 Sunday morning (last point before go-live communications go out), T+1 Sunday evening (last point before Monday traffic). At any decision point, if reconciliation can't be resolved or material data integrity issues surface, rollback executes: Sage People sharing rules and profile permissions restored, MuleSoft integrations resumed, Apex triggers re-enabled, maintenance page taken down, communications sent. Fusion HCM remains in the loaded state but is taken back to non-production. Reschedule typically targets the next month's equivalent weekend after addressing root cause. Real-world rollback frequency is <5% — preparation eliminates most cases.
Sage People hypercare runs T+0 to T+30 (4-week intensive window) with extended monitoring through T+90. Daily activities (T+0 to T+14): morning stand-up with HR, payroll, IT, Syntra ETL engineer. Issue triage and resolution. Manager self-service log review, employee self-service log review, leave request approval audit. Pay cycle preparation review. Weekly activities (T+14 to T+30): pay cycle reconciliation post-run, Fusion vs Sage People parallel comparison (where applicable), exception register review, RTI submission preparation review. Extended monitoring (T+30 to T+90): monthly pay cycle reconciliation, quarterly pension auto-enrolment check, RTI YTD reconciliation, P11D preparation if year-end falls in window. Hypercare team typically includes 1-2 Syntra ETL engineers and your internal HR/payroll team for the first 30 days, scaling down progressively.
Communications cascade starts T-30 days. T-30: corporate-wide announcement of the migration, expected timeline, what changes (login URL, new UI, mobile app). T-14: manager-specific brief on what changes for them (manager self-service URL change, approval workflow differences, direct report visibility). T-7: employee reminder with the new Fusion HCM URL, mobile app download link, and the cutover weekend freeze window. T-0 Friday evening: maintenance page activation message via email, Slack/Teams, intranet. T+0 Saturday: progress updates if visible to user community. T+1 Sunday evening: go-live confirmation with new URL prominently displayed, FAQ link, and HR helpdesk contact info. T+1 Monday morning: town hall or all-hands welcome to Fusion HCM. T+1 to T+14: daily HR helpdesk capacity boost, escalation protocols clear. The communications calendar is part of the Sage People cutover playbook.
48-72hr orchestrated weekend, RTI-aware timing, defensive rollback at every gate, 30-day intensive hypercare. Book a discovery call and we'll walk through your specific pay cycle, RTI window, and pension calendar.