Complete pickup
Pickup complete marks an assigned delivery as picked up and moves the order toward the customer phase. The control can submit immediately or open a requirements modal, depending on configuration. A tap, image preview, location check, changed screen, or returned order does not prove that pickup or every follow-on effect completed.
:::warning Pickup complete is an immediate order-status mutation
When no configured image requirement opens a confirmation modal, selecting Pickup complete can send the status update immediately. Do not select it to test visibility, permissions, GPS, image capture, or documentation.
:::
Availability
Current Driver App source can present pickup controls for order states shown as Driver in business, Accepted by driver, or Driver almost arrived at business. The exact presentation also depends on project configuration, reject-control visibility, pickup phase, order loading, connectivity, and the local permission gate.
The three source states are not equivalent:
| Returned state | Source presentation boundary |
|---|---|
| Driver in business | Pickup controls can be visible without an additional project or delivery-type gate |
| Accepted by driver | Pickup controls depend on the current reject-control visibility path |
| Driver almost arrived at business | Pickup controls use the same conditional visibility path as the accepted state |
Control visibility does not prove that the order is current, assigned, unlocked, location-valid, or eligible for the backend transition.
Before you start
- Confirm that you are physically handling the intended authorized order at the correct business.
- Review the masked order information and current pickup state.
- Wait for any loading or connectivity state to settle.
- Resolve the visible permission requirement without entering or sharing coordinates.
- If a photo is requested, capture only the required pickup evidence and review it before submission.
Complete the task
- In the active order detail, select Pickup complete once.
- If Driver App opens Request permissions, stop and review the permission state before returning. Returning does not prove effective location access.
- If no requirements modal appears, treat the first selection as the submission boundary and wait. Do not select the control again.
- If Upload status image appears, capture the requested pickup evidence, review the preview, and replace it with Remove image when incorrect.
- If Requirements Not Met appears, review the listed location or device issue. Do not refresh GPS, open Settings repeatedly, or bypass the requirement.
- Select the final Pickup complete once when every visible requirement is satisfied.
The modal can read a candidate GPS position and can include it with the update. Neither the candidate nor its visible validation proves freshness, trust, mock- location handling, backend acceptance, or durable location storage.
Verify the result
| Observable result | Safe interpretation |
|---|---|
| Pickup complete is disabled | Image, location requirement, connectivity, or order loading remains unresolved |
| Requirements modal appears | Local checks did not admit submission |
| Image preview appears | Local media candidate is present; upload and status are not accepted |
| Order loading | A C05 status request is unresolved |
| Error appears | One layer rejected or failed; image/location/order follow-ons need reconciliation |
| Order moves to a customer-facing phase | Client/returned state changed; status, trail, sockets, notifications, queue, and jobs remain separate |
| Control disappears or navigation changes | UI state changed; it is not an atomic pickup receipt |
If the result is unclear, do not repeat pickup. Ask the dispatcher to verify the current order status, assignment, location trail, and any required image.
States and variations
Direct status update
When status image is not required, the detail can send pickup completion from the first Pickup complete tap. The App does not show the modal's local location-validation checklist in this branch; the backend can still validate stored location and order rules.
Image and location modal
When a status image is required, Driver App opens the action modal. Pickup status uses the form's location-requirement path, can disable the final button, and can send multipart image plus candidate location. Media upload, order update, and location trail are not one proven atomic operation.
Force-pickup branch
Source contains a Forced mark order as pickup form that can add a reason and comment. The client only opens it after recognizing a specific backend error message. That preceding error response is not established for the accepted deployment. Do not rely on force pickup as a guaranteed recovery path. If it appears, stop and ask the dispatcher/operator to confirm policy and current order state before any action.
Troubleshooting
Pickup complete is missing
The returned status, reject-control configuration, pickup phase, loading, or connectivity can hide the control. Refresh the order once if operationally needed and contact the dispatcher; do not change another status to reveal it.
Request permissions opens
Follow Understand Driver permissions. A local gate or returned order screen is not proof that every permission settled.
The image requirement cannot be completed
Keep pickup unsubmitted and report the capture problem. Do not use an unrelated or previously captured image and do not share order/customer media outside the approved workflow.
Requirements Not Met persists
Do not repeatedly refresh location or reopen Settings. Location permission, device position, freshness, distance, and backend validation are separate. Ask the operator to reconcile the visible issue.
Pickup appears to change but the order remains actionable
Do not press Pickup complete again. The order write and follow-on effects can settle partially. Ask the dispatcher to verify the status before continuing.
Related guides: Understand an active delivery · Complete a delivery · Understand Driver permissions · Accept a delivery request