Return Labels

Provide shipment labels for your customers to return products.

About return labels

Many retail companies enable their customers to send back products due to issues with a product or as part of their business model. Most shipping carriers have a different return method that enables you, the shipper, to:

  • not get charged for shipping the package until the label is scanned (some carriers do charge a fee per requested return label, however);
  • print a label with a tentative weight or no weight at all; and
  • specify your fulfillment center as the destination and a customer location as the origin.

The Shipium system supports return label generation and offers three ways for you to retrieve a return shipment label:

  • Generate a return label at the same time as shipment label generation. This method involves including additional data fields when calling the Carrier and Method Selection & Shipment Label API. Instructions are included in this document.
  • Generate a return label independent of shipment label generation. This method involves calling the Return Label API. Instructions are included in the Return Label API document.
  • Print ad-hoc return labels from the Shipium Console. This method satisfies the need to create ad-hoc return labels for customers. Guidance is included in the Print Labels document.

You also can retrieve previously created return labels via an API call.

👉

Test mode

Want to run some examples and not charge any real money against your account?

You can add testMode: "true" to the data passed to any label call to retrieve labels without charging money in a carrier-specific manner. Most carriers will mark their labels in a way to make clear that they are void, such as inserting "VOID" throughout the label or using a predefined ID.

Examples below all contain the testMode flag to err on the side of caution – remove it to make production calls.

Generate a return label at the same time as shipment label generation

With this option, you can make a single call to Shipium's Carrier and Method Selection & Shipment Label API and receive both an outbound shipping label and a return label rate shopped across three national carriers: FedEx, United Parcel Service (UPS), and United States Postal Service (USPS).

📘

Authentication for API calls

In the cURL examples on this page, the environment variable AUTHSTRING is used to handle authorization. The recipe below shows how to set it correctly for both API key and OAuth users.

The Carrier and Method Selection & Shipment Label API document provides an overview of special cases that can be handled when calling the API, such as hazardous material. Those same cases are supported for return labels as well.

The following table provides required and optional field descriptions for calling to retrieve a return label and shipment label simultaneously. You can find additional support in Carrier and Method Selection & Shipment Label API Reference.

Request field

Required/Optional

Field properties

Description

inlineReturnsLabel
 .partnerShipmentId

Optional

String
Ex.: myCustomPartnerShipmentId123

An optional unique identifier that your organization may use for this shipment

inlineReturnsLabel
 .returnToAddress
 .countryCode

Required

String
Ex.: US

The ISO 3166-1 country code for the address of the location where the package is being returned (for the return label)

inlineReturnsLabel
 .returnToAddress
 .postalCode

Required

String
Ex.: 87121

A country-code-appropriate postal code for the address of the location where the package is being returned (for the return label)

inlineReturnsLabel
 .returnToAddress
 .addressType

Required

String enumeration
Values are:

  • commercial
  • residential

The type of location for this return-to address (for the return label)

inlineReturnsLabel
 .returnToAddress.city

Optional

String

The name of the city for the address of the location where the package is being returned (for the return label)

inlineReturnsLabel
 .returnToAddress
 .company

Optional

String

The company name for the address of the location where the package is being returned (for the return label)

inlineReturnsLabel
 .returnToAddress
 .emailAddress

Optional

String

The email address for the contact associated with the address of the location where the package is being returned (for the return label)

inlineReturnsLabel
 .returnToAddress.name

Optional

String

The name associated with the address of the location where the package is being returned (for the return label)

inlineReturnsLabel
 .returnToAddress
 .phoneNumber

Optional

String

The phone number for the contact associated with the address of the location where the package is being returned (for the return label)

inlineReturnsLabel
 .returnToAddress.state

Optional

String

The 2-letter abbreviation of the state for the address of the location where the package is being returned (for the return label)

inlineReturnsLabel
 .returnToAddress
 .street1

Optional

String

The first address line of the location where the package is being returned (for the return label)

inlineReturnsLabel
 .returnToAddress
 .street2

Optional

String

The second address line of the location where the package is being returned (for the return label)

inlineReturnsLabel
  .returnToContactInfo
 .contactName

Optional

String

The name of the contact for the return-to address

inlineReturnsLabel
  .returnToContactInfo
 .phoneNumber

Optional

String

The phone number of the contact for the return-to address

inlineReturnsLabel
  .returnToContactInfo
 .phoneNumberCountryCode

Optional

String

The phone number country code of the contact for the return-to address

inlineReturnsLabel
  .returnToContactInfo
 .email

Optional

String

The email address of the contact for the return-to address

inlineReturnsLabel
  .fulfillmentContext

Optional, but required for multiple returns in the shipment

String

When present, this is used to limit carrier selection to carrier accounts that contain a matching fulfillment context for the returns. It must be a Returns type fulfillment context, and if it is included, the returnToAddress information is optional. You can find guidance on setting up a returns fulfillment context in Fulfillment Contexts.

inlineReturnsLabel
  .inlineReturnReference
  Identifier

Optional

String

An optional string identifier passed to the carrier; you may include up to 5 identifiers, appending numbers 2-5 to inlineReturnReferenceIdentifier.

inlineReturnsLabel
  .saturdayDelivery

Optional

Boolean
true or false

If true, this indicates that the shipment is marked for Saturday delivery. It does not guarantee delivery on Saturday. You can find details about Saturday delivery in the Special Processing Properties document.

currencyCode

Required

String

Currency in which all the rates for shipping carrier selection costs will be calculated

generateLabel

Optional

Boolean
true or false

When true, a request to the selected carrier will be sent to generate a label for the shipment based on the information provided in the labelParameters field of this object. When false, this step is skipped and the system will record what carrier service method would have generated a label for. The default value is true.

labelParameters
  .currencyCode

Optional

String

Currency in which all the rates for shipping carrier selection costs will be calculated

labelParameters
  .customLabelEntries

Optional

String

List of formats to generate the package label in

labelParameters
  .includeLabelImagesIn
   Response

Optional

Boolean
true or false

If true, the response will include the raw image data of the labels that were requested to be generated by the carrier.

labelParameters
  .labelFormats

Optional

String enumeration
Supported formats are:

  • pdf
  • png
  • zpl

List of formats to generate the package label in

labelParameters
  .eligibleForManifest

Optional

Boolean
true or false

When true, or null, this label will be included in end-of-day and scheduled manifests. False indicates that the label should not be included in any manifests.

labelParameters
  .contentDescription

Optional

String

A brief description of the contents being returned that is passed to the carrier; must be 1-35 characters

shipmentParameters
  .destinationAddress
  .countryCode

Required

String

The ISO 3166-1 country code for the destination address

shipmentParameters
  .destinationAddress
  .postalCode

Required

String

A country-code-appropriate postal code for the destination address

shipmentParameters
  .destinationAddress
  .addressType

Required

String enumeration
Values are:

  • commercial
  • residential

The type of location for the destination address

shipmentParameters
  .destinationAddress
  .city

Optional

String

The name of the city for the destination address

shipmentParameters
  .destinationAddress
  .company

Optional

String

The company name for the destination address

shipmentParameters
  .destinationAddress
  .emailAddress

Optional

String

The email address of the contact for the destination address

shipmentParameters
  .destinationAddress
  .name

Optional

String

The name of the contact for the destination address

shipmentParameters
  .destinationAddress
  .phoneNumber

Optional

String

The phone number of the contact for the destination address

shipmentParameters
  .destinationAddress
  .state

Optional

String

The 2-letter postal abbreviation of the state for the destination address

shipmentParameters
  .destinationAddress
  .street1

Optional

String

The first destination address line

shipmentParameters
  .destinationAddress
  .street2

Optional

String

The second destination address line

shipmentParameters
  .orderItemQuantities
  .productDetails

Optional, but required for international shipments and shipments containing hazardous materials

String
Ex.:

  • limited_quantity (or lq)
  • ormd (or orm-d)
  • perishable
  • bound_printed_matter (or bpm)

A list of properties that may affect the shipping of the product

shipmentParameters
  .orderItemQuantities
  .productId

Optional, but required for international shipments and shipments containing hazardous materials

String

A product ID for the product being checked (ISBN, UPC, etc.)

shipmentParameters
  .orderItemQuantities
  .quantity

Optional, but required for international shipments and shipments containing hazardous materials

Integer ($int32)

The number of units of the product

shipmentParameters
  .orderItemQuantities
  .deliveryEstimateId

Optional

String

The Delivery Estimate ID associated with the product

shipmentParameters
  .orderItemQuantities
  .hazmat

Optional

Boolean
true or false

If true, this indicates that the item is hazardous material (hazmat). The default value is false.

shipmentParameters
  .orderItemQuantities
  .shipiumOrderId

Optional

String

Identification use to represent the group of delivery estimates purchased

shipmentParameters
  .shipFromAddress
  .countryCode

Required

String

The ISO 3166-1 country code for the origin address

shipmentParameters
  .shipFromAddress
  .postalCode

Required

String

A country-code-appropriate postal code for the origin address

shipmentParameters
  .shipFromAddress
  .addressType

Optional

String enumeration
Values are:

  • commercial
  • residential

The type of location for the origin address

shipmentParameters
  .shipFromAddress
  .city

Optional

String

The name of the city for the origin address

shipmentParameters
  .shipFromAddress
  .company

Optional

String

The company name for the origin address

shipmentParameters
  .shipFromAddress
  .emailAddress

Optional

String

The email address of the contact for the origin address

shipmentParameters
  .shipFromAddress
  .name

Optional

String

The name of the contact for the origin address

shipmentParameters
  .shipFromAddress
  .phoneNumber

Optional

String

The phone number of the contact for the origin address

shipmentParameters
  .shipFromAddress
  .state

Optional

String

The 2-letter postal abbreviation of the state for the origin address

shipmentParameters
  .shipFromAddress
  .street1

Optional

String

The first origin address line

shipmentParameters
  .useShipFromAddress
  InRequest

Optional

Boolean
true or false

When true, this optional field overrides the shipper's contact name and address configured for the shipping origin in the Shipium Console, opting to use the shipFromAddress information passed in the API call.
Note: If shipping with carrierLaserShip, use caution with this flag as the carrier's strict address matching could result in an error.

shipmentParameters
  .returnToAddress.name

Optional

String

The name associated with the address of the location where the package is being returned; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .returnToAddress
  .phoneNumber

Optional

String

The phone number of the contact associated with the address of the location where the package is being returned; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .returnToAddress
  .phoneNumber
CountryCode

Optional

String

The phone number country code of the contact associated with the address of the location where the package is being returned; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .returnToAddress
  .emailAddress

Optional

String

The email address of the contact associated with the address of the location where the package is being returned; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .returnToAddress
  .company

Optional

String

The company of the contact associated with the address of the location where the package is being returned; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .returnToAddress
  .street1

Optional

String

The first address line of the location where the package is being returned; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .returnToAddress
  .street2

Optional

String

The second address line of the location where the package is being returned; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .returnToAddress
  .city

Optional

String

The city of the location where the package is being returned; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .returnToAddress
  .state

Optional

String

The 2-letter abbreviation of the location's state where the package is being returned; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .returnToAddress
  .countryCode

Optional, but required if including a returnToAddress in shipmentParameters

String

The ISO 3166-1 country code for the address of the location where the package is being returned; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .returnToAddress
  .postalCode

Optional, but required if including a returnToAddress in shipmentParameters

String

A country code appropriate postal code for the address of the location where the package is being returned; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .returnToAddress
  .addressType

Optional

String enumeration
Values are:

  • commercial
  • residential

The type of location for the return-to address; this return-to address will override a return-to address configured for an origin or carrier account.

shipmentParameters
  .deliveredDateTime

Optional

String ($date-time)

The timestamp for when the package was delivered to the customer; the timestamp must be a valid ISO 8601 timestamp.

shipmentParameters
  .desiredDeliveryDate

Optional

String

The string representation of either an ISO-8601 date or a LocalDate: yyyy-mm-dd. The date or datetime the package is intended to arrive to the customer. This is used to determine the most appropriate service method when generating a label.

shipmentParameters
  .fulfillmentContext

Optional, but required if your organization has more than one returns type fulfillment context

String

This is used to limit carrier selection to carrier accounts that contain a matching fulfillment context.

shipmentParameters
  .orderedDateTime

Optional

String ($date-time)

The timestamp for when the customer placed the order for this product; the timestamp must be a valid ISO 8601 timestamp.

shipmentParameters .testMode

Optional

Boolean
true or false

If true, a test mode shipment will be created. Carrier selection will consider carriers and service methods in test mode, and label generation will generate a test label.

shipmentParameters
  .packagingType
  .linearDimensions
  .height

Conditional

Number ($float)

The least long linear dimension (i.e., the shortest side of a box or envelope).
Note on envelopes: This height should represent the highest product you would reasonably put in this envelope before losing more than 10% of the length of the envelope in other dimensions.

  • *REQUIRED when packagingTypeId is not provided.** OPTIONAL when packagingTypeId is provided; in this case, the value from the request will be used as a fallback if dimensions are not defined in the pre-configured packaging.
shipmentParameters
  .packagingType
  .linearDimensions
  .length

Conditional

Number ($float)

The longest linear dimension (i.e., the longest side of a box or envelope)

  • *REQUIRED when packagingTypeId is not provided.** OPTIONAL when packagingTypeId is provided; in this case, the value from the request will be used as a fallback if dimensions are not defined in the pre-configured packaging.
shipmentParameters
  .packagingType
  .linearDimensions
  .linearUnit

Conditional

String enumeration
Values are:

  • cm (centimeter)
  • in (inch)

The unit in which linear dimensions are provided

  • *REQUIRED when packagingTypeId is not provided.** OPTIONAL when packagingTypeId is provided; in this case, the value from the request will be used as a fallback if dimensions are not defined in the pre-configured packaging.
shipmentParameters
  .packagingType
  .linearDimensions
  .width

Conditional

Number ($float)

The second longest linear dimension (i.e., the second longest side of a box or envelope)

  • *REQUIRED when packagingTypeId is not provided.** OPTIONAL when packagingTypeId is provided; in this case, the value from the request will be used as a fallback if dimensions are not defined in the pre-configured packaging.
shipmentParameters
  .packagingType
  .packagingMaterial

Conditional

String enumeration
Values are:

  • box
  • envelope
  • flat_pack

The material type of the packaging. REQUIRED whenpackagingTypeId is not provided. OPTIONAL when packagingTypeId is provided; in this case, the value from the request will be used as a fallback if the packagingMaterial is not defined in the pre-configured packaging associated with the packagingTypeId.

shipmentParameters
  .packagingType
  .packagingSizeName

Optional

String
Ex.: 13x12x10 box

A custom name for the packaging

shipmentParameters
  .packagingType
  .packagingTypeId

Conditional

String
Ex.: ebd94f8b-d390-4c9c-987f-b88343f5bf45

The unique identifier for a pre-configured packaging type defined in the Shipium Console. When provided, the system uses the pre-configured packaging properties (dimensions, material, weight) associated with this ID. When this value is present, linearDimensions and packagingMaterial become optional as fallback fields. When this value is absent, linearDimensions and packagingMaterial are required.

shipmentParameters
  .packagingType
  .packagingWeight
  .weight

Optional

Number ($float)

The value of the weight

shipmentParameters
  .packagingType
  .packagingWeight
  .weightUnit

Optional

String
Values are:

  • g (gram)
  • kg (kilogram)
  • lb (pound)
  • oz (ounce)

The unit in which weight values are provided

shipmentParameters
  .referenceIdentifier

Optional

String

String passed to carriers as a reference

shipmentParameters
  .saturdayDelivery

Optional

Boolean
true or false

If true, this indicates that the shipment is marked for Saturday delivery. It does not guarantee delivery on Saturday. You can find details about Saturday delivery in the Special Processing Properties document.

shipmentParameters
  .shipOption

Optional

String
Ex.: standard

A high-level shipping option shown to or selected by a customer

shipmentParameters
  .shipmentTags

Optional

String

A collection of free-form tags that may be added to the shipment

shipmentParameters
  .shippedDateTime

Optional

String ($date-time)

The timestamp for when a partner will ship the product from their warehouse; the timestamp must be a valid ISO 8601 timestamp. If not provided, this value defaults to orderedDateTime.

shipmentParameters
  .totalWeight.weight

Optional

Number ($float)

The value of the weight

shipmentParameters
  .totalWeight
  .weightUnit

Optional

String
Values are:

  • g (gram)
  • kg (kilogram)
  • lb (pound)
  • oz (ounce)

The unit in which weight values are provided

Example cURL request

curl --request POST   
  --url https://api.shipium.com/api/v1/shipment/carrierselection/label 
  --header 'accept: application/json' 
  --header $AUTHSTRING  
  --header 'content-type: application/json'  
  --data 'INSERT REQUEST BODY FROM BELOW'

Example request body

When requesting a return label at the same time as the original shipment label generation, you'll add the inlineReturnsLabel object to your call, as shown in the following example. The returnToAddress and returnToContact fields for the inlineReturnsLabel are optional when providing fulfillment context values; you can provide values for these fields if you wish to override an address or contact information (for the return label) associated with an existing fulfillment context in the Shipium platform. A fulfillment context value can be provided in the call to associate the return to a Returns type fulfillment context that your organization has set up for returns. You can find more information about setting up a fulfillment context in Fulfillment Contexts.

In addition to the override for the return-to address and contact information for the return label, you can include an override for any configured values for the outbound label's return-to address. To provide this override, you would add the returnToAddress fields to shipmentParameters, as shown in the following example.

{
    "inlineReturnsLabel": {
        "partnerShipmentId": "myCustomPartnerShipmentId123",
        "returnToAddress": {
            "countryCode": "US",
            "postalCode": "17901",
            "addressType": "commercial",
            "city": "Pottsville",
            "company": "Sell It",
            "emailAddress": "[email protected]",
            "name": "Ro Drunner",
            "phoneNumber": "5555555555",
            "state": "PA",
            "street1": "401 Centre St."
        },
        "returnToContactInfo": {
            "contactName": "Ro Drunner",
            "phoneNumber": "5555555555",
            "phoneNumberCountryCode": "1",
            "email": "[email protected]"
	},
        "fulfillmentContext": "b4a3e646-4a10-4c7b-b974-1f115c9890c5",
        "inlineReturnReferenceIdentifier": "ReturnLane1",
        "inlineReturnReferenceIdentifier2": "LVO-34",
        "saturdayDelivery": true
    },
    "currencyCode": "usd",
    "generateLabel": true,
    "labelParameters": {
        "currencyCode": "usd",
        "customLabelEntries": {},
        "includeLabelImagesInResponse": true,
        "labelFormats": [
            "zpl"
        ],
        "eligibleForManifest": true,
        "contentDescription": "general merchandise"
    },
    "shipmentParameters": {
        "destinationAddress": {
            "countryCode": "US",
            "postalCode": "87121",
            "addressType": "commercial",
            "city": "Albuquerque",
            "company": "Buy It",
            "emailAddress": "[email protected]",
            "name": "Wile E. Coyote",
            "phoneNumber": "888-555-1234",
            "state": "NM",
            "street1": "123 Main St.",
            "street2": "Suite 42"
        },
        "orderItemQuantities": [
            {
                "productDetails": [
                ],
                "productId": "RN03947--Z43121",
                "quantity": 3,
                "deliveryEstimateId": "feea39ed-20c6-4b3b-98dd-34bf1d89a933",
                "hazmat": false,
                "shipiumOrderId": "b0f7037a-2f37-4df8-b350-8ee1fb6eadec"
            }
        ],
        "shipFromAddress": {
            "countryCode": "US",
            "postalCode": "17901",
            "addressType": "commercial",
            "city": "Pottsville",
            "company": "Sell It",
            "emailAddress": "[email protected]",
            "name": "Ro Drunner",
            "phoneNumber": "6612475319",
            "state": "PA",
            "street1": "401 N. Centre St."
        },
        "returnToAddress": {
            "name": "Rod Runner",
            "phoneNumber": "865-433-9999",
            "phoneNumberCountryCode": "+2",
            "emailAddress": "[email protected]",
            "company": "ACME",
            "street1": "456 Main St.",
            "street2": "Suite 8",
            "city": "Albuquerque",
            "state": "NM",
            "countryCode": "US",
            "postalCode": "87121",
            "addressType": "commercial"
  },
        "deliveredDateTime": "2019-10-31T10:50:11.123456Z",
        "desiredDeliveryDate": "2019-10-31T20:00:00Z",
        "fulfillmentContext": "47e5608b-b606-426c-b3e2-b13acb1af22d",
        "orderedDateTime": "2019-10-29T09:12:33.123456Z",
        "testMode": true,
        "packagingType": {
            "linearDimensions": {
                "height": 5,
                "length": 5,
                "linearUnit": "in",
                "width": 5
            },
            "packagingMaterial": "box",
            "packagingSizeName": "5x5x5 box",
            "packagingWeight": {
                "weight": 2,
                "weightUnit": "lb"
            }
        },
        "referenceIdentifier": "PSFC-2478",
        "saturdayDelivery": false,
        "shipOption": "standard",
        "shipmentTags": [
            "PSFC",
            "Returns"
        ],
        "shippedDateTime": "2019-10-29T09:12:33.123456Z",
        "totalWeight": {
            "weight": 10,
            "weightUnit": "lb"
        }
    }
}

Example response body

