If Insights Detailed Timesheet Excel shows two leave columns with the same name (for example Leave: Annual Leave (428) and Leave: Annual Leave (503)), Drum has two separate leave type records that share a display name. The export appends the leave type id when names collide so the columns stay distinct.
Why duplicates appear
Under Settings → Leave Types, Sync Leave Types imports leave types from Xero Payroll (Australian or New Zealand organisations with payroll access). Older sync matched existing Drum leave types only by the Xero leave type id. It did not match on name.
So if leave types were created manually (or during onboarding) and later synced from Xero, Drum often created a second row for each synced type. Both could be named Annual Leave. Timesheet bookings and Xero leave import could then land on different rows, and Detailed Timesheet Excel showed both columns.
Heal duplicates with Sync Leave Types
Sync Leave Types now reconciles same-name orphans when it imports from Xero:
Open Settings → Leave Types.
Select Sync Leave Types (AU or NZ payroll access required).
Wait for the import to finish, then check the leave type list.
What Sync does for each Xero leave type:
If a kept Drum leave type already has that Xero id, Drum keeps that row.
If an unlinked leave type has the same name (case, outer spaces and curly apostrophes ignored), Drum attaches the Xero id to the oldest matching orphan instead of creating another row.
If a linked row already exists and same-name orphans remain, Drum moves tracked leave time onto the linked row and archives those orphans, as long as the time credit types match.
If the leave type was deleted in Drum for that Xero id, Sync leaves it deleted and does not give the Xero id to another row.
The same reconciler also runs when Xero pay items are imported (including AU leave types on pay-item import, matching NZ).
Healing is not automatic for every already-connected account. An administrator needs to run Sync Leave Types, or leave types need to come through a later pay-item / leave import that calls this reconciler.
After Sync, re-export Detailed Timesheet for a short test range. You should see a single Leave: Annual Leave column (no id suffix) when only one active leave type has that name in the period.
When Sync will not merge
Two leave types that both already have different Xero ids stay separate. They are different Xero entities.
Two unlinked leave types with the same name are not merged into each other unless Sync supplies a matching Xero id.
Orphans only merge when their time credit type matches the keeper. If credit types differ (for example Time in Lieu linked to different credit types), Drum leaves the orphan alone so balances stay correct. Align the time credit type, then Sync again, or ask Drum support.
How the Excel columns are named
Leave columns are labelled Leave: plus the leave type name. When more than one leave type in the export shares that name, Drum adds the leave type id in brackets. The numbers are Drum ids, not Xero ids. The same rule applies to banked credit columns when credit type names collide.
Manual cleanup (only if Sync cannot merge)
Open Settings → Leave Types and confirm which rows still share a name.
Keep the Xero-linked row (the one with the Xero leave type id). If you are unsure which is linked, stop and ask Drum support before deleting anything.
Move time off the orphan if Sync skipped the merge (for example because time credit types differ). Re-enter or reassign leave against the keep type. Archiving alone does not move historical hours when you clean up by hand.
Archive the duplicate. On the orphan, use delete so it moves to deleted leave types (View Deleted Leave Types). Optionally turn off Show on Timesheets first so staff stop picking it.
Avoid creating duplicates
If you will use Xero leave import, prefer Sync Leave Types (or have Drum link Xero leave type ids) before creating the same names by hand.
If duplicates already exist, run Sync Leave Types first. Manual archive is only the fallback when Sync will not merge.
Leave import behaviour is summarised in the Xero synchronisation reference.
