Proof of Delivery
Most stops on a task group have one or more required proof artifacts — the photo, signature, or barcode scan that confirms what happened. This page covers each capture type and how the Android app handles proof when you’re out of signal.
Before you start
- You’re working an order in In Progress. Proof artifacts appear on tasks within each stop; they’re not available before you start a task group.
- You granted camera permission on first launch. If you skipped it, the capture screen prompts again — see Settings if you need to re-grant it.
Artifact types
The app shows a different capture UI for each type:
The order builder decides which artifacts each stop requires — see Creating orders for the configurator side.
1. Open the task
On the In Progress task group, tap the task on the stop you’re at. Each required artifact is listed under the task with its type and a Capture or Add action.
2. Capture a photo
Tap an Image artifact.
- The camera opens. Frame the shot.
- Tap the shutter to capture. The app downsamples the image to keep upload sizes reasonable.
- Confirm the photo, or retake. You can add more photos to the same artifact if the stop needs several.
- Tap Done to attach.
Hold the phone steady and let autofocus settle before tapping the shutter. Blurry proof photos are the most common rework request from dispatch.
3. Capture a signature
Tap a Signature artifact.
- Hand the phone to the point of contact on-site.
- They sign on the screen with a finger or stylus.
- They (or you) tap Clear to retry, or Done to attach.
4. Scan a barcode or QR code
Tap a Barcode Scan or QR Code Scan artifact.
- The scanner opens and shows a viewfinder. Point it at the code.
- The app captures on first successful read and shows you the decoded value.
- Confirm to attach, or rescan if the value looks wrong.
5. Complete the task
Once every required artifact on a task is attached, the task’s Complete action enables. Tap it to mark the task done. The next task on the stop, or on the next stop, becomes the focus.
Optional artifacts don’t block task completion — you can complete a task even if an optional photo is missing. Required artifacts do block. Required ones have a red asterisk or a clear required indicator on the artifact row.
Android: POD offline queue
On Android, proof capture works fully offline. iOS proof capture requires a live connection to upload — if iOS proof capture fails on a weak signal, retry once you’re back on a strong network.
When Android is offline and you capture a proof artifact:
- The photo, signature image, or scanned code is saved to the app’s local storage immediately.
- A queue entry is written for the upload + completion. The offline banner at the top of the app reflects the pending count.
- You can keep capturing and completing tasks. Each capture queues independently — proof for stop 1 doesn’t block proof for stop 2.
- When you regain signal, the queue replays in order:
- First, the binary upload (the actual photo or signature image) goes to storage.
- Then the task artifact completion call runs against the API.
- Finally, the local file is cleaned up.
If a step fails on replay (for example, a transient server error), it retries with backoff. If it fails permanently, dispatch will see the task still incomplete on their side — message them and re-capture.
Newly captured offline proof files are durable across app restarts on Android — even if your phone reboots, the proof and the queue entry survive. But if you uninstall the app or sign out before the queue drains, unsent proof is lost.
How to know it worked
- Every required artifact on a task has a checkmark or attached state.
- The task moves to a completed state and the next task becomes available.
- On the web app, dispatch sees the artifact appear under the task with a thumbnail (for images / signatures) or decoded value (for scans).
- On Android: after capture, the offline banner clears (if it was the only pending change) or the pending count drops by one.
If something looks different
- Camera shows a black screen. You denied camera permission. Open Settings and re-grant it — on iOS this jumps you to the iOS Settings app, on Android the system app info page.
- Signature canvas won’t accept input. Often a screen-protector or case issue — try with a different finger and pressure. The canvas doesn’t need a stylus.
- Scanner won’t recognize a code. Try better lighting and a steadier framing. Glossy and damaged labels are the usual culprits. If scanning truly isn’t possible, capture a photo of the label as a fallback and message dispatch.
- Upload keeps failing on iOS. Check signal strength — proof uploads can be larger than a typical API call. Try again on Wi-Fi or stronger cell signal.
- Contact hi@chrt.com if proof attaches in the app but never appears for dispatch.
Related guides
- Accepting orders — the flow that gets you to a task group ready for proof capture.
- Live location — what’s running in parallel while you’re capturing proof.
- Creating orders — how dispatch configures the required artifacts.
- Troubleshooting — POD upload failures.

