Skip to content

fix(mobile): show send-completed transaction time in local timezone #3896

Description

@blink-claw-bot

Summary

A user reported that transaction times should account for the country/local timezone. They shared a screenshot and wrote: "some changes on difference in time based on a country would be nice".

From code inspection, most transaction timestamps already render in the device's local timezone:

  • app/components/transaction-date/transaction-date.tsx uses new Date(createdAt * 1000).toLocaleString(locale, options) with no forced timezone when rendering transaction detail times.
  • app/components/transaction-date/transaction-date.tsx / app/utils/date.ts also use local Date methods for transaction list relative dates and short dates unless a timezone is explicitly injected for tests.

However, the send-completed receipt screen still formats the time through formatUnixTimestampYMDHM, which uses toISOString() and therefore forces UTC:

  • app/utils/date.ts: formatUnixTimestampYMDHM(timestampInSeconds) returns new Date(...).toISOString().slice(0, 16).replace("T", " ")
  • app/screens/send-bitcoin-screen/send-bitcoin-completed-screen.tsx displays that value in the Time row.

Current behavior

On the send-completed screen, the Time row is displayed in UTC because toISOString() is used.

Expected behavior

Display the send-completed Time row in the user's local/device timezone, consistent with transaction detail/list behavior. Ideally use locale-aware formatting, or add an explicit timezone label if product wants a fixed timezone.

Notes

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions