Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upload Proof of Expense or Receipt #35

Open
Mari618 opened this issue Sep 16, 2024 · 0 comments
Open

Upload Proof of Expense or Receipt #35

Mari618 opened this issue Sep 16, 2024 · 0 comments

Comments

@Mari618
Copy link
Contributor

Mari618 commented Sep 16, 2024

There are three user stories for receipts. Can these be merged?

As a user creating a new expense, I want to be able to upload proof of the expense or a receipt in various formats (e.g., photo, PDF), so that I can provide supporting documentation for the expense, and ensure it is validated and properly stored.

Acceptance Criteria:
Upload Option:

  • When creating a new expense, the user should have the option to upload proof of expense or a receipt.
  • The system should accept various formats including photos (JPEG, PNG), PDFs, and other common formats as needed.

File Selection and Upload:

  • Users should be able to select and upload files from their device, either by drag-and-drop or using a file selection dialog.
  • The system should allow multiple file uploads if necessary (e.g., multiple photos or a combination of files).

Validation:

  • The system should validate the uploaded files to ensure they meet the following criteria:
  • Correct file format (JPEG, PNG, PDF, etc.)
  • File size does not exceed a specified limit (e.g., 5MB).
  • Files are not corrupted and can be opened/viewed.

Preview and Confirmation:

  • Once a file is uploaded, the user should be able to preview the file (if applicable) and confirm the upload.
  • The system should display a thumbnail or a file name and allow the user to remove or replace the file if needed.

Error Handling:

  • If the file does not meet validation criteria (e.g., wrong format, too large), the system should display an appropriate error message and prompt the user to correct the issue.

Storage and Access:

  • Uploaded receipts should be securely stored and linked to the corresponding expense entry.
  • Users should be able to view or download the uploaded receipts at any time through the expense details page.

User Interface:

  • The upload functionality should be intuitive and easily accessible within the expense creation form.
  • Clear instructions or tooltips should guide users through the upload process and validation requirements.

As a user managing shared expenses within a group, I want to ensure that uploaded receipts are visible both at the group level and the individual expense level, so that all members can access and review the documentation for any expense.

Acceptance Criteria:
Receipt Visibility at Expense Level:

  • When viewing the details of a specific expense, the uploaded receipt should be clearly visible.
  • Users should be able to view or download the receipt directly from the expense details page.

Receipt Visibility at Group Level:

  • On the group's expense summary or dashboard, a summary view should indicate that receipts are available for expenses, with an option to access detailed expense information.
  • Users should be able to navigate to individual expenses from the group summary to view or download the receipt.

Validation and Access Control:

  • Only users who are part of the group and have the appropriate permissions should be able to view or download the receipts.
  • The system should validate that the receipts are properly linked to their respective expenses and are accessible without errors.

Error Handling:

  • If a receipt is not accessible due to issues like file corruption or link problems, the system should provide an error message and prompt the user to report the issue.

User Interface:

  • The receipt should be displayed in a user-friendly manner, with clear options for viewing or downloading.
  • At the expense level, there should be a preview or thumbnail of the receipt, along with a download button.
  • At the group level, receipts should be indicated with an icon or text summary, linking to the detailed expense view.

As a user uploading receipts for expenses, I want to store the receipts using an external third-party storage service from a list provided in the Structure section, so that I can leverage reliable storage solutions and keep my receipts organized and accessible.

Acceptance Criteria:
Storage Options List:

  • Within the Structure section of the application, users should see a list of available external third-party storage services (e.g., Google Drive, Dropbox, OneDrive).
  • The list should include a brief description of each service and any relevant integration details.

Service Selection:

  • When uploading a receipt, users should be able to select their preferred external storage service from the available options.
  • The selection should be made through a simple dropdown menu or selection interface.

Authentication and Integration:

  • The system should prompt users to authenticate and authorize access to the selected external storage service.
  • Users should follow a secure OAuth or similar authentication process to link their account with the application.

Receipt Upload and Storage:

  • Upon selecting a storage service, the receipt upload process should automatically transfer the file to the chosen external storage.
  • The receipt file should be stored in a designated folder or directory within the selected service, and the link or reference to the file should be saved in the application.

Receipt Access and Retrieval:

  • Users should be able to view or download the stored receipts directly from the expense details page in the application.
  • The system should display the receipt link or reference, and clicking it should redirect users to the external storage service for viewing or downloading.

Validation and Error Handling:

  • The system should validate that the receipt is correctly uploaded and stored in the external service.
  • If there are issues with uploading or accessing the receipt, appropriate error messages should be provided, and users should be able to retry or select a different storage service.

User Interface:

  • The receipt upload interface should clearly indicate the selected external storage service and show progress or status updates during the upload process.
  • The external storage option should be integrated seamlessly into the existing receipt upload workflow.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant