The customer return shipment object

This document defines the structure of the Customer Return Shipment (CRS) object in Fulfil. It is used to serialize and transmit information about return shipments initiated by customers, including metadata, addresses, products being returned, and related sales orders.

GET Customer Return Shipments

Query Parameters

ParameterTypeRequiredDefaultDescription
statusstringNopendingFilter by status: pending, open, done
idsstringNo-Comma-separated list of shipment IDs (limit 250)
numbersstringNo-Comma-separated list of shipment numbers (limit 250)
planned_date_mindateNo-Filter shipments with planned date >= this date (YYYY-MM-DD)
planned_date_maxdateNo-Filter shipments with planned date <= this date (YYYY-MM-DD)
updated_at_mindatetimeNo-Filter shipments updated >= this timestamp (ISO 8601)
updated_at_maxdatetimeNo-Filter shipments updated <= this timestamp (ISO 8601)
pageintegerNo1Page number for pagination (starts at 1)

Status Values

  • pending (default): Returns shipments in draft state that have not been acknowledged by 3PL
    state='draft' AND acknowledged_by_3pl_at=None
  • open: Returns shipments in draft state that have been acknowledged by 3PL
    state='draft' AND acknowledged_by_3pl_at IS NOT None
  • done: Returns completed shipments
    state IN ('received', 'done')

Response Structure

Top-Level Fields

FieldTypeDescription
idintegerUnique identifier for the customer return shipment
numberstringCustomer return shipment number (e.g., "CRS-00001")
warehouseobjectWarehouse where the return will be received
planned_datestring|nullPlanned date for the return (ISO 8601: YYYY-MM-DD)
customerobjectCustomer returning the items
origin_addressobject|nullAddress where return ships FROM (customer's address)
delivery_addressobject|nullAddress where return ships TO (warehouse return address)
create_datestringWhen the shipment was created (ISO 8601 datetime)
write_datestring|nullWhen the shipment was last updated (ISO 8601 datetime)
carrier_codestring|nullCarrier cost method (e.g., "ups", "fedex", "usps")
service_codestring|nullCarrier service code (e.g., "ground", "express")
tracking_numberobject|nullTracking information for the return shipment
linesarrayArray of line items being returned
shipping_instructionsstring|nullSpecial shipping instructions for the return
channelsarrayArray of sales channels (unique list)
related_ordersarrayArray of related sales orders for this return
request_confirmationbooleanWhether delivery confirmation is requested


warehouse

Warehouse where the returned items are expected to arrive.

{
  "id": 12,
  "code": "NY-WH",
  "name": "New York Warehouse"
}


customer

Customer who initiated the return.

{
  "name": "Jane Doe",
  "phone": "+1-555-0123",
  "email": "[email protected]",
  "code": "CUST-JANE"
}


Address Object

Both origin_address and delivery_address follow this structure:


FieldTypeDescription
namestring|nullContact name
address1string|nullPrimary street address
address2string|nullSecondary street address (apartment, suite, etc.)
business_namestring|nullBusiness/company name
citystring|nullCity name
zipstring|nullPostal/ZIP code
country_codestring|nullISO 3166-1 alpha-2 country code (e.g., "US", "CA")
subdivision_codestring|nullState/province code (e.g., "CA" for California)
phonestring|nullPhone number
emailstring|nullEmail address
edi_location_numberstring|nullEDI location qualifier/number
dockstring|nullDock or door number for delivery
codestring|nullAddress code/identifier
{
  "name": "Jane Doe",
  "address1": "123 Main Street",
  "address2": "Apt 4B",
  "business_name": "Jane's Boutique",
  "city": "New York",
  "zip": "10001",
  "country_code": "US",
  "subdivision_code": "NY",
  "phone": "+1-555-0123",
  "email": "[email protected]",
  "edi_location_number": null,
  "dock": null,
  "code": null
}


Tracking Number Object

FieldTypeDescription
carrier_identifierstring|nullInternal carrier identifier (e.g., "ups", "fedex", "usps")
tracking_numberstringThe tracking number assigned by the carrier
delivery_datestring|nullActual delivery date (ISO 8601 date format) if delivered
tracking_urlstring|nullURL to track the shipment on the carrier's website
statestringTracking state (e.g., "in_transit", "delivered", "unknown", "exception", "out_for_delivery", "available_for_pickup", "pending_cancellation")
scacstring|nullStandard Carrier Alpha Code (e.g., "UPSS", "FDEG", "USPS")
bill_of_ladingstring|nullBill of lading number
load_numberstring|nullLoad/shipment reference number
{
  "carrier_identifier": "ups",
  "tracking_number": "1Z9999999999999999",
  "delivery_date": "2025-11-25",
  "tracking_url": "https://www.ups.com/track?tracknum=1Z9999999999999999",
  "state": "delivered",
  "scac": "UPSS",
  "bill_of_lading": null,
  "load_number": null
}


Line Item Object

FieldTypeDescription
idintegerStock move ID
productobjectProduct being returned
product.idintegerProduct ID
product.namestringProduct name
product.codestringProduct SKU/code
product.upcstring|nullUniversal Product Code (barcode)
product.hs_codestring|nullHarmonized System code for customs
quantityfloatQuantity being returned
unitstringUnit of measure symbol (e.g., "ea", "lb", "kg")
orderobject|undefinedOriginal sales order info (only if return originated from sale)
order.idintegerSales order ID
order.numberstringSales order number
order.sale_datestringDate the order was placed (ISO 8601 date)
order.referencestring|nullOrder reference/PO number
order.channelobjectSales channel information
order.channel.idintegerChannel ID
order.channel.codestringChannel code
order.channel.namestringChannel name
order.channel_segmentstring|nullChannel segment identifier
unit_pricefloatUnit price from original order (only if from sale)
unit_customs_valuefloatUnit customs value from original order (only if from sale)
currencystringCurrency code (e.g., "USD", "EUR") (only if from sale)
{
  "id": 54321,
  "product": {
    "id": 789,
    "name": "Blue Widget",
    "code": "WIDGET-BLUE-001",
    "upc": "012345678901",
    "hs_code": "9503.00"
  },
  "quantity": 2.0,
  "unit": "ea",
  "order": {
    "id": 9876,
    "number": "SO-00123",
    "sale_date": "2025-11-10",
    "reference": "PO-ABC-123",
    "channel": {
      "id": 3,
      "code": "SHOPIFY",
      "name": "Shopify Store"
    },
    "channel_segment": "B2C"
  },
  "unit_price": 29.99,
  "unit_customs_value": 25.00,
  "currency": "USD"
}


Channel Object

FieldTypeDescription
idintegerSales channel ID
codestringSales channel code
namestringSales channel name
{
  "id": 3,
  "code": "SHOPIFY",
  "name": "Shopify Store"
}


Related Order Object

FieldTypeDescription
idintegerSales order ID
numberstringSales order number
referencestring|nullOrder reference/PO number
edi_attributesobject|nullEDI-related attributes for the order
shipping_start_datestring|nullRequested shipping window start date (ISO 8601 date)
shipping_end_datestring|nullRequested shipping window end date (ISO 8601 date)
{
  "id": 9876,
  "number": "SO-00123",
  "reference": "PO-ABC-123",
  "edi_attributes": {
    "edi_po_number": "PO-ABC-123",
    "edi_order_type": "SA"
  },
  "shipping_start_date": "2025-11-15",
  "shipping_end_date": "2025-11-18"
}

Notes

  • Maximum 250 records per page
  • Dates are in ISO 8601 format (YYYY-MM-DD)
  • Datetimes are in ISO 8601 format (YYYY-MM-DDTHH:MM:SS)
  • origin_address is the customer's address (where return ships FROM)
  • delivery_address is the warehouse's return address (where return ships TO)
  • tracking_number field only present when a tracking label has been generated
  • order, unit_price, unit_customs_value, and currency fields on line items only present when return originated from a sales order
  • channels array contains unique channel information aggregated from all line items
  • related_orders array includes all sales orders associated with any line in the return shipment
  • Product metafields may be included if configured as exposed metafields for the product.product model

Example Response

{
  "data": [
    {
      "id": 12345,
      "number": "CRS-00042",
      "warehouse": {
        "id": 5,
        "code": "WH-MAIN",
        "name": "Main Warehouse"
      },
      "planned_date": "2025-11-25",
      "customer": {
        "name": "John Doe",
        "phone": "+1-555-0123",
        "email": "[email protected]",
        "code": "CUST-001"
      },
      "origin_address": {
        "name": "John Doe",
        "address1": "123 Main St",
        "address2": "Apt 4B",
        "business_name": null,
        "city": "Los Angeles",
        "zip": "90001",
        "country_code": "US",
        "subdivision_code": "CA",
        "phone": "+1-555-0123",
        "email": "[email protected]",
        "edi_location_number": null,
        "dock": null,
        "code": null
      },
      "delivery_address": {
        "name": "Main Warehouse",
        "address1": "456 Warehouse Ave",
        "address2": null,
        "business_name": "Acme Corp",
        "city": "Commerce",
        "zip": "90040",
        "country_code": "US",
        "subdivision_code": "CA",
        "phone": "+1-555-9999",
        "email": "[email protected]",
        "edi_location_number": null,
        "dock": "DOCK-3",
        "code": null
      },
      "create_date": "2025-11-20T10:30:00",
      "write_date": "2025-11-21T14:22:15",
      "carrier_code": "ups",
      "service_code": "ground",
      "tracking_number": {
        "tracking_number": "1Z9999999999999999",
        "tracking_url": "https://www.ups.com/track?tracknum=1Z9999999999999999",
        "state": "in_transit",
        "carrier": {
          "id": 10,
          "name": "UPS",
          "code": "ups"
        },
        "carrier_service": {
          "id": 25,
          "name": "UPS Ground",
          "code": "ground"
        }
      },
      "lines": [
        {
          "id": 54321,
          "product": {
            "id": 789,
            "name": "Blue Widget",
            "code": "WIDGET-BLUE-001",
            "upc": "012345678901",
            "hs_code": "9503.00"
          },
          "quantity": 2.0,
          "unit": "ea",
          "order": {
            "id": 9876,
            "number": "SO-00123",
            "sale_date": "2025-11-10",
            "reference": "PO-ABC-123",
            "channel": {
              "id": 3,
              "code": "SHOPIFY",
              "name": "Shopify Store"
            },
            "channel_segment": "B2C"
          },
          "unit_price": 29.99,
          "unit_customs_value": 25.00,
          "currency": "USD"
        }
      ],
      "shipping_instructions": "Handle with care - fragile items",
      "channels": [
        {
          "id": 3,
          "code": "SHOPIFY",
          "name": "Shopify Store"
        }
      ],
      "related_orders": [
        {
          "id": 9876,
          "number": "SO-00123",
          "reference": "PO-ABC-123",
          "edi_attributes": {
            "edi_po_number": "PO-ABC-123",
            "edi_order_type": "SA"
          },
          "shipping_start_date": "2025-11-15",
          "shipping_end_date": "2025-11-18"
        }
      ],
      "request_confirmation": true
    }
  ],
  "has_more": false
}