Skip to content

[Reports] Add receipt resend endpoint for recent activity transactions #709

Description

@StuartFerguson

Goal

Provide the backend API used by the mobile app to resend a receipt email from the recent activity drill-down screen.

Background

The mobile UI now includes a receipt detail page with:

  • the selected transaction details
  • an email address field
  • a resend receipt button

The current mobile implementation only shows mocked UI feedback. This issue covers the backend contract needed to send a receipt email again for a selected transaction.

Requirements

  • Add an endpoint that resends a receipt for a specific transaction/receipt reference.
  • The endpoint must accept:
    • merchant context / merchant reporting id
    • transaction reference or receipt reference
    • recipient email address
  • The endpoint must validate:
    • the email address is present and syntactically valid
    • the reference resolves to an existing transaction for the merchant
  • The endpoint should trigger the receipt resend workflow and return a clear success or failure result.
  • Prefer a small, explicit request/response contract so the mobile client can provide user feedback without guessing.

Suggested response shape

  • success boolean
  • message string
  • optionally receiptReference / transactionReference if useful for logging or tracing

Acceptance criteria

  • A valid request resends the receipt to the supplied email address.
  • Invalid email input is rejected with a clear validation error.
  • Unknown references return a not-found or equivalent failure response.
  • The endpoint is suitable for calling from the receipt detail screen after the user enters an email address and taps resend.
  • The endpoint does not require the client to send any data outside the selected transaction and destination email address.

Notes

  • This is a separate issue from the search endpoint.
  • The mobile app will continue to show local toast feedback, but the actual send action should be handled here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Fields

    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions