Skip to content

[Due for payment 2026-07-29] Receipt captured via long-press shortcut lost — expense saved as $0 with no receipt and no failure feedback #95673

Description

@melvin-bot

Problem

A user captured a receipt in NewDot using the long-press shortcut to take and upload a receipt. The expense was created but ended up as a $0 expense with no receipt — the receipt image is nowhere to be found, and the user received no feedback that anything had failed.

This is a concrete instance of the failure mode tracked in #92139 (receipt durability + observability when upload fails).

Repro (as reported)

  1. In the app, use the long-press shortcut to take a receipt and upload it.
  2. Observe the resulting expense.

Expected: The receipt is attached to the expense (or, if the upload fails, the user is clearly notified and given a recovery path).
Actual: The expense is saved as $0 with no receipt attached, and no error/feedback is shown. The receipt image cannot be located.

What we need

  1. Traceability — we must be able to trace what happened in cases like this from logs: whether the image was captured, whether the upload was enqueued, whether/when it was sent, and the server response. (Tracks with the observability work in [Due for payment 2026-07-23] Improve receipt durability and observability when upload fails #92139.)
  2. User feedback — the user must always receive clear feedback when something fails, instead of silently ending up with a $0, receipt-less expense.

Related

Reported in Slack.

Issue OwnerCurrent Issue Owner: @mallenexpensify

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionBugSomething is broken. Auto assigns a BugZero manager.DailyKSv2InternalRequires API changes or must be handled by Expensify staff

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions