How it works The integration in 60 seconds
FarEye is a delivery orchestration platform used by your shipper (the retailer or brand) to manage their last-mile operations. When the shipper dispatches an order to you, FarEye sends your API a structured consignment payload. You accept it, return tracking details, and push status updates as the delivery progresses.
What you need to build Your integration deliverables
Request payload What FarEye sends to your endpoint
When FarEye dispatches a consignment to you, it POSTs the following JSON payload to your endpoint. Below is a representative example with all key fields populated.
{
"referenceId": "12778_2206901100_0001",
"orderNumber": "2206901100",
"consignmentNumber": "2206901100",
"exchangeOrderNumber": "",
"typeOfOrder": "FORWARD",
"typeOfService": "GROUND",
"typeOfAction": "UPDATE",
"carrierCode": "UPS",
"merchantCode": "AMAZON",
"shipperTaxNumber": "12-3456789",
"originType": "BUSINESS",
"originTimezone": "America/New_York",
"originCode": "NYC01",
"originShipFromCode": "NYC01",
"originName": "Amazon Fulfillment Center",
"originCompanyName": "Amazon Inc.",
"originContactPerson": "John Smith",
"originContactNumber": "+1-212-555-7890",
"originContactNumber2": "",
"originEmail": "support@amazon.com",
"originAddressLine1": "410 Terry Ave N",
"originAddressLine2": "",
"originAddressLine3": "",
"originLandmark": "",
"originCity": "Seattle",
"originCounty": "King",
"originStateProvince": "WA",
"originCountry": "US",
"originPostalCode": "98109",
"originPoBoxNumber": "",
"originLatitude": "47.6062",
"originLongitude": "-122.3321",
"originPreferredStartTime": "",
"originPreferredEndTime": "",
"destinationType": "RESIDENTIAL",
"destinationTimezone": "America/Los_Angeles",
"destinationCode": "LAX01",
"destinationShipToCode": "LAX01",
"destinationName": "Customer Address",
"destinationCompanyName": "",
"destinationContactPerson": "Emily Johnson",
"destinationContactNumber": "+1-310-555-1234",
"destinationContactNumber2": "",
"destinationEmail": "emily.johnson@email.com",
"destinationAddressLine1": "1234 Sunset Blvd",
"destinationAddressLine2": "Apt 12",
"destinationAddressLine3": "",
"destinationLandmark": "",
"destinationCity": "Los Angeles",
"destinationCounty": "Los Angeles",
"destinationStateProvince": "CA",
"destinationCountry": "US",
"destinationPostalCode": "90026",
"destinationPoBoxNumber": "",
"destinationLatitude": "34.0522",
"destinationLongitude": "-118.2437",
"destinationPreferredStartTime": "",
"destinationPreferredEndTime": "",
"numberOfShipments": 1,
"totalQuantity": 1,
"totalWeight": 5.5,
"uomTotalWeight": "LB",
"totalVolume": 2.5,
"totalVolumeUom": "CFT",
"paymentMode": "PREPAID",
"amountToBeCollected": 0.0,
"invoiceValue": 199.99,
"currencyCode": "USD",
"shippingDateTime": "2026-04-17 00:00:00",
"deliveryInstructions": "Leave at front door",
"labelFormat": "PDF",
"slotToken": "a3693e24-0cc9-4ae4-9f43-23e773205019",
"itemList": [
{
"itemReferenceNumber": "0001",
"itemCode": "ELEC001",
"itemName": "Wireless Headphones",
"itemStatus": "",
"itemQuantity": 1,
"itemValue": 199.99,
"itemSpecialInstruction": "Handle with care",
"itemDeliveryServiceTime": 0,
"itemLength": 10.0,
"itemWidth": 8.0,
"itemHeight": 6.0,
"itemDimensionUom": "IN",
"itemWeight": 5.5,
"itemWeightUom": "LB",
"itemVolume": 2.5,
"itemVolumeUom": "CFT",
"itemTrackingNumber": "",
"instructions": "",
"tags": []
}
],
"skuList": [
{
"itemReferenceNumber": "0001",
"skuCode": "WH-1000XM5",
"skuNumber": "WH-1000XM5",
"skuItemName": "Sony Headphones",
"skuItemDescription": "Noise Cancelling Headphones",
"skuCategory": "Electronics",
"skuQuantity": 1,
"skuItemUnitPrice": "199.99",
"skuWeight": 5.5,
"skuWeightUom": "LB",
"skuLength": 10.0,
"skuWidth": 8.0,
"skuHeight": 6.0,
"skuDimensionUom": "IN",
"skuVolume": 2.5,
"skuVolumeUom": "CFT",
"skuHsnCode": "851830",
"skuOriginCountry": "US",
"skuDeliveryServiceTime": 0,
"skuPickupServiceTime": 0,
"skuLineItemNo": "0001",
"skuItemSequence": 0,
"skuUom": "",
"skuImageUrl": ""
}
],
"vas": [
{
"vasCode": "TWO_MAN_DELIVERY",
"level": "SKU",
"targetIds": ["0001"],
"serviceTime": 5,
"remark": "Customer signature required"
}
],
"shipper": {
"name": "Amazon Inc.",
"addressLine1": "410 Terry Ave N",
"city": "Seattle",
"stateProvince": "WA",
"country": "US",
"postalCode": "98109",
"contactPerson": "John Smith",
"contactNumber": "+1-212-555-7890",
"email": "support@amazon.com",
"companyName": "Amazon Inc."
},
"billTo": {
"name": "Emily Johnson",
"addressLine1": "1234 Sunset Blvd",
"city": "Los Angeles",
"stateProvince": "CA",
"country": "US",
"postalCode": "90026",
"contactPerson": "Emily Johnson",
"contactNumber": "+1-310-555-1234",
"email": "emily.johnson@email.com"
},
"info": {}
}
Field reference Every field, its requirement level, and what it means
Fields marked Mandatory will always be present and your endpoint must accept them. Recommended fields are sent when available and should be processed if present. Optional fields may or may not be included.
Core Identifiers 7 mandatory
| Field | Required | Description |
|---|---|---|
|
referenceId
|
Mandatory | Unique order reference from the shipper’s system. Used for correlation across all systems. |
|
orderNumber
|
Mandatory | Order number — the carrier should return this in all status updates. |
|
consignmentNumber
|
Mandatory | FarEye’s internal consignment identifier. Used for cross-referencing in FarEye’s system. |
|
exchangeOrderNumber
|
Optional | Exchange order reference for swap or exchange flows. |
|
typeOfOrder
|
Mandatory | FORWARD (delivery) or REVERSE (return
pickup). |
|
typeOfService
|
Mandatory | Service level: GROUND, EXPRESS, STANDARD, ECONOMY. |
|
typeOfAction
|
Mandatory | CREATE, UPDATE, or CANCEL. Tells the carrier what operation to perform.
|
|
carrierCode
|
Mandatory | Carrier identifier in FarEye (e.g., UPS, DHL, TNT). |
|
merchantCode
|
Recommended | Merchant identifier for multi-merchant setups. |
|
shipperTaxNumber
|
Optional | Shipper’s tax identification number (e.g., EIN, VAT). |
Origin Address 6 mandatory
| Field | Required | Description |
|---|---|---|
|
originType
|
Recommended | BUSINESS or RESIDENTIAL.
|
|
originTimezone
|
Recommended | IANA timezone (e.g., America/New_York). |
|
originCode
|
Recommended | Facility identifier for the origin warehouse or DC. |
|
originShipFromCode
|
Optional | Ship-from location code. |
|
originName
|
Mandatory | Origin location name (warehouse, DC, store). |
|
originCompanyName
|
Optional | Company name at origin. |
|
originContactPerson
|
Recommended | Contact person at origin. |
|
originContactNumber
|
Mandatory | Phone number for pickup coordination. |
|
originContactNumber2
|
Optional | Alternate phone number. |
|
originEmail
|
Recommended | Email address at origin. |
|
originAddressLine1
|
Mandatory | Street address. originAddressLine2 and originAddressLine3 are optional. |
|
originLandmark
|
Optional | Nearby landmark for location identification. |
|
originCity
|
Mandatory | City name. |
|
originCounty
|
Optional | County or district. |
|
originStateProvince
|
Optional | State or province code. |
|
originCountry
|
Mandatory | Country code (ISO 3166-1 alpha-2). |
|
originPostalCode
|
Mandatory | Postal / ZIP code. |
|
originPoBoxNumber
|
Optional | PO Box number. |
|
originLatitude / originLongitude
|
Recommended | GPS coordinates for precise pickup location. |
|
originPreferredStartTime / EndTime
|
Optional | Preferred pickup time window. |
Destination Address 5 mandatory
| Field | Required | Description |
|---|---|---|
|
destinationType
|
Recommended | BUSINESS or RESIDENTIAL.
|
|
destinationTimezone
|
Recommended | IANA timezone (e.g., America/Los_Angeles). |
|
destinationCode
|
Recommended | Internal destination location code. |
|
destinationShipToCode
|
Optional | Ship-to location code. |
|
destinationName
|
Optional | Recipient name or location. |
|
destinationCompanyName
|
Optional | Company name at destination. |
|
destinationContactPerson
|
Recommended | Contact person at destination. |
|
destinationContactNumber
|
Mandatory | Recipient phone — used for delivery notifications and driver contact. |
|
destinationContactNumber2
|
Optional | Alternate phone number. |
|
destinationEmail
|
Recommended | Recipient email address. |
|
destinationAddressLine1
|
Mandatory | Street address. destinationAddressLine2 and destinationAddressLine3 are optional. |
|
destinationLandmark
|
Optional | Nearby landmark for location identification. |
|
destinationCity
|
Mandatory | City name. |
|
destinationCounty
|
Optional | County or district. |
|
destinationStateProvince
|
Recommended | State or province code. |
|
destinationCountry
|
Mandatory | Country code (ISO 3166-1 alpha-2). |
|
destinationPostalCode
|
Mandatory | Postal / ZIP code. |
|
destinationPoBoxNumber
|
Optional | PO Box number. |
|
destinationLatitude / destinationLongitude
|
Recommended | GPS coordinates for precise delivery location. |
|
destinationPreferredStartTime / EndTime
|
Optional | Preferred delivery time window. |
Shipment Details 6 mandatory
| Field | Required | Description |
|---|---|---|
|
numberOfShipments
|
Mandatory | Number of physical packages in this consignment. |
|
totalQuantity
|
Mandatory | Total item quantity across all packages. |
|
totalWeight
|
Mandatory | Total shipment weight. Used for rate calculation and vehicle planning. |
|
uomTotalWeight
|
Mandatory | Weight unit: KG or LB.
|
|
totalVolume
|
Recommended | Total shipment volume. Critical for big & bulky shipments. |
|
totalVolumeUom
|
Recommended | Volume unit: CBM, CFT.
|
|
paymentMode
|
Optional | PREPAID, COD, or CREDIT. |
|
amountToBeCollected
|
Optional | Cash-on-delivery amount to collect from recipient. |
|
invoiceValue
|
Optional | Declared invoice value of the shipment. |
|
currencyCode
|
Optional | ISO 4217 currency code (e.g., USD, EUR).
|
|
shippingDateTime
|
Mandatory | When the shipment is ready for carrier pickup. Format: YYYY-MM-DD HH:MM:SS. |
|
deliveryInstructions
|
Recommended | General delivery instructions (e.g., “Leave at front door”). |
|
labelFormat
|
Recommended | Preferred label format: PDF, ZPL, PNG. |
|
slotToken
|
Optional | Delivery slot reservation token from slot-booking flow. |
Item List · itemList[] 4 mandatory
| Field | Required | Description |
|---|---|---|
|
itemReferenceNumber
|
Mandatory | Unique item / line identifier. |
|
itemCode
|
Optional | Item code. |
|
itemName
|
Optional | Item description for manifesting and proof of delivery. |
|
itemStatus
|
Optional | Current item status. |
|
itemQuantity
|
Mandatory | Number of units of this item. |
|
itemValue
|
Optional | Declared value of this item. |
|
itemSpecialInstruction
|
Optional | Special handling instructions for this item (e.g., “Handle with care”). |
|
itemDeliveryServiceTime
|
Optional | Service time in minutes at the delivery stop for this item. |
|
itemLength / itemWidth / itemHeight
|
Recommended | Item dimensions. Important for bulky items and volumetric pricing. |
|
itemDimensionUom
|
Recommended | Dimension unit: IN, CM.
|
|
itemWeight
|
Mandatory | Per-item weight. |
|
itemWeightUom
|
Mandatory | Weight unit: KG or LB.
|
|
itemVolume / itemVolumeUom
|
Optional | Per-item volume with unit. |
|
itemTrackingNumber
|
Optional | Item-level tracking number (if pre-assigned). |
|
instructions
|
Optional | Additional delivery instructions for this item. |
|
tags
|
Optional | Array of tags for custom categorisation or filtering. |
SKU List · skuList[] 4 mandatory
| Field | Required | Description |
|---|---|---|
|
itemReferenceNumber
|
Mandatory | Links this SKU entry to an itemList item. |
|
skuCode / skuNumber
|
Mandatory | SKU code and number identifiers. |
|
skuItemName
|
Mandatory | SKU item display name. |
|
skuItemDescription
|
Recommended | Detailed item description. |
|
skuCategory
|
Optional | Product category (e.g., Electronics, Apparel). |
|
skuQuantity
|
Mandatory | Quantity of this SKU. |
|
skuItemUnitPrice
|
Optional | Unit price for customs and insurance. |
|
skuWeight / skuWeightUom
|
Recommended | SKU weight and unit. |
|
skuLength / skuWidth / skuHeight
|
Optional | SKU dimensions. |
|
skuDimensionUom
|
Optional | Dimension unit: IN, CM.
|
|
skuVolume / skuVolumeUom
|
Optional | SKU volume and unit. |
|
skuHsnCode
|
Optional | HSN / HS code for customs and compliance. |
|
skuOriginCountry
|
Optional | Country of origin (ISO code). |
|
skuDeliveryServiceTime / skuPickupServiceTime
|
Optional | Service time in minutes at delivery/pickup stop. |
|
skuLineItemNo / skuItemSequence
|
Optional | Line-item number and sort sequence. |
|
skuUom
|
Optional | Unit of measure for this SKU. |
|
skuImageUrl
|
Optional | Product image URL. |
Value-Added Services · vas[] 0 mandatory
| Field | Required | Description |
|---|---|---|
|
vasCode
|
Recommended | Service code (e.g., TWO_MAN_DELIVERY, HAUL_AWAY_OLD, INSTALLATION). Carriers must
support these if the shipper requires them. |
|
level
|
Recommended | Application level: SKU (per-item) or CONSIGNMENT (whole shipment). |
|
targetIds
|
Recommended | Array of item reference numbers this VAS applies to. |
|
serviceTime
|
Optional | Estimated service time in minutes at the stop (e.g., 30 for installation). |
|
remark
|
Optional | Additional notes for this service (e.g., “Customer signature required”). |
Shipper · shipper 0 mandatory
| Field | Required | Description |
|---|---|---|
|
name
|
Recommended | Shipper’s name. |
|
companyName
|
Recommended | Shipper company name. |
|
addressLine1
|
Recommended | Shipper street address. |
|
city / stateProvince / country / postalCode
|
Recommended | Shipper location details. |
|
contactPerson / contactNumber / email
|
Recommended | Shipper contact details. |
Bill To · billTo 0 mandatory
| Field | Required | Description |
|---|---|---|
|
name
|
Optional | Billing contact name. |
|
addressLine1
|
Optional | Billing street address. |
|
city / stateProvince / country / postalCode
|
Optional | Billing location details. |
|
contactPerson / contactNumber / email
|
Optional | Billing contact details. |
Info · info 0 mandatory
| Field | Required | Description |
|---|---|---|
|
info
|
Optional | Extensible JSON object for custom key-value pairs (e.g., vehicle details, BoL references). Your FarEye implementation manager will confirm which keys are relevant. |
shipper (if shipper differs from origin), bill_to (billing
address + tax ID), and info.packageVehicleDetails (vehicle, BoL, RMA
references).
Your FarEye implementation contact will confirm which objects are active for your integration.
Response format What you must return to FarEye
Your endpoint must respond with HTTP 200 and a JSON body containing tracking details for each shipment in the consignment.
{
"status": 200,
"referenceId": "ORD-2026-44821",
"timestamp": 1713178800000,
"itemsTrackDetails": [
{
"itemReferenceNumber": "911121176-1",
"trackingNumber": "7803820965",
"labelUrl": "https://carrier.com/labels/7803820965.pdf",
"carrierCode": "DHL",
"orderNumber": "ORD-2026-44821"
}
]
}
If the request is invalid or missing required fields, the carrier should respond with a 400 status and return an array of error messages describing what went wrong.
{
"status": 400,
"referenceId": "TPKSD2002060000778-KNJ020000013",
"timestamp": 1582546365396,
"errors": [
"The order number is missing"
]
}
Response field reference
| Field | Required? | Description |
|---|---|---|
| status | Mandatory | HTTP status code. 200 for success. |
| referenceId | Mandatory | Echo back the reference_id from the request. |
| timestamp | Recommended | Unix timestamp (ms) of when you processed the request. |
| executionTime | Optional | Processing time in ms (useful for performance monitoring). |
| itemsTrackDetails | Mandatory | Array — one entry per shipment/package in the consignment. |
| → trackingNumber | Mandatory | Your tracking number for this shipment. If one was pre-assigned in the request, echo it back. Otherwise generate and return a new one. |
| → labelUrl | Recommended | URL to download the shipping label (PDF, ZPL, or
PNG). FarEye fetches this and forwards to the shipper.
|
| → carrierCode | Mandatory | Your carrier code (echo from request). |
| → orderNumber | Mandatory | Order number (echo from request). |
items_track_details per
package, each with its own tracking number and label URL.Pushing status updates Keep FarEye informed as delivery progresses
As the consignment moves through your network, push status events to FarEye's status update endpoint. FarEye normalises your statuses and forwards them to the shipper in real time.
Sample webhook payload
Below is a representative webhook event payload. Carrier can use this JSON to POSTs FarEye system.
{
"orderNo": "ORD123456",
"type": "Tracking",
"value": "1Z999AA10123456784",
"consignmentNumber": "CON123456789",
"carrierCode": "DHL",
"carrierStatus": "Delivered",
"carrierStatusCode": "DLV",
"carrierStatusDescription": "Shipment Delivered Successfully",
"carrierSubStatus": "Consignee Not Available",
"carrierSubStatusCode": "016",
"carrierSubStatusDescription": "Customer not available at delivery address",
"statusReceivedAt": "2025-08-06 07:45:00",
"eventTimezone": "Asia/Kolkata",
"locationCode": "DL112",
"locationName": "Delhi Hub",
"latitude": "28.6448",
"longitude": "77.216721",
"lastUpdatedAt": "2025-08-06 08:00:00",
"statusIdentifierValue": "FORWARD",
"extraInfo": {
"comments": "Left package with security guard",
"promisedDeliveryDate": "2025-08-10",
"expectedDeliveryDate": "2025-08-09",
"receivedBy": "John Doe",
"relation": "Security Guard",
"pod": [
{
"type": "SIGNATURE",
"url": "https://cdn.fareye.com/pod/12345-signature.png"
}
],
"signature": "https://cdn.fareye.com/pod/12345-signature.png"
},
"driverName": "John",
"vehicleNumber": "DL12AAA1234",
"info": {
"additionalNotes": "Handle with care"
},
"installationItems": [
{
"itemReferenceNumber": "SKU-12345",
"level": "SKU",
"targetIds": [
"SKU0001"
],
"vasCode": "ROOM_OF_CHOICE",
"status": "Completed",
"statusCode": "ASSEMBLED",
"statusTime": "2025-08-06 10:00:00"
}
]
}
Status mapping Your statuses → FarEye normalised statuses
FarEye will map your status codes to its normalised model during implementation. Below are the standard lifecycle events that FarEye expects. You can use your own status codes — the mapping is configured per carrier.
PKG_PICKED
instead of PICKED_UP, that's no problem — FarEye's event mapping is
configured per
carrier during onboarding. Just make sure you can push the status events listed above (or
equivalents) for a
complete delivery lifecycle.Authentication How FarEye authenticates with you (and vice versa)
FarEye will authenticate with your endpoint using the method you specify — typically Bearer token, API key header, or Basic Auth. Provide your preferred authentication method and credentials to the FarEye implementation team during onboarding.
FarEye will provide you with an access token and endpoint URL for pushing status updates. Include
the token
as a Bearer token in the Authorization
header of every
status update request.
FAQ & troubleshooting Common questions from carrier tech teams
type_of_action is UPDATE, treat it as a modification to an existing consignment (use
reference_id to look up the original). When CANCEL, cancel
the shipment and any pending labels/tracking. Return a 200 response confirming the action.
PDF. ZPL (Zebra Printer Language) is needed if the shipper uses thermal
printers. The
label_format field in the request tells you which format to
generate. Return the
label as a URL in label_url — FarEye will fetch it.
TWO_MAN_DELIVERY
(two-person
crew), INSTALLATION (install the product), HAUL_AWAY_OLD (remove old item), ROOM_OF_CHOICE (deliver
to specific room), SIGNATURE_REQUIRED. The shipper's FarEye setup
determines
which VAS codes are active — you'll be told during onboarding.Ready to integrate?
Contact the FarEye implementation team to get your endpoint URL, authentication credentials, and access to the sandbox environment for testing.