Documentation Index
Fetch the complete documentation index at: https://docs.loopreturns.com/llms.txt
Use this file to discover all available pages before exploring further.
📝 Overview
The Happy Returns integration allows merchants to process returns that have been dropped off at Happy Returns Bars. Unlike standard mail returns, these items are consolidated at Happy Returns facilities before being shipped in bulk to your warehouse. This guide explains how to programmatically retrieve shipment data—specifically the Bag Barcode—to efficiently receive and process these returns in your warehouse.How it works
- Drop-off: Customer drops item at a Return Bar (no packaging needed).
- Validation: Return Bar validates brand, color, and product type.
- Bagging: Item is placed in a clear polybag with a pre-printed QR code (Bag Barcode).
- Linking: Associate scans the customer’s RMA code to link it to the Bag Barcode.
- Processing: The return outcome typically processes ~12 hours later to allow for signal consolidation.
- Consolidation: Bags are aggregated at Happy Returns hubs and shipped to your warehouse (typically ~2x/week).
🆔 ID Reference
Understanding the IDs is crucial. You have two main options for scanning: Bag Barcodes (standard) or Loop Return IDs (requires configuration).| ID Name | Description | Context |
|---|---|---|
| Bag Barcode | The pre-printed QR code on the polybag (e.g., HR200250DB9E). | Standard scanning method. Links to the return via package_reference. |
| Loop Return ID | The internal Loop ID (e.g., 12345). | Option: Can be printed on the bag label if enabled. |
| RMA ID | Customer-facing QR code (e.g., HRJYTQ5J). | Used at drop-off, rarely in warehouse. |
| Shipment ID | Unique ID for the consolidated shipment. | Represents the box/pallet containing multiple bags. |
🚀 Use Cases
There are two primary ways to integrate Happy Returns data into your warehouse workflow:1. Scan-to-Process (Real-Time)
In this workflow, your system listens for webhooks to “pre-alert” your WMS about incoming returns. When the shipment leaves the Happy Returns facility, you receive the data needed to recognize the Bag Barcode when it arrives. Workflow:- Listen for the
return.updatedwebhook. - Extract the
package_reference(this is the Bag Barcode) andid(Loop Return ID). - Ingest the return information into your WMS before the box arrives.
- Scan the physical Bag Barcode on the polybag upon arrival to immediately identify and process the return.
2. Bulk Receiving (Manifest Reconciliation)
Alternatively, you can pull a manifest of all items in a shipment before processing. This is useful for receiving entire pallets at once. Workflow:- Listen for the
happy.returns.shipmentwebhook (trigger:shipment.processed). - Call the Get Shipment Items API using the
happy_returns_shipment_idfrom the webhook. - Ingest all returns in that shipment into your WMS preparation area.
🛠️ Technical Implementation
Webhook Setup
To receive real-time updates, configure the following webhooks in the Loop Admin or via API:-
Topic:
return| Trigger:return.updated- Why: Gives you the link between Loop Return ID and Bag Barcode (
package_reference).
- Why: Gives you the link between Loop Return ID and Bag Barcode (
-
Topic:
happy.returns.shipment| Trigger:shipment.processed- Why: Notifies you when a consolidated shipment is on its way to your warehouse.
API Polling (Alternative)
If you cannot use webhooks, you can poll the API to find new shipments:- Call Get Shipments to find recent shipments.
- For each new shipment, Call Get Shipment Items to get the bag barcodes and return details.
📦 Post-Inspection Processing
By default, refunds are often issued at the time of drop-off. However, you can configure Loop to wait for warehouse inspection before refunding. Requirements:- Contact your Loop point of contact or support to enable “Manual Processing” mode.
- Critical: The “Happy Returns Partial Return” shop setting must be disabled.
- Workflow:
- Item arrives at warehouse.
- Warehouse inspects item.
- WMS calls Process Return API to accept/reject and trigger the refund.
❓ FAQ & Troubleshooting
What if a bag doesn’t scan? If a Bag Barcode doesn’t pull up a return, it might be a “Triage Item” (an item that wasn’t correctly linked at the Return Bar). Use the Happy Returns Shipments Report to look up the item manually. Why are there multiple Bag Barcodes? Rarely, a single return might be split into multiple bags. loops API responses providehappy_returns_return_bag_barcodes as an array. Scanning any of the barcodes in this array should validly identify the return.
Can I utilize my existing Return Logic?
Yes. If you use “Post-Inspection Processing,” you can apply your standard inspection workflows (e.g., grading, restocking fees) just as you would for a mail-in return.