Resolve signer display timezone from member, then org

FeatureESigService
Shipped
August 3, 2026 at 1:28 AM UTC
Author
Kamo
Commit
a811ebb

Signing dates were rendered in whatever zone the client defaulted to, so an envelope expiring 2026-08-03T05:00Z could read "Aug 3" to a Pacific signer for whom the link is already dead on the evening of Aug 2. SigningSession now carries a server-resolved IANA timeZone: the recipient's own Member.timezone when they are a member and have set one, else the sending Organization.timezone, else UTC. SignerZone is a pure resolver with tests, including one that asserts every TimezoneType maps to its own zoneId so a new enum value cannot ship a client-side RangeError. Also fixes SigningSession.locale, which emitted the enum name ("SPANISH") rather than the BCP-47 code ("es") used in the signing URL's locale segment.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing