Uploading receipts

Snap, drop, or pick a file; statuses; what happens on rejection.

The main thing you do in the client portal is upload receipts. This page covers the flow end-to-end β€” how to upload, what happens after, what the statuses mean, and what to do when a receipt comes back rejected.

How to upload

On your phone (recommended)

  1. Sign in at /portal/login
  2. Tap πŸ“· Take photo β†’ your camera opens directly
  3. Frame the receipt β€” try to fill the screen, avoid glare and shadows
  4. Snap β†’ confirm
  5. Upload starts automatically

The whole flow takes maybe 5 seconds. Snap a receipt at the counter, send it before you put your phone away.

You can also tap Pick from library to choose a photo or PDF that's already on your phone β€” useful for the bills that arrive as PDF email attachments.

On a computer

Drag the file into the drop zone, or click Choose file to browse. PDFs work well from a computer.

[Screenshot pending] Portal upload area β€” drag-drop on desktop, two big mobile buttons on phones

What we accept

Image formatsPNG, JPEG, HEIC, HEIF (Apple)
PDFsYes β€” for digital invoices and statements
Max size10 MB per file
At onceOne file per upload (batch uploads coming)

If your file is too big or in the wrong format you'll see an inline error before upload starts β€” no time wasted.

What happens after upload

The moment your receipt finishes uploading:

  1. The file lands in private Kiravy storage (only your firm + you can see it)
  2. Kiravy AI starts reading the receipt β€” vendor name, date, total, tax β€” in the background
  3. The receipt appears in your firm's Needs review queue
  4. You see a Receipt sent to your accountant confirmation, with Send another for the next one

You don't wait on the upload screen. The AI extraction is happening behind the scenes; your accountant picks it up when they get to it.

Your recent uploads

The home screen shows your last submissions with a status badge per row. You see only your own uploads β€” other people on your team have their own list.

StatusWhat it means
ReviewingEither Kiravy AI is still reading the file, or your accountant has it in their queue. Most receipts sit here briefly.
SavedYour accountant confirmed the values and booked it into your books. Done.
FailedKiravy AI couldn't read the receipt (blurry, dark, too small). See re-upload below.
DiscardedYour accountant decided not to use this one β€” usually with a reason. See when rejected below.
[Screenshot pending] Recent uploads list with mixed statuses β€” Reviewing, Saved, Failed, Discarded with a reason note

When a receipt is rejected

If your accountant marks a receipt as Discarded, the row stays in your Recent uploads with a Discarded badge and, usually, a one-line reason they typed in:

  • "Duplicate of receipt from 14 May"
  • "This belongs to your other company, please re-send to that portal"
  • "Photo is too dark to read β€” please retake"

There's no notification email today; you'll see the rejection next time you open the portal.

If you want to act on it (e.g. retake a photo), just upload the new version. There's no formal re-upload button or thread β€” each upload is independent. The discarded one stays in your history for the record.

Can I edit what the AI extracted?

Not in v1 β€” the AI extraction (vendor, date, total) is visible to your accountant on the firm side, but the portal doesn't yet show you what was read. You upload, they review and correct. A future portal version will surface the extracted fields so you can correct obvious mistakes before they look at it.

In the meantime, the safer move is: if you spot a problem with how a receipt was booked, message your accountant directly. They have the upload + extracted values + booked transaction all linked together on their side.

Privacy and what gets stored

  • The original file lives in private Kiravy storage. Only your firm's assigned staff + you can view it
  • File URLs are signed with a 1-hour expiry β€” you can't share a permanent link to an uploaded receipt by guessing the URL
  • Files stay in storage even after the firm books them β€” for audit, both you and the firm need to be able to defend the entry years later
  • You don't see other portal users' uploads even from your own business; each person's history is separate

Tips for receipts the AI actually reads well

  • Fill the frame β€” closer is better than further
  • Even lighting β€” avoid shadows from your hand or phone
  • Flat surface β€” a table beats your lap; reduces skew
  • Whole receipt visible β€” don't crop off the total
  • Hand-written corrections OK β€” Kiravy AI is decent at handwriting on top of printed receipts
  • Multiple languages OK β€” English, Bahasa Malaysia, Chinese all work

If a receipt comes back Failed repeatedly, a clearer photo at lower exposure usually fixes it.

What's coming

  • Multi-file upload β€” drop 20 receipts at once
  • Preview extracted fields in the portal β€” see what the AI read; flag obvious mistakes
  • Push notifications / email when your accountant changes a status
  • Document types beyond receipts (bills, statements, contracts)
  • Per-month upload history view with filters

What's next