Skip to main content
When ClearSpend is missing invoices for a subscription (for example, the vendor only emails them to the app owner), you can send a public upload link that lets anyone upload the right files from the browser. No ClearSpend account needed. Each link is a unique, token-protected URL of the form https://app.clearspend.ai/p/<token>. It expires when the request is closed or when all the requested invoices have been received.

Sending a request

There are two ways to generate a public upload link:
1

From a subscription detail page

Open the subscription, click Request documents, pick which months you need, then enter the recipient’s email and an optional note. ClearSpend emails them a link and tracks the request on subscription detail → History (periods marked requested).
2

From the bulk requests flow

From the subscriptions list, select multiple rows → Request invoices. You can request from many app owners at once; each recipient gets their own scoped link that only exposes the apps they own.
The recipient does not see your other subscriptions, vendors, or pricing, only the apps and months you’ve explicitly requested.

What the recipient sees

After you send a request, ClearSpend emails the recipient with a unique link to the secure upload portal. When they open that link in their browser, the upload page loads; they do not need a ClearSpend account. That page is a focused upload experience:
  • A left sidebar listing each subscription you’ve requested invoices for, with a progress badge (e.g. 2 / 3)
  • A main area showing one row per missing period (e.g. “Invoice for September 2026”)
  • A drag-and-drop zone for each row, accepting PDFs and images (JPG / PNG)
Each missing period has its own upload area, scoped to that subscription (vendor) and billing month. The recipient can upload multiple invoice files for that single period in one session; every file must match that vendor and month. ClearSpend rejects files tied to a different month, vendor, or year than the one you requested. Valid files for that period are all accepted until the row is satisfied, subject to the per-file type and size limits and the per-session cap below. If you asked for two months, you get two separate periods and the same rules apply to each.

Upload limits

LimitValue
Maximum file size8 MB per file
Maximum files per session20
Supported typesapplication/pdf, image/jpeg, image/jpg, image/png
When a file is dropped, ClearSpend validates it inline:
  • All invoices matched and submitted: the file matched the vendor and period and was attached to a transaction
  • Duplicate: the same invoice was already uploaded; ClearSpend keeps the first copy and notifies the recipient
  • Failed: the file couldn’t be parsed; the recipient gets a specific error (wrong vendor, unreadable, etc.)

What happens after upload

Each successful upload behaves exactly like a document the team uploaded directly:
  1. Goes through OCR + line-item extraction
  2. Matches against open transactions for that subscription
  3. Updates the subscription’s reconciled spend on the dashboard
  4. Closes the corresponding row on the request page
Once every row is completed, the recipient sees a success state and the request is auto-closed on your side. You’ll get a notification (if you’ve enabled invoice notifications under Settings → Notifications).

Tracking requests on your side

Track outstanding requests from subscription detail → History (periods marked requested) and from the subscriptions you included in a bulk request. For each open request you can see:
  • Which months are still missing documents
  • Whether files have been uploaded and matched
  • Reconciliation moving toward Matched
To cancel a mistaken request before uploads arrive, use Revoke request on the billing period in history. See Request missing invoices. To follow up with a recipient, send a new request for the same periods or ask them to use the link from the original email if the request is still open.

Security

  • Tokens are random and unguessable; the URL is the only thing the recipient needs (and the only thing they can use)
  • Uploaded files use short-lived, signed S3 URLs; they never traverse a public bucket
  • Cancelling a request immediately invalidates the link
  • We log every successful upload against the request for audit purposes on the subscription history
Treat public upload links like any other unauthenticated URL. Share them via email or chat, not a public channel. If a link is leaked, Revoke request on the subscription history row to invalidate the pending placeholder.