Returns
What This Is
Returns are the operational workflows your team uses to receive items back, validate what is being returned, apply return fees or shipping, and complete the recovery process.
In the shared package, returns are a real first-class workflow, but the exact operator screen can vary by project.
When You Would Use It
Use Returns when you need to:
- record returned quantities from a fulfilled order
- capture return reasons and return type
- apply return shipping and restocking fees
- confirm and approve returned quantities
- communicate a return authorization number or approval state
- send supplier return details or customer drop-off details
- complete the return and update the financial recovery state
Before You Start
Before you process a return, make sure:
- the original order exists
- the related fulfillment request is known
- the returned quantities are known
- the current location and inventory location are known
- your project’s operations team has the internal return screen or tool used for return handling
The shared package defines the return lifecycle strongly, but it does not ship a packaged admin return page in the repo inspected in this pass.
How To Use It In The Admin
- Open your project’s internal return workflow or return-management screen.
- Create the return with the core context:
- order
- fulfillment request
- customer
- current location
- inventory location
- return type
- internal reason
- Add the fulfillment-request items and quantities being returned.
- Add the required return fees before moving forward:
- shipping fee
- restocking fee
- Add return shipping-line or transport details if needed.
- Confirm the returned quantities.
- Approve the returned quantities when the return is accepted.
- Complete the return only after the return record is ready for final closure.
- Send the customer or supplier communication that fits the stage:
- approval / return authorization details
- drop-off instructions
- supplier-facing return package
What It Changes In The Storefront
Returns are mostly operational in the shared package.
Their main downstream effects are indirect:
- order recovery and refund handling
- return-authorization and approval communication
- updated amount due when return settings revise the order balance
- customer communications such as drop-off details
Common Tasks
Create a return from fulfilled items
Use returned fulfillment-request items and their remaining returnable quantity as the basis for the return.
Send return instructions
Use supplier return emails, approval emails, or customer drop-off details only when the return data is complete enough to support them.
Close a return cleanly
Complete the return only after required fees, quantities, and confirmation details are in place.
Rules, Limits, And Things To Watch
- A return is not the same thing as a refund.
- Approval and refund are separate moments in the workflow.
- You cannot return more quantity than is still left to return.
- Shipping and restocking fees are required before confirm, approve, or complete can proceed.
- Some return screens are host-specific even though the workflow is shared.
Troubleshooting
I cannot confirm or complete the return
Check that the required shipping and restocking fees exist.
The system says I am returning too many items
Check the remaining quantity left to return on the fulfillment-request items you selected.
Completing the return changed the order balance
That can be intentional when revise_order_amount_due is enabled on the return.
Related Features
- Orders
- Order Tracking
- Refund workflows
Sources
packages/framework/src/Http/Controllers/Api/Admin/OrderReturnsController.phppackages/framework/src/Actions/OrderReturn/CreateOrderReturn.phppackages/framework/src/Actions/OrderReturn/UpdateOrderReturn.phppackages/framework/src/Actions/OrderReturn/ConfirmOrderReturnItems.phppackages/framework/src/Actions/OrderReturn/ApproveOrderReturnItems.phppackages/framework/src/Actions/OrderReturn/CompleteOrderReturn.php