{
    "shipiumShipmentId": "ba1919a1-1c9a-4f53-93a7-8af49213be7c",
    "orderedDateTime": "2019-10-29T09:12:33.123456Z",
    "shippedDateTime": "2019-10-29T09:12:33.123456Z",
    "returnsLabel": {
        "shipiumShipmentId": "490b4ee3-147e-455b-aca7-a70456a58104",
        "carrierSelectionId": "c7ca006a-7c45-42df-a863-ffdca2225a93",
        "shipiumLabelId": "fdb3fa70-ddc7-4c27-abf0-29b8bb1e55eb",
        "documents": [
            {
                "labelExpiration": "2024-05-02T17:23:29.903Z",
                "labelFormat": "zpl",
                "labelProperties": {
                    "height": 6.0,
                    "width": 4.0,
                    "linearUnits": "in",
                    "dpi": 203,
                    "labelOrientation": "rotate_0"
                },
                "labelImage": {
                    "imageEncoding": "base64",
                    "imageContents": "Cl5YQQ0KXkxSTg0KXk1OWQ0KXk1GTixODQpeTEgxMCwxMg0KXk1DWQ0KXlBPSQ0KDQpeQ0kyNw0KXkZPMTUsN15BME4sMjAsMjReRlZKT0hOIERPRV5GUw0KXkZPMTUsMjdeQTBOLDIwLDI0XkZWMjA2MjY1MjczM15GUw0KXkZPMTUsNDdeQTBOLDIwLDI0XkZWSk9ITiBET0VeRlMNCl5GTzE1LDY3XkEwTiwyMCwyNF5GVjEwMCBNQUlOIFNULl5GUw0KXkZPMTUsODdeQTBOLDIwLDI0XkZWR0VSTUFOVE9XTiAgV0kgNTMwMjJeRlMNCl5GTzE1LDE0Ml5BME4sMjgsMzJeRlZTSElQIFRPOiBeRlMNCl5GTzYxLDE2Nl5BME4sMjgsMzJeRlZCSUxMIFNISVBQRVJeRlMNCl5GTzYxLDE5NF5BME4sMjgsMzJeRlYyMTIyMjIzNDM0XkZTDQpeRk82MSwyMjJeQTBOLDI4LDMyXkZWQklMTCBTSElQUEVSXkZTDQpeRk82MSwyNTFeQTBOLDI4LDMyXkZWMTIyMjQgQkVMLVJFRCBSRF5GUw0KXkZPNjEsMjc5XkEwTiw0NSw0NF5GVkJFTExFVlVFICBXQSAgOTgwMDVeRlMNCl5GTzQ0Niw5XkEwTiwzMCwzNF5GVjIgTEJTXkZTDQpeRk82ODMsOV5BME4sMjgsMzJeRlYxIE9GIDFeRlMNCl5GTzQwNiw0N15BME4sODAsNzBeRlZSU15GUw0KXkZPNTk5LDM2OV5BME4sNTYsNTheRlZTQU1QTEVeRlMNCl5GTzEwNiw0NTJeQTBOLDMwLDM0XkZWVVBTXkZTDQpeRk82NCw0ODJeQTBOLDMwLDM0XkZWTUFYSUNPREVeRlMNCl5GTzM4LDUxMl5BME4sMzAsMzReRlZQUklOVFMgSEVSRV5GUw0KXkZPMzAwLDQzNl5BME4sMzAsMzReRlZVUFMgUk9VVElORyBDT0RFIFBSSU5UUyBIRVJFXkZTDQpeRk8yNzAsNTI0XkEwTiwyOCwzMl5GVlVQUyBQT1NUQUwgQkFSQ09ERSBQUklOVFMgSEVSRV5GUw0KXkZPMTAsMTAzMV5BME4sMjIsMjZeRlZCSUxMSU5HOiBQL1BeRlMNCl5GTzEwLDEwNTNeQTBOLDIyLDI2XkZWREVTQzogY29udGVudERlc2NyaXB0aW9uXkZTDQpeRk8xMCwxMDc1XkEwTiwyMiwyNl5GVlJFVFVSTiBTRVJWSUNFXkZTDQpeRk80MTYsMTAzMV5BME4sNDQsMzZeRlZTQU1QTEVeRlMNCl5GTzEwLDExNjNeQTBOLDIyLDI2XkZWUmVmZXJlbmNlICMxOiBmZGIzZmE3MGRkYzc0YzI3YWJmMDI5YjhiYjFlNTVeRlMNCl5GTzE3NSwxMjAzXkEwTiwxNCwyMF5GVlhPTCAyNC4wNC4wNCAgICAgICAgICBOVjQ1IDE2LjBBIDA0LzIwMjQqXkZTDQpeRk85LDY3MF5BME4sNTYsNTheRlZVUFMgR1JPVU5EXkZTDQpeRk85LDczMV5BME4sMjQsMjheRlZUUkFDS0lORyAjOiBVUFMgVFJBQ0tJTkcgTlVNQkVSIFBSSU5UUyBIRVJFXkZTDQpeRk81OSw4NzNeQTBOLDMwLDM0XkZWVVBTIFRSQUNLSU5HIE5VTUJFUiBCQVJDT0RFIFBSSU5UUyBIRVJFXkZTDQpeRk82ODksNjUwXkdCMTI0LDEyNSwxMjQsQiwwXkZTDQpeRk8wLDY0OF5HQjgxMSwxNCwxNCxCLDBeRlMNCl5GTzAsNDIzXkdCODEyLDQsNCxCLDBeRlMNCl5GTzI0NCw0MjNeR0I0LDIyNSw0LEIsMF5GUw0KXkZPMCw3NzReR0I4MTIsNSw1LEIsMF5GUw0KXkZPMCwxMDEzXkdCODEyLDE0LDE0LEIsMF5GUw0KXkZPNjI5LDExNDcKXkdGQSwwMDk2OSwwMDk2OSwwMTksRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYwMDAwMDAwMDANCkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGMDAwMDAwMDAwDQpGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRjAwMDAwMDAwMA0KRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYwMDAwMDAwMDANCkYwMDAwMDAwMDAwMDAxRjgwMDAwMDAwMDAwMDBGMDAwMDAwMDAwDQpGMDAwMDAwMDAwMDAwMUY4MDAwMDAwMDAwMDAwRjAwMDAwMDAwMA0KRjAwMDAwMDAwMDNGODFGODNGQzAwMDAwMDAwMEYwMDAwMDAwMDANCkYwMDAwMDAwMDAzRjgxRjgzRkMwMDAwMDAwMDBGMDAwMDAwMDAwDQpGMDAwMDAwMDAwRkZGOUY5RkZGMDAwMDAwMDAwRjAwMDAwMDAwMA0KRjAwMDAwMDAwMEZGRjlGOUZGRjAwMDAwMDAwMEYwMDAwMDAwMDANCkYwMDAwMDAwMDBGRkZGRkZGRkZDMDAwMDAwMDBGMDAwMDAwMDAwDQpGMDAwMDAwMDAwRkZGRkZGRkZGQzAwMDAwMDAwRjAwMDAwMDAwMA0KRjAwMDAwMDAwMEYwN0ZGRkYwRkMwMDAwMDAwMEYwMDAwMDAwMDANCkYwMDAwMDAwMDBGMDdGRkZGMEZDMDAwMDAwMDBGMDAwMDAwMDAwDQpGMDAwMDAwMDAwRkMxRkZGQzNGMDAwMDAwMDAwRjAwMDAwMDAwMA0KRjAwMDAwMDAwMEZDMUZGRkMzRjAwMDAwMDAwMEYwMDAwMDAwMDANCkYwMDAwMDAwMDBGRkZGRkZGRkYwMDAwMDAwMDBGMDAwMDAwMDAwDQpGMDAwMDAwMDAwRkZGRkZGRkZGMDAwMDAwMDAwRjAwMDAwMDAwMA0KRjAwMDAwMDAwMDNGRkZGRkZGQzAwMDAwMDAwMEYwMDAwMDAwMDANCkYwMDAwMDAwMDAzRkZGRkZGRkMwMDAwMDAwMDBGMDAwMDAwMDAwDQpGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRjAwMDAwMDAwMA0KRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYwMDAwMDAwMDANCkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGMDAwMDAwMDAwDQpGMDAwMDAwMDAwMDFGRkZGRjAwMDAwMDAwMDAwRjAwMDAwMDAwMA0KRjAwMDAwMDAwMDAxRkZGRkYwMDAwMDAwMDAwMEYwMDAwMDAwMDANCkYwMDAwMDAwMDAwM0ZGRjlGQzAwMDAwMDAwMDBGMDAwMDAwMDAwDQpGMDAwMDAwMDAwMDNGRkY5RkMwMDAwMDAwMDAwRjAwMDAwMDAwMA0KRjAwMDAwMDAwMDNGRTFGODdGQzAwMDAwMDAwMEYwMDAwMDAwMDANCkYwMDAwMDAwMDAzRkUxRjg3RkMwMDAwMDAwMDBGMDAwMDAwMDAwDQpGMDAwMDAwMDAwRkY4MUY4M0ZGMDAwMDAwMDAwRjAwMDAwMDAwMA0KRjAwMDAwMDAwMEZGODFGODNGRjAwMDAwMDAwMEYwMDAwMDAwMDANCkYwMDAwMDAwMDBGRTAxRjgwM0YwMDAwMDAwMDBGMDAwMDAwMDAwDQpGMDAwMDAwMDAwRkUwMUY4MDNGMDAwMDAwMDAwRjAwMDAwMDAwMA0KRjAwMDAwMDAwMEYwMDFGODAwRjAwMDAwMDAwMEYwMDAwMDAwMDANCkYwMDAwMDAwMDBGMDAxRjgwMEYwMDAwMDAwMDBGMDAwMDAwMDAwDQpGMDAwMDAwMDAwMDAwMUY4MDAwMDAwMDAwMDAwRjAwMDAwMDAwMA0KRjAwMDAwMDAwMDAwMDFGODAwMDAwMDAwMDAwMEYwRkZEQzFDMDANCkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGMEZGREMxQzAwDQpGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRjAwQzFFM0MwMA0KRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYwMEMxRTNDMDANCkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGMDBDMUEyQzAwDQpGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRjAwQzFCNkMwMA0KRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYwMEMxQjZDMDANCjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMUI2QzAwDQowMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzE5Q0MwMA0KMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMEMxOUNDMDANCjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBDMTlDQzAwDQowMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwQzE4OEMwMA0KMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDANCjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwDQowMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMA0KXkRODQpeQ0YwLDE5MF5GTzQ3MCw5NTVeRkRYXkZTXlhaDQo="
                },
                "labelUrl": "https://shiptime-service.stage.shipium.com/api/v1/deliveryexperience/shipment/490b4ee3-147e-455b-aca7-a70456a58104/carrierSelection/c7ca006a-7c45-42df-a863-ffdca2225a93/label/fdb3fa70-ddc7-4c27-abf0-29b8bb1e55eb/zpl"
            }
        ],
        "internationalDocuments": []
    },
    "ignoreUpgradeSpendLimits": false,
    "deliveredDateTime": "2019-10-31T10:50:11.123456Z",
    "fulfillmentType": "customer",
    "packages": [
        {
            "orderItemQuantities": [
                {
                    "productId": "RN03947--Z43121",
                    "quantity": 3,
                    "productDetails": [],
                    "shipiumOrderId": "b0f7037a-2f37-4df8-b350-8ee1fb6eadec",
                    "hazmat": false
                }
            ],
            "packagingType": {
                "packagingMaterial": "box",
                "packagingSizeName": "5x5x5 box",
                "linearDimensions": {
                    "linearUnit": "in",
                    "length": 5,
                    "width": 5,
                    "height": 5
                },
                "packagingWeight": {
                    "weightUnit": "lb",
                    "weight": 2.0
                }
            },
            "totalWeight": {
                "weightUnit": "lb",
                "weight": 10.0
            },
            "deliveredDateTime": "2019-10-31T10:50:11.123456Z",
    "orderItemQuantities": [
        {
            "productId": "RN03947--Z43121",
            "quantity": 3,
            "productDetails": [],
            "shipiumOrderId": "b0f7037a-2f37-4df8-b350-8ee1fb6eadec",
            "hazmat": false
        }
    ],
    "destinationAddress": {
        "name": "Wile E. Coyote",
        "phoneNumber": "888-555-1234",
        "emailAddress": "[email protected]",
        "company": "Buy It",
        "street1": "123 Main St.",
        "street2": "Suite 42",
        "city": "Albuquerque",
        "state": "NM",
        "countryCode": "US",
        "postalCode": "87121",
        "addressType": "commercial"
    },
    "shipOption": "standard",
    "shipFromAddress": {
        "name": "Ro Drunner",
        "phoneNumber": "5555555555",
        "emailAddress": "[email protected]",
        "company": "Sell It",
        "street1": "401 Centre St.",
        "city": "Pottsville",
        "state": "PA",
        "countryCode": "US",
        "postalCode": "17901",
        "addressType": "commercial"
    },
    "returnToAddress": {
        "name": "Rod Runner",
        "phoneNumber": "865-433-9999",
        "phoneNumberCountryCode": "+2",
        "emailAddress": "[email protected]",
        "company": "ACME",
        "street1": "456 Main St.",
        "street2": "Suite 8",
        "city": "Albuquerque",
        "state": "NM",
        "countryCode": "US",
        "postalCode": "87121",
        "addressType": "commercial"
  },
    "fulfillmentContextId": "b4a3e646-4a10-4c7b-b974-1f115c9890c5",
    "requestFulfillmentContextIds": [
        "15daa625-aab7-4829-b224-3273bc89706d"
    ],
    "originId": "e8b5552c-7119-4f72-a611-e1fb42645a86",
    "packagingType": {
        "packagingMaterial": "box",
        "packagingSizeName": "5x5x5 box",
        "linearDimensions": {
            "linearUnit": "in",
            "length": 5,
            "width": 5,
            "height": 5
        },
        "packagingWeight": {
            "weightUnit": "lb",
            "weight": 2.0
        }
    },
    "totalWeight": {
        "weightUnit": "lb",
        "weight": 10.0
    },
    "shipmentTags": ["PSFC", "Returns"],
    "carrierSelection": {
        "status": "success",
        "statusDetails": "success",
        "carrierSelectionId": "843ad336-3ca3-4b76-9bfa-06d99d9dd519",
        "shipiumShipmentId": "ba1919a1-1c9a-4f53-93a7-8af49213be7c",
        "partnerShipmentId": "myCustomPartnerShipmentId123",
        "partnerId": "76abb3d4-8990-4f80-aa13-4c2007cb852a",
        "carrierAccountId": "625db658-e091-4e1b-888a-321270c8e6af",
        "serviceMethodIdentifier": "15daa625-aab7-4829-b224-3273bc89706d:ZmVkZXgtaG9tZS1kZWxpdmVyeS1zZXJ2aWNlLW1ldGhvZDo6N2JiYjY5NzMtYWVkYi00YTcwLWFjMDctMjIwY2JiMzdjYjIwOjYyNWRiNjU4LWUwOTEtNGUxYi04ODhhLTMyMTI3MGM4ZTZhZjphOGVjYTRlYS1kMDcwLTRkZWMtOGZiMC0xNGNjMTQxMzJmNWQ6ZmVkZXg6ZThiNTU1MmMtNzExOS00ZjcyLWE2MTEtZTFmYjQyNjQ1YTg2Ojo",
        "carrier": "fedex",
        "carrierServiceMethodId": "fedex-home-delivery-service-method",
        "serviceMethodName": "FedEx Home Delivery",
        "totalCost": 4.2,
        "carrierCompareCost": 4.2,
        "carrierInvoiceCost": 4.2,
        "operationalCost": 4.2,
        "thirdPartyBilling": false,
        "carrierSelectionDateTime": "2019-10-30T17:23:28.722Z",
        "carrierZoneId": "fedex-zone-5"
    },
    "carrierLabel": {
        "shipiumShipmentId": "ba1919a1-1c9a-4f53-93a7-8af49213be7c",
        "carrierSelectionId": "843ad336-3ca3-4b76-9bfa-06d99d9dd519",
        "shipiumLabelId": "c20e715e-4b42-4e9a-8621-33a97ed89516",
        "status": "success",
        "statusDetails": "success",
        "effectiveShipDateTime": "2019-10-31T17:23:28.68Z",
        "labelCreationDateTime": "2019-10-30T17:23:31.207Z",
        "serviceMethodIdentifier": "15daa625-aab7-4829-b224-3273bc89706d:ZmVkZXgtaG9tZS1kZWxpdmVyeS1zZXJ2aWNlLW1ldGhvZDo6N2JiYjY5NzMtYWVkYi00YTcwLWFjMDctMjIwY2JiMzdjYjIwOjYyNWRiNjU4LWUwOTEtNGUxYi04ODhhLTMyMTI3MGM4ZTZhZjphOGVjYTRlYS1kMDcwLTRkZWMtOGZiMC0xNGNjMTQxMzJmNWQ6ZmVkZXg6ZThiNTU1MmMtNzExOS00ZjcyLWE2MTEtZTFmYjQyNjQ1YTg2Ojo",
        "carrier": "fedex",
        "carrierServiceName": "FedEx Corporation Account - 2",
        "serviceMethodName": "FedEx Home Delivery",
        "carrierServiceMethodId": "fedex-home-delivery-service-method",
        "carrierShipmentId": "794624551550",
        "carrierTrackingId": "794624551550",
        "shipiumTrackingId": "52483a58-0788-4cf5-a2b4-b06610097158",
        "carrierTrackingLink": "https://wsbeta.fedex.com/fedextrack/?trknbr=794624551550",
        "carrierLabelCurrencyCode": "usd",
        "carrierLabelPrice": 26.7,
        "billableWeight": {
            "weightUnit": "lb",
            "weight": 14.0
        },
        "documents": [
            {
                "labelExpiration": "2019-11-02T17:23:31.197106615Z",
                "labelFormat": "zpl",
                "labelProperties": {
                    "height": 6.0,
                    "width": 4.0,
                    "linearUnits": "in",
                    "dpi": 203,
                    "labelOrientation": "rotate_180"
                },
                "labelImage": {
                    "imageEncoding": "base64",
                    "imageContents": "XlhBXkNGLDAsMCwwXlBSMTJeTUQzMF5QT0leQ0kxM15MSDAsMjAKXkZPMTIsMTI0XkdCNzU1LDIsMl5GUwpeRk8xMiwzOTBeR0I3NzcsMiwyXkZTCl5GTzMyLDNeQWROLDAsMF5GV05eRkheRkRGUk9NOl5GUwpeRk8zMiwxOV5BZE4sMCwwXkZXTl5GSF5GRE1hYyBCcm93bl5GUwpeRk8zMiwzN15BZE4sMCwwXkZXTl5GSF5GREpHQyBTdG9yZF5GUwpeRk8zMiw1NV5BZE4sMCwwXkZXTl5GSF5GRDQyODUgQnVmb3JkIEh3eV5GUwpeRk8zMiw3M15BZE4sMCwwXkZXTl5GSF5GRF5GUwpeRk8zMiwxMDleQWROLDAsMF5GV05eRkheRkRVUyBeRlMKXkZPMjI0LDNeQWROLDAsMF5GV05eRkheRkQoMjE1KSA1NTUtNTU1NV5GUwpeRk8yOCw3NDJeQTBOLDI0LDI0XkZXTl5GSF5GRFRSSyNeRlMKXkZPMjgsODAwXkEwTiwyNywzMl5GV05eRkheRkReRlMKXkZPMTM2LDcxMl5BME4sMjcsMzZeRldOXkZIXkZEXkZTCl5GTzMyLDkxXkFkTiwwLDBeRldOXkZIXkZEQXRsYW50YSBHQSAzMDM0NV5GUwpeRk80NzgsM15BZE4sMCwwXkZXTl5GSF5GRFNISVAgREFURTogMThBUFIyNF5GUwpeRk80NzgsMTleQWROLDAsMF5GV05eRkheRkRBQ1RXR1Q6IDIuMDAgTEJeRlMKXkZPNDc4LDM3XkFkTiwwLDBeRldOXkZIXkZEQ0FEOiAwMDAwMDAwL1dTWEkzNjAwXkZTCl5GTzQ3OCw5MV5BZE4sMCwwXkZXTl5GSF5GREJJTEwgU0VOREVSXkZTCl5GTzM5LDEzNl5BME4sMzksMzleRldOXkZIXkZESm9obiBEb2VeRlMKXkZPMzksMTc4XkEwTiwzOSwzOV5GV05eRkheRkReRlMKXkZPMzksMjIwXkEwTiwzOSwzOV5GV05eRkheRkQxMDAgTWFpbiBTdC5eRlMKXkZPMzksMjYyXkEwTiwzOSwzOV5GV05eRkheRkQqKlRFU1QgTEFCRUwgLSBETyBOT1QgU0hJUCoqXkZTCl5GTzM5LDM0N15BZE4sMCwwXkZXTl5GSF5GRCgyMDYpIDI2NS0yNzMzXkZTCl5GTzM5LDMwNF5BME4sNDMsNDBeRldOXkZIXkZER2VybWFudG93biBXSSA1MzAyMl5GUwpeRk83MTksMzA0XkEwTiw0Myw0MF5GV05eRkheRkQoVVMpXkZTCl5GTzY3Nyw0NjJeR0IxMDQsMTAsMTBeRlMKXkZPNjc3LDQ3Ml5HQjEwLDExMiwxMF5GUwpeRk83NzEsNDcyXkdCMTAsMTEyLDEwXkZTCl5GTzY3Nyw1ODReR0IxMDQsMTAsMTBeRlMKXkZPNDY0LC0tXkdCMiwxMjYsMl5GUwpeRk82ODcsNDgwXkEwTiwxMjgsMTM3XkZXTl5GSF5GREheRlMKXkZPNjU0LDQwMl5BME4sNDMsNTheRldOXkZIXkZERmVkRXheRlMKXkZPNjYzLDQ0OF5BYk4sMTEsN15GV05eRkheRkRIb21lIERlbGl2ZXJ5XkZTCl5GTzc5MSw0OTNeQTBOLDEzLDE4XkZXQl5GSF5GREoyNDIwMjQwNDA0MDF1dl5GUwpeRk85LDEzNl5BME4sMjEsMjFeRldOXkZIXkZEVE9eRlMKXkZPMjEsNDEyXkJZMiwyXkI3TiwxMCw1LDE0XkZIXkZXTl5GSF5GRFspPl8xRTAxXzFEMDI1MzAyMl8xRDg0MF8xRDgwNF8xRDc5NDYyNDU1MTU1MF8xREZERUdfMUQ4MDAwMzAyXzFEMTA5XzFEXzFEMS8xXzFEMi4wMExCXzFETl8xRDEwMCBNYWluIFN0Ll8xREdlcm1hbnRvd25fMURXSV8xREpvaG4gRG9lXzFFMDZfMUQxMFpHSDAwN18xRDEyWjIwNjI2NTI3MzNfMUQyMFpfMUNfMUQzMVo5NjIyMDgwNDMwMDA4MDAwMzAyOTAwNzk0NjI0NTUxNTUwXzFEOUtjZWxpYS10ZXN0aW5nXzFEXzFFXzA0XkZTCl5GTzI4LDgzN15BME4sMTA3LDk2XkZXTl5GSF5GRF5GUwpeRk8xMiw2ODFeR0I3NzcsMiwyXkZTCl5GTzQ5NCw4ODVeQTBOLDQzLDQzXkZXTl5GSF5GRF5GUwpeRk83ODgsMjheQWJOLDExLDdeRldCXkZIXkZENTgzSjYvMEZFQy85QUUzXkZTCl5GTzk1LDc0Nl5BME4sNTMsNDBeRldOXkZIXkZEMDAwMCAwMDAwIDAwMDBeRlMKXkZPNDA5LDY5NV5BME4sNTEsMzheRldOXkZIXkZCMzkwLCwsUixeRkQgICAgICAgICAgICAgICAgICAgXkZTCl5GTzQwNCw3NDdeQTBOLDUxLDM4XkZXTl5GSF5GQjQwMCwsLFIsXkZEICAgICAgICAgICAgICAgICAgIF5GUwpeRk80MTMsNzk5XkEwTiw0MCw0MF5GV05eRkheRkIzODYsLCxSLF5GRCAgICAgICAgICAgICAgICBeRlMKXkZPNDk1LDg0MV5BME4sNDQsNDReRldOXkZIXkZCMjk4LCwsUixeRkQgICAgIDUzMDIyXkZTCl5GTzU3NCw5MDFeQTBOLDI0LDI0XkZXTl5GSF5GQjEyMCwsLFIsXkZEICAgICAgXkZTCl5GTzY5NSw4ODVeQTBOLDQzLDQzXkZXTl5GSF5GQjEwMCwsLFIsXkZEICAgXkZTCl5GTzM5LDkyN15BME4sMjcsMzZeRldOXkZIXkZEMDAwMCAwMDAwIDAgKDAwMCAwMDAgMDAwMCkgMCAwMCAwMDAwIDAwMDAgMDAwMF5GUwpeRk83NSw5NjheQlkzLDJeQkNOLDIwMCxOLE4sTixOXkZXTl5GRD47OTYyMjA4MDQzMDAwODAwMDMwMjkwMDAwMDAwMDAwMDAwMF5GUwpeRk8xMzUsMTAyOF5BME4sMTI4LDEzN15GV05eRkheRkRTQU1QTEVeRlMKXkZPNDc4LDU1XkFkTiwwLDBeRldOXkZIXkZERElNTUVEOiAyNCBYIDEwIFggOCBJTl5GUwpeRk8zMjksMzQ5XkFiTiwxMSw3XkZXTl5GSF5GRFJFRjogQ0VMSUEtVEVTVElOR15GUwpeRk8zOSwzNjNeQWJOLDExLDdeRldOXkZIXkZESU5WOiBeRlMKXkZPMzksMzc3XkFiTiwxMSw3XkZXTl5GSF5GRFBPOiBeRlMKXkZPNDI5LDM3N15BYk4sMTEsN15GV05eRkheRkRERVBUOiBeRlMKXlBRMQpeWFoK"
                },
                "labelUrl": "https://shiptime-service.stage.shipium.com/api/v1/deliveryexperience/shipment/ba1919a1-1c9a-4f53-93a7-8af49213be7c/carrierSelection/843ad336-3ca3-4b76-9bfa-06d99d9dd519/label/c20e715e-4b42-4e9a-8621-33a97ed89516/zpl"
            }
        ]
            },
        "labelCreateParams": {
                "currencyCode": "usd",
                "labelFormats": [
                    "zpl"
                ],
                "eligibleForManifest": true,
                "includeLabelImagesInResponse": true,
                "customLabelEntries": {},
                "testMode": true,
                "contentDescription": "general merchandise"
            },
                "labelCostLineItems": [
                {
                    "name": "Residential delivery surcharge",
                    "currencyCode": "usd",
                    "cost": 5.55
                },
                {
                    "name": "FedEx Ground Fuel",
                    "currencyCode": "usd",
                    "cost": 1.4
                },
                {
                    "name": "Base Charge",
                    "currencyCode": "usd",
                    "cost": 19.75
                }
            ],
            "carrierLabelAugmentations": [],
            "manifestDetails": {
                "success": true,
                "interactionType": "manifest",
                "retryable": false
            },
            "originalLabelImageFromTheCarrier": {
                "imageEncoding": "base64",
                "imageContents": "XlhBXkNGLDAsMCwwXlBSMTJeTUQzMF5QVzgwMF5QT0leQ0kxM15MSDAsMjAKXkZPMTIsMTI0XkdCNzU1LDIsMl5GUwpeRk8xMiwzOTBeR0I3NzcsMiwyXkZTCl5GTzMyLDNeQWROLDAsMF5GV05eRkheRkRGUk9NOl5GUwpeRk8zMiwxOV5BZE4sMCwwXkZXTl5GSF5GRE1hYyBCcm93bl5GUwpeRk8zMiwzN15BZE4sMCwwXkZXTl5GSF5GREpHQyBTdG9yZF5GUwpeRk8zMiw1NV5BZE4sMCwwXkZXTl5GSF5GRDQyODUgQnVmb3JkIEh3eV5GUwpeRk8zMiw3M15BZE4sMCwwXkZXTl5GSF5GRF5GUwpeRk8zMiwxMDleQWROLDAsMF5GV05eRkheRkRVUyBeRlMKXkZPMjI0LDNeQWROLDAsMF5GV05eRkheRkQoMjE1KSA1NTUtNTU1NV5GUwpeRk8yOCw3NDJeQTBOLDI0LDI0XkZXTl5GSF5GRFRSSyNeRlMKXkZPMjgsODAwXkEwTiwyNywzMl5GV05eRkheRkReRlMKXkZPMTM2LDcxMl5BME4sMjcsMzZeRldOXkZIXkZEXkZTCl5GTzMyLDkxXkFkTiwwLDBeRldOXkZIXkZEQXRsYW50YSBHQSAzMDM0NV5GUwpeRk80NzgsM15BZE4sMCwwXkZXTl5GSF5GRFNISVAgREFURTogMThBUFIyNF5GUwpeRk80NzgsMTleQWROLDAsMF5GV05eRkheRkRBQ1RXR1Q6IDIuMDAgTEJeRlMKXkZPNDc4LDM3XkFkTiwwLDBeRldOXkZIXkZEQ0FEOiAwMDAwMDAwL1dTWEkzNjAwXkZTCl5GTzQ3OCw5MV5BZE4sMCwwXkZXTl5GSF5GREJJTEwgU0VOREVSXkZTCl5GTzM5LDEzNl5BME4sMzksMzleRldOXkZIXkZESm9obiBEb2VeRlMKXkZPMzksMTc4XkEwTiwzOSwzOV5GV05eRkheRkReRlMKXkZPMzksMjIwXkEwTiwzOSwzOV5GV05eRkheRkQxMDAgTWFpbiBTdC5eRlMKXkZPMzksMjYyXkEwTiwzOSwzOV5GV05eRkheRkQqKlRFU1QgTEFCRUwgLSBETyBOT1QgU0hJUCoqXkZTCl5GTzM5LDM0N15BZE4sMCwwXkZXTl5GSF5GRCgyMDYpIDI2NS0yNzMzXkZTCl5GTzM5LDMwNF5BME4sNDMsNDBeRldOXkZIXkZER2VybWFudG93biBXSSA1MzAyMl5GUwpeRk83MTksMzA0XkEwTiw0Myw0MF5GV05eRkheRkQoVVMpXkZTCl5GTzY3Nyw0NjJeR0IxMDQsMTAsMTBeRlMKXkZPNjc3LDQ3Ml5HQjEwLDExMiwxMF5GUwpeRk83NzEsNDcyXkdCMTAsMTEyLDEwXkZTCl5GTzY3Nyw1ODReR0IxMDQsMTAsMTBeRlMKXkZPNDY0LC0tXkdCMiwxMjYsMl5GUwpeRk82ODcsNDgwXkEwTiwxMjgsMTM3XkZXTl5GSF5GREheRlMKXkZPNjU0LDQwMl5BME4sNDMsNTheRldOXkZIXkZERmVkRXheRlMKXkZPNjYzLDQ0OF5BYk4sMTEsN15GV05eRkheRkRIb21lIERlbGl2ZXJ5XkZTCl5GTzc5MSw0OTNeQTBOLDEzLDE4XkZXQl5GSF5GREoyNDIwMjQwNDA0MDF1dl5GUwpeRk85LDEzNl5BME4sMjEsMjFeRldOXkZIXkZEVE9eRlMKXkZPMjEsNDEyXkJZMiwyXkI3TiwxMCw1LDE0XkZIXkZXTl5GSF5GRFspPl8xRTAxXzFEMDI1MzAyMl8xRDg0MF8xRDgwNF8xRDc5NDYyNDU1MTU1MF8xREZERUdfMUQ4MDAwMzAyXzFEMTA5XzFEXzFEMS8xXzFEMi4wMExCXzFETl8xRDEwMCBNYWluIFN0Ll8xREdlcm1hbnRvd25fMURXSV8xREpvaG4gRG9lXzFFMDZfMUQxMFpHSDAwN18xRDEyWjIwNjI2NTI3MzNfMUQyMFpfMUNfMUQzMVo5NjIyMDgwNDMwMDA4MDAwMzAyOTAwNzk0NjI0NTUxNTUwXzFEOUtjZWxpYS10ZXN0aW5nXzFEXzFFXzA0XkZTCl5GTzI4LDgzN15BME4sMTA3LDk2XkZXTl5GSF5GRF5GUwpeRk8xMiw2ODFeR0I3NzcsMiwyXkZTCl5GTzQ5NCw4ODVeQTBOLDQzLDQzXkZXTl5GSF5GRF5GUwpeRk83ODgsMjheQWJOLDExLDdeRldCXkZIXkZENTgzSjYvMEZFQy85QUUzXkZTCl5GTzk1LDc0Nl5BME4sNTMsNDBeRldOXkZIXkZEMDAwMCAwMDAwIDAwMDBeRlMKXkZPNDA5LDY5NV5BME4sNTEsMzheRldOXkZIXkZCMzkwLCwsUixeRkQgICAgICAgICAgICAgICAgICAgXkZTCl5GTzQwNCw3NDdeQTBOLDUxLDM4XkZXTl5GSF5GQjQwMCwsLFIsXkZEICAgICAgICAgICAgICAgICAgIF5GUwpeRk80MTMsNzk5XkEwTiw0MCw0MF5GV05eRkheRkIzODYsLCxSLF5GRCAgICAgICAgICAgICAgICBeRlMKXkZPNDk1LDg0MV5BME4sNDQsNDReRldOXkZIXkZCMjk4LCwsUixeRkQgICAgIDUzMDIyXkZTCl5GTzU3NCw5MDFeQTBOLDI0LDI0XkZXTl5GSF5GQjEyMCwsLFIsXkZEICAgICAgXkZTCl5GTzY5NSw4ODVeQTBOLDQzLDQzXkZXTl5GSF5GQjEwMCwsLFIsXkZEICAgXkZTCl5GTzM5LDkyN15BME4sMjcsMzZeRldOXkZIXkZEMDAwMCAwMDAwIDAgKDAwMCAwMDAgMDAwMCkgMCAwMCAwMDAwIDAwMDAgMDAwMF5GUwpeRk83NSw5NjheQlkzLDJeQkNOLDIwMCxOLE4sTixOXkZXTl5GRD47OTYyMjA4MDQzMDAwODAwMDMwMjkwMDAwMDAwMDAwMDAwMF5GUwpeRk8xMzUsMTAyOF5BME4sMTI4LDEzN15GV05eRkheRkRTQU1QTEVeRlMKXkZPNDc4LDU1XkFkTiwwLDBeRldOXkZIXkZERElNTUVEOiAyNCBYIDEwIFggOCBJTl5GUwpeRk8zMjksMzQ5XkFiTiwxMSw3XkZXTl5GSF5GRFJFRjogQ0VMSUEtVEVTVElOR15GUwpeRk8zOSwzNjNeQWJOLDExLDdeRldOXkZIXkZESU5WOiBeRlMKXkZPMzksMzc3XkFiTiwxMSw3XkZXTl5GSF5GRFBPOiBeRlMKXkZPNDI5LDM3N15BYk4sMTEsN15GV05eRkheRkRERVBUOiBeRlMKXlBRMQpeWFoK"
            },
    "saturdayDelivery": false,
    "deliverySignatureOption": "None",
    "forceThirdPartyBilling": false,
    "referenceIdentifier": "PSFC-2478",
    "createdWithVersion": "v2",
    "details": {
        "fulfillmentContextDetailsSearch": {
            "country": "US",
            "fulfillmentType": "customer",
            "postalCode": "17901",
            "partnerId": "76abb3d4-8990-4f80-aa13-4c2007cb852a",
            "includeSimulation": false,
            "fulfillmentContextIds": [
                "15daa625-aab7-4829-b224-3273bc89706d"
            ]
            },
            "generateLabel": true,
            "includeEvaluatedServiceMethodsInResponse": false,
            "labelParameters": {
                "currencyCode": "usd",
                "labelFormats": [
                    "zpl"
                ],
                "eligibleForManifest": true,
                "includeLabelImagesInResponse": true,
                "customLabelEntries": {},
                "testMode": true,
                "contentDescription": "general merchandise"
            },
            "carrierServiceMethodAllowList": [],
            "includeInjectionProfiles": false,
            "injectionParameters": [],
            "simulation": false,
            "inlineReturnsLabel": {
                "partnerShipmentId": "myCustomPartnerShipmentId123",
                "returnToAddress": {
                    "countryCode": "US",
                    "postalCode": "17901",
                    "addressType": "commercial",
                    "city": "Pottsville",
                    "company": "Sell It",
                    "emailAddress": "[email protected]",
                    "name": "Ro Drunner",
                    "phoneNumber": "5555555555",
                    "state": "PA",
                    "street1": "401 Centre St."
                },
                "returnToContactInfo": {
                    "contactName": "Ro Drunner",
                    "phoneNumber": "5555555555",
                    "phoneNumberCountryCode": "1",
                    "email": "[email protected]"
               	},
                "fulfillmentContextId": "b4a3e646-4a10-4c7b-b974-1f115c9890c5",
                "inlineReturnReferenceIdentifier": "ReturnLane1",
                "inlineReturnReferenceIdentifier2": "LVO-34", 
                "saturdayDelivery": true
    },
            "returnsContentDescription": "general merchandise"
        }
}

Generate a return label independent of shipment label generation

The Return Label API documentation includes required and optional fields for generating a return label independently. The sample call request and response are included below.

Printerless labels for returns

For select carriers, you can request printerless labels that generate QR codes instead of traditional shipping labels. Customers can scan these QR codes at carrier locations without printing a physical label. Printerless labels are currently supported for Canada Post returns.

How to request. Include "printerless" in the labelFormats array and provide the printerlessParameters configuration. You can request both traditional and printerless formats in the same call (e.g., ["zpl", "printerless"]).

What you receive. The response includes a base64-encoded image of the QR code and the URL encoded within it. The URL value can be used to generate your own QR code if needed. For more details and examples, you can refer to the Return Label API documentation.

Example cURL request

The request looks very similar to a carrier shipment label request. You pass information about the origin address and destination address, as shown in the cURL request below:

curl --request POST \
     --url <<api_url>>/api/v1/deliveryexperience/customerreturn/label
     --header 'accept: application/json' \
     --header $AUTHSTRING \
     --header 'content-type: application/json' \
     --data 'INSERT REQUEST BODY FROM BELOW'

Example request body

The following example includes partnerReturnRequestId, customLabelEntries, and orderItemQuantities. All these are optional and can be omitted. You can find more details about custom label entries in Label Customization. The Return Label API documentation and the Return Label API Reference provide details about information to include in the API request.

{
    "currencyCode": "usd",
    "generateLabel": true,
    "labelParameters": {
        "testMode": true,
        "currencyCode": "usd",
        "labelFormats": [
            "zpl"
        ],
        "manifest": true,
        "includeLabelImagesInResponse": true,
        "contentDescription": "General Merchandise",
        "customLabelEntries": {
            "order-number": "CUSTOM_ORDER_NUMBER"
        }
    },
    "destinationAddress": {
        "addressType": "commercial",
        "company": "Shipium Warehouse",
        "name": "Attn: RETURNS",
        "street1": "1234 Warehouse Way",
        "street2": "Suite 101",
        "city": "Reno",
        "state": "NV",
        "postalCode": "89521",
        "countryCode": "US"
    },
    "originAddress": {
        "addressType": "residential",
        "name": "Wile E. Coyote",
        "company": "ACME",
        "street1": "123 Warehouse St.",
        "street2": "Suite 42",
        "city": "Albuquerque",
        "state": "NM",
        "postalCode": "87121",
        "countryCode": "US"
    },
    "packagingType": {
        "packagingMaterial": "box",
        "packagingSizeName": "5x5x5 box",
        "linearDimensions": {
            "linearUnit": "in",
            "length": 5,
            "width": 5,
            "height": 5
        },
        "packagingWeight": {
            "weightUnit": "lb",
            "weight": 2
        }
    },
    "totalWeight": {
      "weight": 50,
      "weightUnit": "lb"
  },
    "orderItemQuantities": [
        {
            "productId": "MM-01-001",
            "quantity": 1
        },
        {
            "productId": "GR-08-001",
            "quantity": 1,
            "productDetails": [
                "ormd"
            ]
        }
    ],
    "customerReturnParams": {
        "partnerReturnRequestId": "customReturnRequestId",
        "fulfillmentContext": "8ad8e1a8-0656-4d18-afe8-d24fe3fc5f94",
        "returnRequestDateTime": "2021-01-11T00:00:00+00:00",
        "contentDescription": "General Merchandise"
    }
}

Example response body

The return label response is almost identical to the response returned by carrier shipment label, though with some differences as carrier costing does not occur for return labels.

{
    "carrier": "ups",
    "carrierServiceName": "UPS Returns Service",
    "carrierShipmentId": "1Z204E380338943508",
    "carrierTrackingId": "1Z204E380338943508",
    "documents": [
        {
            "labelExpiration": "2020-11-19T21:11:42.628Z",
            "labelFormat": "ZPL",
            "labelImage": {
                "imageEncoding": "base64",
                "imageContents": "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACPTkDJAAACJElEQVRYCe1Vz0sbURCe2XWbiNZKRaxgEipIKYVSqFR7SuJRCipSDz1JD1Io4j/goe2l9xYPxYu9FLoRz/aUaCmUYKFee4hiKSg0ovVHY0x2nCe85e3GmM2Kl3bf5c3Mm/fN976ZZQGCFSgQKPC/K4AXEeDu6qemP9uHRi2M9eTITrUcXwS6l+Z7SmSZRHCvGrAzjnnQ6PnP+NhHZxxAcwe8+MdkvfFeXCBSGxLMda+Y19z4De6A8GPp1DQBdLVfvTm5s5eLFRFeslStMhcRZwHxrfTV3SJ6B0RdakzYTDhMh3CLzax6VkFAsDzeh1d8A3/v595zoUdsP2FC9tLDV56u9Q9t2QHFiKbNAzVXOQIq6xWKVxDI9Y7tRjOpKS7c+SBO2W9f6JdVQn492QpQoTgYWzKPVHBpM+8W8Vyvy9cQ8is3uUSH1yIyTwf94Xpy9Kv0xe6Q5AWRw1cTL8u2FYik53tZ5kVEWNhIPJ6IZFIz7D8DcpIURBoaQzfUGYh+Nu9TCVZqkTxXAUTrNhdsI6B+AYRAibOK1ypS77k9hH1x+JBd1vIhw1oVIHo4NEB/i0nSKttSKhRfRzJmSBajMlyXdr273YJ6Ll7aEHomwf3xnKskol62FPfU9DX1/JmftskNdp7Pw12gsvHDneOLgKFpkwz43Q1W3cc8IYyf9Vf0NQOy0J202XwAhj3IMu7e1xLDu/z/8NU2N1bgBwoECvx7CpwAEhquciKZh7kAAAAASUVORK5CYII="
            },
            "labelProperties": {
              "dpi": 203,
              "height": 6,
              "labelOrientation": "rotate_0",
              "linearUnits": "in",
              "width": 4
            },
            "labelUrl": "https://api.shipium.com/labels/1a486afc-2ffc-4c37-928f-8d6aa014b35b.zpl"
        }
    ],
    "params": {
        "partnerReturnRequestId": "customReturnRequestId",
        "fulfillmentContext": "8ad8e1a8-0656-4d18-afe8-d24fe3fc5f94",
        "returnRequestDateTime": "2021-01-11T00:00:00+00:00",
        "contentDescription": "General Merchandise"
    },
   "packagingType": {
        "packagingMaterial": "box",
        "packagingSizeName": "5x5x5 box",
        "linearDimensions": {
            "linearUnit": "in",
            "length": 5,
            "width": 5,
            "height": 5
            },
        "packagingWeight": {
            "weightUnit": "lb",
            "weight": 2.0
            },
     "totalWeight": {
        "weight": 50,
        "weightUnit": "lb"
  },
    "serviceMethodName": "UPS Returns Service",
    "shipiumCustomerReturnLabelId": "4c6af31c-6f1d-4b20-a16f-a9110135e442",
    "status": "success",
    "statusDetails": "success"
}

Retrieve previously created labels

You can retrieve previously created labels by calling the same API endpoint you used to generate the label, using the GET request type and passing the returnLabelId you previously received in your response body.

Here's the cURL example call for retrieving a return label. You'll replace the returnLabelId value with the one you received during label generation.

curl --request GET \
     --url  <<api_url>/api/v1/deliveryexperience/customerreturn/label/{returnLabelId}
     --header 'accept: application/json' \
     --header $AUTHSTRING \
     --header 'content-type: application/json'
📘

More information on the API responses

As with all Shipium API responses, this API follows the API Response Codes standards unless otherwise specified.

Resources

Your Shipium team member is available to help along the way. However, you might find these resources helpful: