Skip to content

[Due for payment 2026-05-29] [TriNet] Add TriNet card to WorkspaceHRPage (default state, last-synced, three-dot menu, disconnect) #90582

@yuwenmemon

Description

@yuwenmemon

Parent: https://github.com/Expensify/Expensify/issues/625136
Design doc: https://docs.google.com/document/d/1TGdZYwm4_fvPOZtUziiz27bwVRqYm6HuEGopUYWNg8Y/edit

Scope

Render the TriNet card on the existing HR page (built by the Gusto port). The card supports default (unconnected) state with a Connect button, post-connection state with last-synced timestamp + three-dot menu + disconnect modal, and the Approval mode push-row. Mirrors gusto1.5/gusto1.7 from the Gusto port.

Depends on: Issue 5 (icon), Issue 6 (connect flow + action).

Implementation notes (from design doc)

src/pages/workspace/hr/WorkspaceHRPage.tsx

  • Import ConnectToZenefitsFlow, isZenefitsConnected, and the TriNet icon.
  • Add state for activeZenefitsFlowKey and isZenefitsDisconnectModalOpen.
  • Derive TriNet connection / config / sync state parallel to the Gusto derivations.
  • Add a second card below the Gusto card with the same structure.
  • Add a second ConfirmModal for TriNet disconnect.

Beta gate

shouldBeBlocked={!isBetaEnabled(CONST.BETAS.GUSTO) && !isBetaEnabled(CONST.BETAS.ZENEFITS)}

Tests

  • Add component test confirming the TriNet card renders with Connect button when not connected, and with last-synced + three-dot menu when connected.
  • Manual: full HR-page flow per Manual Test Doc Release 1 (default state, post-connection state, three-dot menu, sync failure handling, disconnect).
Issue OwnerCurrent Issue Owner: @ShridharGoel

Metadata

Metadata

Labels

Type

No type
No fields configured for issues without a type.

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions