ParcelLabel API
Manifests Only - Domestic and International Inbound to NZ
How to submit manifests only
Note: This functionality is currently only available for DOMESTIC and INTERNATIONAL INBOUND labels.
The NZ Post Parcel Label API allows customers to use the "manifest only" functionality. This is for senders who use White Labelling integrations where they create the label in their own systems (not via Parcel Label) but are required to send a manifest for each parcel.
Parcel Label "manifest only" mode allows for JSON sending of the manifest.
Resource URL
UAT:
https://api.uat.nzpost.co.nz/parcellabel/v3/labels
Production:
https://api.nzpost.co.nz/parcellabel/v3/labels
A unique consignment_id is returned once the details of the request are stored in the labeling database.
Request Parameters
The request payload parameters are the same as a label request, except for the existense of a manifest_only flag and a tracking_number for the parcel. Since a label is not generated for manifest only requests, non-mandatory parameters pertaining to label orientation, format, dimension, and the like, is not required but is included in the listing for completeness.
Field Name | Description | Required for Courier? |
---|---|---|
carrier | Carrier of the parcel. Value must be COURIERPOST | Yes - CourierPost |
manifest_only | True or False flag to indicate if this is a manifest only request | Yes - if manifest only is required |
orientation | Print orientation of the label. Value must be PORTRAIT or LANDSCAPE. Default value is LANDSCAPE. | No |
logo_id | Unique identifier for merchants logo. The field is only relevant for Courier services | No |
format | Format of the label. Value must be PDF or PNG. Default Value is PDF. | No |
notification_endpoint | Merchants Webhook URL to receive notification when the label has been generated. | No |
sender_reference_1 | Sender's reference for the consignment. Will be printed on the label. | No |
sender_reference_2 | Sender's reference. Will be printed on the Invoice | No |
account_number | Your NZ Post Billing Account number (9 or 5 series).This is highly recommended to pass in the API call to obtain your account rates. | No |
label_dimensions | An object specifying the label dimensions (in mm) upon which to print the label. If you are passing this object then the value should be 150x100 or 174x100 or empty string. If it is empty then default value is 174x100. This field is only mandatory to generate 150x100 dimensions label. | No |
paper_dimensions | An object containing the paper size upon which to print the label. See Paper Dimension Object Parameters below | No |
paper_dimensions.width_cm | Width the label to be printed to. Default value is 17.4. Note: To print on a 150x100 label this value must be set to ‘15.0’ | No |
paper_dimensions.height_cm | Height of the label to be printed to. Default value is 10 | No |
paper_dimensions.stationery_size | Paper size upon which to print the label. Must be A4 or A5. | No |
sender_details | An object containing the sender contact details. See Sender Details Object Parameters below. | Yes |
sender_details.name | Name of the sender | Yes |
sender_details.phone | Phone number of the sender. NO SPACES, DIGITS and '+' ONLY | No but highly desirable |
sender_details.email | Email address of the sender. | No but highly desirable |
sender_details.signatory | Name of the individual sending the parcel, this is used for customs purposes. | No |
sender_details.company_name | Company name of the sender. | No |
sender_details.site_code | Site code assigned to the address where the parcel will be picked up by the courier. This address is also used for the NZ Post manifest process. | Yes |
sender_details.customs_code | Customs code of the sender. | No |
receiver_details | An object containing the receiver contact details. See Receiver Details Object Parameters below | Yes |
receiver_details.name | Name of the receiver | Yes |
receiver_details.phone | Phone number of the receiver. NO SPACES, DIGITS and '+' ONLY | No but highly desirable |
receiver_details.email | Email address of the receiver. | No but highly desirable |
receiver_details.vat_number | The VAT or GST number of the receiver. The field should not be > 14 characters. | No |
receiver_details.registration_number | Registration number of the receiver required for Delivery Location Options. | No |
pickup_address | An object containing the sender pickup address details. See Pickup Address Rules and Parameters below | Yes (NB: this is used as the NZ return address for this service) |
pickup_address Rules | Only one of the following is required: address_id (highly desirable) OR dpid(highly desirable) OR site_code (highly desirable) OR street, suburb, city, and postcode. Use the city for addresses without suburbs. Address_id and dpid can be obtained using ParcelAddress API. Account managers set up site codes. | |
pickup_address.address_id | Address ID for the pickup address sourced from the ParcelAddress API | See pickup_address rules |
pickup_address.dpid | Delivery Point ID for the pickup address sourced from the ParcelAddress API | See pickup_address rules |
pickup_address.site_code | Site code of pickup address. Setup by Account Manager | See pickup_address rules |
pickup_address.company_name | Company name of the pickup address | No |
pickup_address.building_name | Building name of the pickup address. | No |
pickup_address.street | Street name of the pickup address. | See pickup_address rules |
pickup_address.suburb | Suburb of the pickup address | See pickup_address rules |
pickup_address.city | City of the pickup address | See pickup_address rules |
pickup_address.postcode | Postal or zip code of the pickup address. | See pickup_address rules |
pickup_address.state | Regional, provincial or county name of the pickup address. | No |
pickup_address.unit_type | Type of unit (if applicable) of the pickup address. | No |
pickup_address.unit_value | Value of the unit type. | Yes if pickup_address.unit_type is not blank |
pickup_address.floor | Floor of the pickup address. | No |
pickup_address.country_code | Two character country code of the pickup address. | No (For International Inbound, this must be set to NZ if has value) |
delivery_address | An object containing the receiver delivery address details. See Receiver Address Object Parameters section | Yes |
delivery_address Rules | country_code (mandatory) AND only one of the following is required: address_id (highly desirable) OR dpid(highly desirable) OR site_code (highly desirable) OR street, suburb, city, and postcode. Use the city for addresses without suburbs. Address_id and dpid can be obtained using ParcelAddress API. Account managers set up site codes. | |
delivery_address.address_id | Address ID for the delivery address sourced from the ParcelAddress API | See delivery_address rules |
delivery_address.dpid | Delivery Point ID for the delivery address sourced from the ParcelAddress API | See delivery_address rules |
delivery_address.site_code | Site code of the pickup address. | See delivery_address rules |
delivery_address.building_name | Building name of the delivery address. | No |
delivery_address.company_name | Name of company that the parcel is being delivered to. | No |
delivery_address.street_number | Street number of the delivery address. | No but highly desirable |
delivery_address.street | Street name of the delivery address. | See delivery_address rules |
delivery_address.suburb | Suburb of the delivery address | See delivery_address rules |
delivery_address.city | City of the delivery address | See delivery_address rules |
delivery_address.state | State of the delivery address | No |
delivery_address.country_code | Two character country code of the delivery address. | Yes (this must be set to NZ) |
delivery_address.postcode | Postal or zip code of the delivery address. | See delivery_address rules |
delivery_address.unit_type | Type of unit (if applicable) of the pickup address. | No |
delivery_address.unit_value | Value of the unit type. | Yes if delivery_address.unit_type is not blank |
delivery_address.floor | Floor of the pickup address. | No |
delivery_address.instructions | Delivery instructions for courier | No |
parcel_details | An object containing the label details for each label in the consignment. See Parcel Details Object Parameters section | Yes |
parcel_details.tracking_number | Tracking number for the parcel | Yes - if manifest_only flag is True |
parcel_details.service_code | Code to represent a delivery service. For domestic labels where carrier is COURIERPOST and the parcel is a Satchel, see rules in the Envelope Sizes section. | Yes |
parcel_details.add_ons | Array of ancillary codes. Please refer to the Add ons section below for further details. | No |
parcel_details.return_indicator | Indications if the label is used for returning items. Values must be OUTBOUND or RETURN. | Yes |
parcel_details.description | The box size name on the label for the dispatching person to choose the correct box for packing. | No |
parcel_details.currency | The currency to indicate the value unit of contents in a parcel. | Yes if parcel_details.service_code is any of Return Base Services table |
parcel_details.dimensions | An object containing the dimension details of a parcel. See Parcel Details - Dimension Object Parameters section. | Yes |
parcel_details.dimension Rules | For Courierpost labels that aren't Courierpost satchels, only one of the following is required: length_cm, width_cm, and height_cm OR volume_m3 (highly desirable - only an option if carrier is Courierpost) | |
parcel_details.dimensions.length_cm | Length of the parcel. | See parcel_details.dimension rules |
parcel_details.dimensions.width_cm | Width of the parcel. | See parcel_details.dimension rules |
parcel_details.dimensions.height_cm | Height of the parcel. | See parcel_details.dimension rules |
parcel_details.dimensions.volume_m3 | Volume of the parcel. | See parcel_details.dimension rules |
parcel_details.dimensions.weight_kg | Physical weight of the parcel in kilograms. | Yes |
parcel_details.dangerous_goods | An object containing the hazard identification information of a parcel. See Parcel Details - Dangerous Goods Object Parameters section below | No |
parcel_details.dangerous_goods.hazard_class | Classification of dangerous items in the parcel. Value must be from Hazard Identification Code List at: [http://www.ilo.org/legacy/english/protection/safework/cis/products/safetytm/tranann5.htm] | No |
parcel_details.dangerous_goods.type_code | United Nations Dangerous Goods identification code for dangerous items in the parcel. Value must be 4 digits. | No |
parcel_details.parcel_contents | An array containing content details of a parcel. | Yes if parcel_details.service_code is any of GST zero-rated Product Code in Return Base Services table |
parcel_details.parcel_contents.content_number | Number specifying an item in the parcel. Value must be an integer between 1 to 20 inclusive. | Yes if parcel_details.service_code is any of GST zero-rated Product Code in Return Base Services table |
parcel_details.parcel_contents.description | Description of the parcel contents. | Yes if parcel_details.service_code is any of GST zero-rated Product Code in Return Base Services table |
parcel_details.parcel_contents.harmonised_system_tariff | Internationally standardized name and number of the classification of the parcel content. | No |
parcel_details.parcel_contents.quantity | Quantity of units in the parcel. | Yes if parcel_details.service_code is any of GST zero-rated Product Code in Return Base Services table |
parcel_details.parcel_contents.weight_kg | Weight of each individual unit in the parcel (kgs). | Yes if parcel_details.service_code is any of GST zero-rated Product Code in Return Base Services table |
parcel_details.parcel_contents.value | Dollar value of each individual unit in the parcel. | Yes if parcel_details.service_code is any of GST zero-rated Product Code in Return Base Services table |
parcel_details.parcel_contents.country_code | Country code of the location in which the content piece was produced or manufactured. Value must be 2 characters. | Yes if parcel_details.service_code is any of GST zero-rated Product Code in Return Base Services table |
Services Codes and Courier Add Ons
Please talk to your business manager to ascertain the appropriate codes to use
Example : Manifest Only request for an International Inbound Economy Returns Parcel (IWXEROLE)
{
"carrier": "COURIERPOST",
"orientation": "LANDSCAPE",
"manifest_only": true,
"sender_reference_1": "RMA12345",
"sender_reference_2": "invoice ref",
"sender_details": {
"name": "Sender Name",
"phone": "",
"email": "info@sendername.com",
"company_name": "Sender Company",
"site_code": 17931
},
"pickup_address": {
"company_name": "ABC Returns",
"building_name": "",
"unit_type": "",
"unit_value": "",
"floor": "",
"street": "Private Bag 211000",
"suburb": "Returns Centre",
"city": "Auckland",
"country_code": "NZ",
"postcode": "2154"
},
"receiver_details": {
"name": "Miss Shopper",
"phone": "0212221598",
"email": "shopper@gmail.com"
},
"delivery_address": {
"is_collection": false,
"building_name": "",
"company_name": "",
"street": "236 Campbell Road",
"suburb": "Greenlane",
"city": "Auckland",
"country_code": "NZ",
"postcode": "1061"
},
"parcel_details": [
{
"tracking_number": "00793266831002284670",
"service_code": "IWXEROLE",
"return_indicator": "RETURN",
"currency": "NZD",
"dimensions": {
"length_cm": 30,
"width_cm": 20,
"height_cm": 20,
"weight_kg": 1
},
"parcel_contents": [
{
"content_number": 1,
"description": "mens shoes",
"quantity": 1,
"weight_kg": 0.3,
"value": 50,
"country_code": "CN"
}, {
"content_number": 2,
"description": "womens tshirt",
"quantity": 1,
"weight_kg": 0.15,
"value": 35,
"country_code": "CN"
}, {
"content_number": 3,
"description": "mens socks",
"quantity": 2,
"weight_kg": 0.1,
"value": 10,
"country_code": "CN"
}
]
}
]
}
Sample Request - Domestic Overnight CourierPost Outbound service
(An object specifying the label dimensions (in mm) upon which to print the label. If you are passing this object then the value should be 150x100 or 174x100 or an empty string. If it is empty then the default value is 174x100. This field is only mandatory to generate a 150x100 dimensions label.)
{
"carrier": "COURIERPOST",
"sender_reference_1": "Order Number 56452",
"sender_reference_2": "Sales",
"manifest_only": true,
"account_number": "99999999",
"sender_details": {
"company_name": "XYZ Widget Company",
"name": "Bob",
"phone": "+6425555916",
"site_code": 96306,
"email": "bob@xyzwidgets.com"
},
"receiver_details": {
"name": "Alice",
"phone": "+6424555105",
"email": "example@example.co.nz"
},
"pickup_address": {
"street": "107 Ransom Smyth Drive",
"suburb": "Goodwood Heights",
"city": "Auckland",
"postcode": "2105",
"country_code": "NZ"
},
"delivery_address": {
"street": "105 Woodberry Drive",
"suburb": "Flat Bush",
"city": "Auckland",
"postcode": "2016",
"country_code": "NZ"
},
"parcel_details": [{
"tracking_number": "00793266831002284670",
"service_code": "CPOLP",
"add_ons": [],
"return_indicator": "OUTBOUND",
"description": "Medium Box",
"dimensions": {
"length_cm": 30,
"width_cm": 30,
"height_cm": 30,
"weight_kg": 2
}
}]
}
Response Parameters
Field Name | Description | Mandatory |
consignment_id | Unique identifier for the consignment if the request is successful. | Yes |
message_id | A unique ID for the API call | Yes |
success | Returns true if request is successful. Returns false if request is not successful. | Yes |
Sample Response
{
"consignment_id": "S3BGUH",
"message_id": "bb590940-97b5-11e9-813b-02168927813a",
"success": true
}