Skip to main content
WEBHOOK

Body

application/json
topic
string

The webhook type.

Example:

"return"

trigger
string

The event that triggered the webhook.

Examples:

"return.created"

"return.updated"

"return.closed"

shop_id
integer

The ID of the shop the return belongs to.

Example:

12345

id
string

The Loop return ID.

Example:

"1673"

state
string

The state of the return.

Possible values:

  • open: Requests have yet to be processed (Loop has not fully processed all the outcomes).

  • cancelled: Refers to any return requests that have been cancelled in the Loop admin.

  • closed: Typically refers to any return request/outcome that has been processed or closed manually. No further action is required for these returns.

  • review: Refers to a return that has been flagged for review.

Examples:

"open"

"cancelled"

"closed"

"review"

refund_before_inspection
boolean

Whether the return is configured to refund before the items are inspected.

Example:

false

created_at
string

The date and time (ISO 8601 format) when the return was created in Loop.

Example:

"2019-04-01T12:00:00+00:00"

edited_at
string | null

Date and time (ISO 8601 format) when the return was last edited inside Loop. null when the return has not been edited.

Examples:

"2019-04-01T12:00:00+00:00"

null

total
string

The total cost of the return.

Example:

"48.81"

order_id
string

The Loop order ID.

Example:

"2871"

order_name
string

The order name from the commerce provider (e.g. Shopify).

Example:

"#47727779"

taxes_included
boolean

Whether taxes are included in the order's prices. Defaults to false.

Example:

false

provider_order_id
string

The order ID from the commerce provider (e.g. Shopify).

Example:

"58997314"

order_number
string

The order number from the commerce provider (e.g. Shopify).

Example:

"7078"

provider_order_number

The order number from the commerce provider (e.g. Shopify).

Example:

8078

provider_order_external_id
string | null

The external order ID from the commerce provider (e.g. Shopify). null when the order has no external identifier.

Examples:

"12354567890"

null

provider_order_sales_channel
string | null

The name of the sales channel that the order was created in.

Examples:

"Example Online Store"

null

customer
string

The email address of the customer.

Example:

"me@myself.com"

customer_detail
object

The customer's email, first name, and last name.

address
object

The original customer's shipping address or the address that the customer inputs in the case of a gift return.

currency
string

The currency of the store at the time of the order.

Example:

"USD"

return_product_total
string

The value of returned line items, excluding order discounts and taxes.

Example:

"50.00"

return_discount_total
string

The sum of all discounts on returned items.

Example:

"5.00"

return_tax_total
string

The value of order taxes on returned line items.

Example:

"2.50"

return_total
string

The return total after taxes and discounts.

Example:

"47.50"

return_credit_total
string

The value of total return credit (product + honored discount + tax).

Example:

"47.50"

status_page_url
string

The link to the return status page.

Example:

"https://example.loopreturns.com/#/return/b3e4764e-7adf-4b8c-802a-553305b6db49"

exchange_product_total
string

The value of exchange items before discounts and taxes.

Example:

"60.00"

exchange_discount_total
string

The discount on exchange items.

Example:

"10.00"

exchange_tax_total
string

The tax on exchange items.

Example:

"3.00"

exchange_total
string

The exchange total after taxes and discounts.

Example:

"53.00"

exchange_credit_total
string

The total exchange items value after discounts and taxes, which is used by the customer.

Example:

"53.00"

gift_card
string

The amount of store credit to be issued to the customer on a gift card.

Example:

"25.00"

handling_fee
string

The handling fee amount set in Loop admin.

Example:

"5.00"

refund
string

The total refund value of the return.

Example:

"20.00"

upsell
string

The additional amount paid by customer when exchange credit total is greater than return credit total.

Example:

"10.00"

is_gift_return
boolean

Whether or not the return is a gift return.

Examples:

true

false

refunds
object[]

The breakdown of refunds across payment gateways.

labels
object[]

Details on each label associated with the return.

line_items
object[]

Details on items being sent to Loop as part of the return.

exchanges
object[]

Details about the product(s) being sent to the customer. This can be a result of an even exchange, replacements for returned items, or new purchases made through the app.

shipment_id
string

The Happy Returns shipment ID.

Example:

"SHIP-001"

carrier
string

The name of the carrier or N/A if the carrier has not yet been assigned.

Examples:

"USPS"

"N/A"

tracking_number
string

The tracking number provided by the carrier or N/A if the carrier has not yet been assigned.

Examples:

"28735625627856237856287"

"N/A"

label_status
string

Status of the shipment according to EasyPost:

  • no shipment status
  • pre_transit
  • in_transit
  • out_for_delivery
  • delivered
  • error
  • failure

N/A if no label status has been provided yet.

Examples:

"pre_transit"

"delivered"

label_updated_at
string

The date and time (ISO 8601 format) when the last status update occurred.

N/A: label not yet updated.

Examples:

"2025-11-07T01:47:42+00:00"

"N/A"

destination_id
integer | null

The Loop destination ID. null when the return has no destination.

Examples:

2232

null

destination_provider_location_id
integer | null

The commerce platform's numeric location ID for the return shipping destination (the same destination as destination_id), when that destination has a linked Loop location. null when no location is linked or when the return has no destination. This is separate from line_items[].provider_location_id, which describes fulfillment/origin context per line item.

Examples:

987654321

null

return_method
object | null

If the return is not being sent back through boxing and shipping, this field describes the way in which the item is being returned. These are usually pick-up or drop-off options.

package_reference
string | null

The value that identifies the physical package that the return is in regardless if it was returned via box & ship or a different return method.

Example:

"PKG-12345"

type
string

The return type.

Examples:

"standard"

"warranty"

Response

200

Return a 200 status to indicate that the data was received successfully