Manifests and SCAN forms
Manifests are close-outs of shipping labels of a certain day. Daily manifests are required by some carriers and are meant to be used for proper billing and acceptance of shipments. You can create Manifests with the Shippo SCAN Form and Manifest API.
Create a new manifest
To create a manifest for your shipments, POST to the Manifest endpoint with an array of the Transaction
objectIDs you are looking to create the Manifest for, along with your carrier_account
, shipment_date
, and address_from
(required for USPS).
curl https://api.goshippo.com/manifests/
-H "Authorization: ShippoToken shippo_test_831a7a042784f523b95db65444e6e084b636764b"\
-H "Content-Type: application/json"\
-d '{
"carrier_account": "b741b99f95e841639b54272834bc478c",
"shipment_date": "2014-05-16T23:59:59Z",
"address_from": "28828839a2b04e208ac2aa4945fbca9a",
"transactions": [
"64bba01845ef40d29374032599f22588",
"c169aa586a844cc49da00d0272b590e1"
],
"async": false
}'
manifest = Shippo::Manifest.create(
:carrier_account => "b741b99f95e841639b54272834bc478c",
:shipment_date => "2014-05-16T23:59:59Z",
:transactions => ["64bba01845ef40d29374032599f22588", "c169aa586a844cc49da00d0272b590e1"]
)
manifest = shippo.Manifest.create(
carrier_account = "b741b99f95e841639b54272834bc478c",
shipment_date = "2014-05-16T23:59:59Z",
transactions = ["64bba01845ef40d29374032599f22588", "c169aa586a844cc49da00d0272b590e1"]
)
$manifest = Shippo_Manifest::create(
array(
'carrier_account'=> 'b741b99f95e841639b54272834bc478c',
'shipment_date'=> '2014-05-16T23:59:59Z',
'transactions'=> array('64bba01845ef40d29374032599f22588', 'c169aa586a844cc49da00d0272b590e1')
));
shippo.manifest.create({
"carrier_account": "b741b99f95e841639b54272834bc478c",
"shipment_date": "2014-05-16T23:59:59Z",
"transactions": [
"64bba01845ef40d29374032599f22588",
"c169aa586a844cc49da00d0272b590e1"
]
}, function(err, manifest) {
// asynchronously called
});
HashMap<String, Object> manifestMap = new HashMap<String, Object>();
manifestMap.put("carrier_account", "b741b99f95e841639b54272834bc478c");
manifestMap.put("shipment_date", "2014-05-16T23:59:59Z");
String[] transactionIds = {"64bba01845ef40d29374032599f22588",
"c169aa586a844cc49da00d0272b590e1"};
manifestMap.put("transactions", transactions);
Manifest.create(manifestMap);
resource.CreateManifest( new Hashtable(){
{ "carrier_account", "b741b99f95e841639b54272834bc478c"},
{ "shipment_date", "2014-05-16T23:59:59Z"},
{ "transactions", new String[] { "64bba01845ef40d29374032599f22588", "c169aa586a844cc49da00d0272b590e1" }},
});
In the response, you will find an array of links to your manifests in the documents
attribute. Depending on how many shipments you've manifested, you may generate multiple files.
Manifests are always generated in PDFs. For the USPS, one manifest (SCAN Form) can contain up to 500 shipment information, so if you've manifested more than 500 shipments you will receive multiple PDFs.
{
"address_from": "28828839a2b04e208ac2aa4945fbca9a",
"carrier_account": "b741b99f95e841639b54272834bc478c",
"documents": [
"https://shippo-delivery.s3.amazonaws.com/0fadebf6f60c4aca95fa01bcc59c79ae.pdf?Signature=tlQU3RECwdHUQJQadwqg5bAzGFQ%3D&Expires=1402803835&AWSAccessKeyId=AKIAJTHP3LLFMYAWALIA"
],
"object_created": "2014-05-16T03:43:52.765Z",
"object_id": "0fadebf6f60c4aca95fa01bcc59c79ae",
"object_owner": "mrhippo@goshippo.com",
"object_updated": "2014-05-16T03:43:55.445Z",
"shipment_date": "2014-05-16T23:59:59Z",
"status": "SUCCESS",
"transactions": [
"64bba01845ef40d29374032599f22588",
"c169aa586a844cc49da00d0272b590e1"
]
}
Which carriers require a manifest?
Most carriers, including FedEx, UPS and DHL Express, don't require you to create a manifest. As a certified carrier partner, Shippo automatically manifests packages for you if the carrier supports it. Your labels are pre-scanned and drivers are not required to scan each package individually on pickup.
USPS* (optional)*
The USPS manifest is also known as "SCAN Form". A SCAN form is a PDF with a single barcode containing information about all your packages, so that the USPS doesn't need to scan each of your packages individually and all tracking codes are updated immediately.
Canada Post *(contract customers only)*
If you have a Contract Account with Canada Post and are shipping more than 50 shipments a day you need to create a manifests to transmit the shipments for billing.
Customers that ship less than 50 daily can usually skip the manifest requirement, but are encouraged to verify with Canada Post.
Australia Post
All Australia Post customers are required to manifest their shipments on a daily basis.
DHL eCommerce
All DHL eCommerce customers are required to manifest their shipments on a daily basis.
Purolator
Manifest capabilities are available for Purolator. It is not required by Purolator, however encouraged for record-keeping purposes.