Tracking PRO Consignments Using REACT
SortedPRO integrates seamlessly with REACT, Sorted's dedicated shipment tracking platform. PRO can automatically register shipments with REACT, and share carrier and tracking information. This page explains how PRO and REACT can interact with each other, and the benefits this brings.
Note
For integration guides and user help on REACT, see the REACT section of this site.
Why Use REACT?
PRO's native tracking API enables you to build simple tracking pages that a consumer can access to check the status of their order. REACT, on the other hand, offers a full suite of tracking tools, giving you much more flexibility in the way that you supply tracking updates to your customers. REACT offers:
- Custom webhooks that notify you of shipping events proactively. Whenever a shipment enters a selected state, REACT will send that shipment’s data to you, thereby enabling you to build services such as push notifications as email alerts.
- A tracking dashboard that gives you advanced shipment monitoring features, and enables administrators to configure the system.
- Customisable shipment state labels, enabling you to to communicate tracking information to your customers in your brand’s tone of voice or in an alternative language, as opposed to using default tracking state names.
- Customisable web-based tracking pages that can be published with no development work needed.
- Calculated events, whereby shipment properties are changes based on REACT's internal processing rather than a carrier update. For example, REACT can automatically flag a shipment as late if it passes its expected delivery date.
Integrating PRO and REACT
When you sign up to REACT as a PRO customer, your REACT and PRO accounts are automatically linked. You do not need to do any additional configuration beyond the regular configuration processes for each product.
REACT uses carrier connectors to keep shipments from a particular carrier up to date. Carrier connectors contain configuration that enables REACT to obtain carrier tracking data. Ordinarily, you would need to configure carrier connectors yourself as part of the REACT setup process. However, when you sign up to REACT as a PRO customer, REACT takes your carrier configuration from PRO, enabling you to use your existing carrier integrations in REACT without needing to provide any additional details.
To use your PRO carriers with REACT, navigate to Settings > Carrier Connectors within the REACT UI, and click Connect.
Registering PRO Consignments in REACT
Once PRO and REACT have been linked, PRO will automatically create new REACT shipments from manifested consignments. The process is as follows:
- PRO tells REACT that a consignment has been manifested and sends the details of that consignment to REACT.
- REACT validates the consignment details and generates a new REACT shipment object from it.
- REACT registers the shipment via its Register Shipments API.
At this point, the shipment can now be tracked in the same way as any other REACT shipment.
Mapping Table
This table shows how the properties in a PRO consignment resource map to the properties in a REACT shipment resource.
REACT | PRO |
---|---|
customer_id | CustomerReference |
carrier | Carrier |
carrier_service | CarrierService |
shipped_date | DateShipped |
promised_date.start | EarliestDeliveryDate |
promised_date.end | LatestDeliveryDate |
expected_deliver_date.start | EarliestDeliveryDate |
expected_deliver_date.end | LatestDeliveryDate |
retailer | Retailer |
shipment_type | ShipmentType |
address.address_type | AddressType |
address.reference | Reference |
address.property_number | PropertyNumber |
address.property_name | PropertyName |
address.address_line1 | AddressLine1 |
address.address_line2 | AddressLine2 |
address.address_line3 | AddressLine3 |
address.locality | Locality |
address.region | Region |
address.postal_code | PostalCode |
address.country_iso_code | CountryIsoCode |
tracking_references | ShipmentTrackingReferences |
metadata | ShipmentMetaData |
tags | Consignment Tags |
custom_reference | ShipmentCustomReferences |
consumer.email | Consumer.Email |
consumer.phone | Phone |
consumer.mobile_phone | MobilePhone |
consumer.first_name | FirstName |
consumer.last_name | LastName |
consumer.middle_name | MiddleName |
consumer.title | Title |
Mapping Example
This example shows a PRO consignment and a REACT shipment that has been generated from that consignment at the point it was manifested.
{
"ConsignmentLegs": [
{
"Leg": 1,
"TrackingReferences": [
"1Z9A80W5D991115692"
],
"CarrierReference": "UPS",
"CarrierServiceReference": "UPSHSADCS",
"CarrierName": "UPS"
}
],
"CollectionDate": "2020-04-08T00:00:00+01:00",
"DateDelivered": null,
"FirstAttemptedDeliveryDate": null,
"DateReturned": null,
"DateShipped": null,
"DateCollected": null,
"AttemptedDeliveryDate": null,
"MetaData": [],
"Allocation": {
"CarrierServiceGroupReference": "",
"MpdCarrierServiceGroupName": null,
"MpdCarrierServiceReference": "EDC5_UPSHSADCS",
"MpdCarrierServiceName": "UPS SAVER (Delivery Confirmation Signature Required)",
"AllocationDate": "2020-04-08T08:57:20.0959259+00:00",
"Price": {
"Net": 22.99,
"Gross": 22.99,
"TaxRate": {
"Reference": null,
"CountryIsoCode": "GB",
"Type": "Standard",
"Rate": 0.0000
},
"VatAmount": 0.00,
"Currency": {
"Name": null,
"IsoCode": "GBP"
}
}
},
"FailedAllocation": null,
"Source": "Api",
"LabelCount": 0,
"LabelsPrinted": false,
"DateLabelsWereFirstPrinted": null,
"IsLate": false,
"LateForCustomer": false,
"CustomerReference": "338a3524-5a17-44dd-a601-1527574f1a5d",
"Weight": {
"Value": 2.00000,
"Unit": "Kg"
},
"Value": {
"Amount": 20.00,
"Currency": {
"Name": "United States dollars",
"IsoCode": "USD"
}
},
"Direction": "Outbound",
"Tags": [],
"Reference": "EC-000-05E-BKJ",
"ConsignmentState": "Manifested",
"DateCreated": "2020-04-08T08:57:17.5970788+00:00",
"ShippingDate": "2020-04-08T17:00:00+01:00",
"RequestedDeliveryDate": {
"Date": "2020-04-10T00:00:00+00:00",
"DeliveryWindow": {
"Start": "00:00:00",
"End": "00:00:00",
"UtcOffset": null
},
"IsToBeExactlyOnTheDateSpecified": true
},
"EarliestDeliveryDate": "2020-04-10T00:00:00-04:00",
"LatestDeliveryDate": "2020-04-10T23:30:00-04:00",
"ConsignmentReferenceProvidedByCustomer": "PostDeploymentTest_API_v1.1_UKtoUS_NonGBP",
"Addresses": [
{
"AddressType": "Origin",
"ShopLocationReference": null,
"Contact": {
"Reference": null,
"Title": "Miss",
"FirstName": "Laura",
"LastName": "Somebody",
"Position": null,
"Telephone": "01234 567 890",
"Mobile": "01234 567 890",
"LandLine": "",
"Email": "laura.somebody@mpd-group.com"
},
"CompanyName": null,
"ShippingLocationReference": "Sorted1",
"CustomerName": null,
"AddressLine1": "Third Floor",
"AddressLine2": "Merchant Exchange",
"AddressLine3": "Whitworth Street West",
"Town": "Manchester",
"Region": "",
"Postcode": "M1 5WG",
"Country": {
"Name": "United Kingdom",
"IsoCode": {
"TwoLetterCode": "GB"
}
},
"RegionCode": "",
"SpecialInstructions": "",
"LatLong": null,
"IsCached": false
},
{
"AddressType": "Destination",
"ShopLocationReference": null,
"Contact": {
"Reference": null,
"Title": "",
"FirstName": "Robert",
"LastName": "Smith",
"Position": null,
"Telephone": "07495747394",
"Mobile": "07495747394",
"LandLine": "0161111454",
"Email": "robert.smith@email.com"
},
"CompanyName": "",
"ShippingLocationReference": null,
"CustomerName": null,
"AddressLine1": "400 N Calhoun Street",
"AddressLine2": "",
"AddressLine3": "",
"Town": "Leeds",
"Region": "West Yorks",
"Postcode": "LS1 6TH",
"Country": {
"Name": "United Kingdom",
"IsoCode": {
"TwoLetterCode": "GB"
}
},
"RegionCode": "IA",
"SpecialInstructions": null,
"LatLong": null,
"IsCached": false
}
],
"Packages": [
{
"ConsignmentLegs": [
{
"Leg": 1,
"TrackingReferences": [
"1Z9A80W5D991115692"
],
"CarrierReference": "UPS",
"CarrierServiceReference": null,
"CarrierName": null
}
],
"Items": [
{
"Reference": "099681e6c66d47c982c86e1e5aaa803c",
"Sku": "sku",
"Model": "model",
"Description": "desc",
"CountryOfOrigin": {
"Name": "United Kingdom",
"IsoCode": {
"TwoLetterCode": "GB"
}
},
"HarmonisationCode": "h code",
"Weight": {
"Value": 0.34000,
"Unit": "Kg"
},
"Dimensions": {
"Unit": "Cm",
"Width": 1.10000,
"Length": 1.10000,
"Height": 1.10000
},
"Value": {
"Amount": 10.0000,
"Currency": {
"Name": "United States dollars",
"IsoCode": "USD"
}
},
"ItemReferenceProvidedByCustomer": "Sorted Package 1 Item 1 Referene",
"Barcode": {
"Code": "code",
"BarcodeType": "AztecCode"
},
"Quantity": 0,
"Unit": null,
"HarmonisationKeyWords": [
"one",
"two"
],
"Status": null,
"ContentClassification": "Unrestricted",
"ContentClassificationDetails": "NotSpecified"
}
],
"Charges": [],
"Reference": "EP-000-05G-CAH",
"PackageReferenceProvidedByCustomer": "",
"Weight": {
"Value": 2.00000,
"Unit": "Kg"
},
"Dimensions": {
"Unit": "Cm",
"Width": 5.00000,
"Length": 10.00000,
"Height": 1.00000
},
"Description": "test description",
"Value": {
"Amount": 20.0000,
"Currency": {
"Name": "United States dollars",
"IsoCode": "USD"
}
},
"PackageSizeReference": null,
"Barcode": {
"Code": "010101",
"BarcodeType": "AustraliaPostalCode"
}
}
]
}
Note
- For more information on the structure of a REACT shipment, see the Register Shipments section of the REACT API reference and the Registering Shipments page of the REACT help.
- For more information on the structure of a PRO consignment, see the Create Consignment page of the PRO API reference and the Creating New Consignments page of the PRO help.
After Registration
Once a PRO consignment has been registered as a REACT shipment, PRO automatically keeps REACT updated of any changes. Whenever PRO downloads a new carrier file, it updates any shipments in that file that you have registered with REACT accordingly.
Next Steps
- View the REACT User Guide for a full overview of how to use REACT.
- Learn how to get customs docs and invoices for international shipments at the Getting Customs Docs and Invoices page.
- Learn how to manifest consignments at the Manifesting Consignments page.