Return Statuses & Lifecycle Reference

View as Markdown

Every return in ShipBob Returns moves through a defined lifecycle. This reference explains each status, how the dashboard stays synchronized with ShipBob, and what your customer sees at each stage.

The Standard Lifecycle

A typical return moves through these stages:

Pending Approval (optional) → Awaiting ArrivalIn TransitArrivedCompleted

If Auto-approve return labels is on and no flow holds the return, new returns skip Pending Approval and go straight to Awaiting Arrival once the label is created.

Status Reference

StatusWhat it meansRequires your action?
Pending ApprovalThe customer submitted a return and it is waiting for your review — either because auto-approve is off or a Require Approval flow held it.Yes — approve or reject it.
Awaiting ArrivalThe return is approved and the label has been created and emailed. The carrier has not scanned the package yet.No.
In TransitThe carrier scanned the package; it is on its way back to the fulfillment center.No.
ArrivedThe package was delivered to the fulfillment center but processing is not finished.Sometimes — your warehouse receives and inspects it.
Action RequiredThe warehouse flagged an issue during processing — for example, an item they could not identify, or an inspection that needs your decision.Yes — resolve the flagged issue from the return detail page.
CompletedThe return is fully processed and closed in ShipBob.Only if you settle refunds manually.
RejectedYou (or an Auto-Reject flow) declined the return. No label was sent.No.
CancelledThe return was cancelled — by you from the dashboard, or because the RMA was cancelled or voided in ShipBob.No.

Label status

Alongside the return status, each return has a label state you may see referenced in the dashboard:

Label stateMeaning
Pending / ProcessingThe label is being created in the background. This normally takes a moment after approval.
ReadyThe RMA and label were created successfully and the label was emailed to the customer.
FailedLabel creation failed after retries. The return shows under Action Required > Label Failure with a Retry label generation button.
Not requiredNo shipment is needed — for example, a Keep Item flow let the customer keep the product.

Refund status

Each return also tracks its refund state independently of its lifecycle status: Pending Refund, Partially Refunded, or Refunded. A return can be Completed and still Pending Refund if you settle refunds manually. See Refunds, Fees & Deductions.

Operational status and refund status are intentionally separate so warehouse progress does not block finance workflows.

How Statuses Stay in Sync with ShipBob

You do not need to update statuses by hand. ShipBob Returns keeps them current in three ways:

  1. ShipBob webhooks — when the RMA changes in ShipBob (arrived, closed, cancelled, and so on), ShipBob pushes the update and the dashboard reflects it in near real time.
  2. Periodic reconciliation — every 10 minutes, ShipBob Returns re-checks open returns against ShipBob directly, so nothing is missed even if a webhook is delayed. After a return completes, reconciliation also backfills how each item was dispositioned at the warehouse (restocked, quarantined, and so on) for up to 14 days.
  3. Carrier tracking — return shipments are tracked hourly, which is how a return flips from Awaiting Arrival to In Transit as soon as the carrier scans the package.

Which Emails Your Customers Receive

ShipBob Returns emails the customer automatically at key stages. You can customize each template under Settings — see the email customization steps in Setup ShipBob Returns.

EmailWhen it is sent
ConfirmationImmediately after the customer submits the return in the portal.
Label readyWhen the RMA and shipping label are created — right away if auto-approve is on, or after you approve the return.
In transitThe first time the carrier scans the return package.
CompletedWhen the return reaches Completed.

Rejected returns also notify the customer, including the rejection reason when one is provided.

FAQ

Return lifecycle and refund lifecycle are separate. A return can close operationally while refund settlement is still pending if you do refunds manually.

Updates are near real time through webhooks, with periodic reconciliation every 10 minutes for open returns and hourly carrier tracking checks.

Rejected means the return was declined during review. Cancelled means a previously created return was later voided, either manually or through ShipBob cancellation events.