Group buys

Listing image uploads

Vendors upload listing media to the configured Supabase Storage bucket and store public references with their listing.

For VendorReviewed against the current application

What this feature does

Vendors upload listing media to the configured Supabase Storage bucket and store public references with their listing.

This guide describes the behavior implemented by Mallello, the people allowed to use it, and the operational checks that keep it dependable.

Detailed workflow

  1. Choose an accepted image file in the listing editor.
  2. The server validates authentication, ownership, file type, and size.
  3. The file is uploaded using a collision-resistant path.
  4. The returned URL is attached to the draft and previewed.
  5. Publishing makes the media visible wherever the listing is rendered.

Rules and permissions

  • Service-role storage credentials stay server-side.
  • Do not trust the browser-provided MIME type or filename alone.
  • Uploaded files should contain no secrets or private customer information.
  • Deleting a database reference and deleting the storage object are distinct operations.

Failure handling and edge cases

  • A storage policy or bucket configuration mismatch returns an actionable upload error.
  • Orphaned uploads may exist when a draft is abandoned and should be cleaned by maintenance.
  • Broken image URLs should fall back without breaking checkout.