Endpoints
- POST/ordersCreate an order
- GET/orders/{tracking_number}Retrieve an order
- PUT/orders/{tracking_number}Update an order that has not been labelled
- DELETE/orders/{tracking_number}Cancel an order
The order object
tracking_numberstringRequired- Unique random ID assigned by Shippit to an order. This can be used as a reference for future API calls or support tickets.
slugstringRequiredtracking_numberin lowercase.parcel_attributesarray of objectsOptional- An array of parcel specifications that were created with the order.
Show child attributesHide child attributes
qtynumberOptional- The number of parcels specified by the entry.
weightnumberOptional- Weight of the parcel in kilograms.
depthnumberOptional- Depth of the parcel in metres
lengthnumberOptional- Length of the parcel in metres
widthnumberOptional- Width of the parcel in metres.
label_numberstringOptional- Parcel number in the carrier system.
This is used when the order is a track-only order, to match the parcel number in a carrier against the parcel recorded in Shippit. tags[string]Optional- The list of tags attached to the parcel. Omitted when the parcel has no tags.
productsarray of objectsOptional- An array of product items specified in the order.
If product information was not provided, this array is blank.Show child attributesHide child attributes
titlestringOptionalconditional-- Title or description of the product. Mandatory for international orders with specific couriers.packedintegerOptional- The number of products packed; used in partial orders, or otherwise when the number of products in the parcel is less than the total in the order. If not present, set to product
quantity.
If this is present, at least 1 item should have packed greater than0.
For international orders, all items should have packed greater than0. skustringOptionalconditional-- Stock Keeping Unit (SKU) code of the product, for stock keeping purposes. Mandatory on international orders with specific couriers.product_line_idstringOptional- Product line associated with product. Like SKU, this is also for stock keeping purposes, and can be used when SKU would not be enough (e.g. an order containing multiple lines with the same SKU)
origin_country_codestringOptional- Two-letter country code (ISO 3166-1 Alpha-2) for the product's origin country. This is used in customs tracking for International shipments. Defaults to the home country of the Merchant.
locationstringOptional- Location of the product
dangerous_goods_codestringRequired if shipping dangerous goods- The dangerous goods code required when making dangerous goods declarations. Shipping any class of restricted or dangerous goods must be pre-approved by Shippit and the carrier. See Shipping dangerous goods.
dangerous_goods_textstringRequired if shipping dangerous goods- Additional information related to the dangerous goods being shipped
dangerous_goods_classstringRequired if shipping dangerous goods- The class of dangerous goods being shipped.
tariff_codestringOptional- Tariff or HS code for international orders declarations
quantityintegerOptional- The number of products
pricenumberOptional- Unit price of each product line item. Used in the packing slip and customs declarations.
tags[string]Optional- The list of tags attached to the product line. Omitted when the product line has no tags.
tags[string]Optional- The list of tags attached to the order. Omitted when the order has no tags.
tracking_urlstringOptional- The URL of the order's customer tracking page.
returnbooleanOptional- Whether or not the order is a return order. This method of processing returns is no longer recommended. See returns for more information.
idintegerOptional- Shippit internal numerical ID
processing_statestringOptional- Internal order status set and progressed by Shippit upon creation.
invoice_numberanyOptional- Internal link between an order and a Shippit invoice - this is almost always null on order creation.
courier_delivery_instructionsstringOptional- Delivery instructions as sent to the courier. In most cases, this is the same as the
delivery_instructionspassed into the request. Some couriers, however, have a specific format expected when sending delivery instructions through their API. This contains the actual delivery instructions that get sent through the courier API when booked. courier_namestringOptional- Human-readable name of the courier that has been allocated to the order, or
nullif the order hasn't been allocated yet.
If you're creating orders by passing incourier_type, the courier is usually not yet assigned at order creation and you receivenull. Courier allocation is run as a background process depending on the merchant preferences, available couriers, and quotes returned by the couriers, which may take a few seconds to complete after order creation.
If you're passing in a specific courier keyword incourier_allocation, this reflects the courier that is specified.
Note that the Shippit web user can also update the courier in between API calls. The final courier that has been assigned can be determined from the LABEL call. priceanyOptional- The price that is charged for the allocated order.
If you're creating orders by passing incourier_type, the courier is usually not yet assigned at order creation and you receive0. Courier allocation is run as a background process depending on the merchant preferences, available couriers, and quotes returned by the couriers, which may take a few seconds to complete after order creation.
Note that the Shippit web user can also update the courier in between API calls. The final courier and quoted price can be determined from the LABEL call.
If the quoted price is still0during the LABEL call, something likely went wrong with the courier selection and the order may need to be amended. customs_documents_require_printingbooleanOptional- Whether or not customs documents, such as declarations, invoices, etc for the Order that should be printed and included with the shipment. By default this is
truefor International orders. courier_typestringOptional- The courier allocated to the order. See the ORDER CREATE
courier_allocationAPI for available keywords. courier_allocationstringOptional- The class-level identifier for the courier allocated to the order.
tracking_historiesarray of objectsOptional- An array of Tracking History statuses that are are shown to the recipient as part of the order's history on the tracking page.
Show child attributesHide child attributes
statusstringRequired- The status of the order
timestampstringRequired- The date / time when the status change occurred.
statestringOptional- The state of the order as progressed by the merchant.
userobjectOptional- Represents the recipient of the order
Show child attributesHide child attributes
emailstringRequired- The customer's email address. Must match regular expression as defined in https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address
first_namestringRequired- The customer's first name. If
last_nameis not provided, then it is used as the customer's full name. last_namestringOptional- The customer's last name
mobilestringOptional- Mobile number of the user who purchased the order. This could be different to the person receiving the order.
documentsobjectRequired- Documents attached to the label response
Show child attributesHide child attributes
archive_awbobjectOptional- Archive Airway Bill
Show child attributesHide child attributes
urlstringOptional- URL to a printable PDF document.
This is a pre-signed URL, generated by the Shippit platform to provide access to a secured document. The pre-signed URL remains valid for 7 days. If you need to access this document after expiration, please make another request for a new URL to be issued. page_sizestringOptional- none
file_typestringOptional- File type of the label
encoded_labelstringOptional- If you have ZPL for your account, printable ZPL data for the document.
customs_invoiceobjectOptional- Customs invoice. Generated for International orders.
Show child attributesHide child attributes
urlstringOptional- URL to a printable PDF document.
This is a pre-signed URL, generated by the Shippit platform to provide access to a secured document. The pre-signed URL remains valid for 7 days. If you need to access this document after expiration, please make another request for a new URL to be issued. page_sizestringOptional- none
file_typestringOptional- File type of the label
encoded_labelstringOptional- If you have ZPL for your account, printable ZPL data for the document.
dangerous_goods_declarationobjectOptional- Dangerous goods declaration - generated for orders that have dangerous goods properties specified.
Show child attributesHide child attributes
urlstringOptional- URL to a printable PDF document.
This is a pre-signed URL, generated by the Shippit platform to provide access to a secured document. The pre-signed URL remains valid for 7 days. If you need to access this document after expiration, please make another request for a new URL to be issued. page_sizestringOptional- none
file_typestringOptional- File type of the label
encoded_labelstringOptional- If you have ZPL for your account, printable ZPL data for the document.
packing_slipobjectOptional- Packing slip for the order.
Show child attributesHide child attributes
urlstringOptional- URL to a printable PDF document.
This is a pre-signed URL, generated by the Shippit platform to provide access to a secured document. The pre-signed URL remains valid for 7 days. If you need to access this document after expiration, please make another request for a new URL to be issued. page_sizestringOptional- none
file_typestringOptional- File type of the label
encoded_labelstringOptional- If you have ZPL for your account, printable ZPL data for the document.
shipping_labelobjectOptional- Shipping label for the order.
If the merchant account was configured to have the label and packing slip combined into a single document, theshipping_labelprints the label only without the packing slip.
If the merchant account was configured to enable ZPL output, can contain anencoded_labelfield containing ZPL output.Show child attributesHide child attributes
urlstringOptional- URL to a printable PDF document.
This is a pre-signed URL, generated by the Shippit platform to provide access to a secured document. The pre-signed URL remains valid for 7 days. If you need to access this document after expiration, please make another request for a new URL to be issued. page_sizestringOptional- none
file_typestringOptional- File type of the label
encoded_labelstringOptional- If you have ZPL for your account, printable ZPL data for the document.
The landed_cost object
customs_dutyintegerOptional- The customs duty payable on the order
import_feeintegerOptional- The import fee payable on the order
import_taxintegerOptional- The import tax payable on the order
landed_cost_guaranteedbooleanOptional- Has the landed cost guarantee been enabled for this order
incotermstringOptional- The incoterm to use for the order. For valid values, see International orders in the Developer guide.
receiver_freight_chargedecimal stringOptional- The receiver freight charge payable on the order
export_reasonstringOptional- The reason for exporting these goods. For valid values, see International orders in the Developer guide.
{
"authority_to_leave": "Yes",
"cash_on_delivery_amount": 0.0,
"courier_type": "standard",
"courier_name": "Couriers Please",
"courier_allocation": "CouriersPlease",
"receiver_contact_number": "0400000000",
"receiver_name": "Receiver Name",
"receiver_language_code": "EN",
"retailer_invoice": "Retailer Invoice",
"retailer_reference": "Retailer Reference",
"product_currency": "AUD",
"suppress_communications": false,
"tracking_only": false,
"features": [],
"description": "",
"duties": 0.0,
"tax_amount": 0.0,
"customs_clearance_attributes": {
"tax_id_type": "GBVAT",
"tax_id_country_code": "GB",
"tax_id_number": "GB 334 8373 88",
"incoterm": "DDP",
"export_reason": "Personal Belongings or Personal Use",
"receiver_freight_charge_amount": 10.0,
"recipient_id": "123"
},
"return": false,
"pickup_at": "2025-12-30T08:59:59+11:00",
"pickup_deadline_at": "2025-12-30T08:59:59+11:00",
"dropoff_at": "2025-12-31T08:59:59+11:00",
"dropoff_deadline_at": "2025-12-31T08:59:59+11:00",
"delivery_company": "Delivery Company",
"delivery_address": "1 Test Street",
"delivery_suburb": "Sydney",
"delivery_state": "NSW",
"delivery_postcode": "2000",
"delivery_country_code": "AU",
"delivery_timezone": "Australia/Sydney",
"delivery_instructions": "Leave on door",
"state": "order_placed",
"user_attributes": {
"email": "test@example.com",
"first_name": "Test",
"last_name": "Example",
"mobile": "0400000000"
},
"parcel_attributes": [
{
"qty": 1,
"length": 0.1,
"width": 0.2,
"depth": 0.3,
"weight": 20.0,
"label_number": "PARCELLABEL01"
}
],
"product_attributes": [
{
"price": 12.34,
"tariff_code": "62121000",
"quantity": 1,
"title": "Title",
"sku": "SKU12345",
"dangerous_goods_code": "1",
"dangerous_goods_text": "Explosives",
"origin_country_code": "AU",
"product_line_id": "PL1",
"location": "Loc1",
"dangerous_goods_class": "EXP",
"packed": 1
}
]
}Create an order
POST/orders
Submits an order to be created on Shippit.
At minimum, an order requires a delivery location, user details, and parcel details. Shippit then generates the order, allocates the courier, and fills in the origin location based on the provided info and merchant configuration on Shippit.
Note that the required fields for an order can vary depending on the type of order, the requested courier, whether it is local or international, and a range of other factors.
There is a maximum of 1000 parcels per quote request.
To perform this operation, you must be authenticated with an authentication token.
Parameters
Pass the order object under the order field.
parcel_attributesarray of objectsRequired- An array of parcel specifications to be included in the order.
For information about using
parcel_attributesin conjunction withproduct_attributes, see the create an order section of the Developer Guide.Show child attributesHide child attributes
titlestringOptionalconditional-- Title or description of the product. Mandatory for international orders.package_typestringOptional- Set to
palletif the package is a pallet, otherwise leave this field out. You can't mix pallets with other types of parcels within an order. packedintegerOptional- The number of products packed; used in partial orders, or otherwise when the number of products in the parcel is less than the total in the order. If not present, set to product
quantity.
If this is present, at least 1 item should have packed greater than0.
For international orders, all items should have packed greater than0. skustringOptionalconditional-- Stock Keeping Unit (SKU) code of the product, for stock keeping purposes. Mandatory for some carriers.product_line_idstringOptional- Product line associated with product. Like SKU, this is also for stock keeping purposes, and can be used when SKU would not be enough (e.g. an order containing multiple lines with the same SKU)
origin_country_codestringOptional- Two-letter country code (ISO 3166-1 Alpha-2) for the product's origin country. This is used in customs tracking for International shipments. Defaults to the home country of the Merchant.
locationstringOptional- Location of the product
dangerous_goods_codestringRequired if shipping dangerous goods- The dangerous goods code required when making dangerous goods declarations. Shipping any class of restricted or dangerous goods must be pre-approved by Shippit and the carrier. See Shipping dangerous goods.
dangerous_goods_textstringRequired if shipping dangerous goods- Additional information related to the dangerous goods being shipped
dangerous_goods_classstringRequired if shipping dangerous goods- The class of dangerous goods being shipped.
pricenumberOptional- Unit price of each product line item. Used in the packing slip and customs declarations.
weightnumberOptional- Weight of the parcel in kilos.
depthnumberOptional- Depth of the parcel in metres
lengthnumberOptional- Length of the parcel in metres
widthnumberOptional- Width of the parcel in metres.
label_numberstringOptional- Parcel number in the carrier system.
This is used when the order is a track-only order, to match the parcel number in a carrier against the parcel recorded in shippit. tags[string]Optional- A list of labels to attach to the parcel. Tags are stored in lowercase, are limited to 255 characters each, and are capped at 250 tags per parcel. Duplicate and empty values are ignored.
qtynumberOptionalconditional-- The number of products specified by the entry.
There is a maximum of 1000 parcels per quote request.
Should not be present if aproduct_attributeskey is present in the request.
IfAllocate each item in an order to a separate cartonis enabled in Shippit, a separate parcel is generated for each product listed.
product_attributesarray of objectsOptional- an array of product details. If this is present, each item in
parcel_attributesrepresents a separate parcel, while each line inproduct_attributesrepresents a product line item.
There is a maximum of 1000 parcels per request.You can provide product details using
parcel_attributes,product_attributes, or both. For more information, see the create an order section of the Developer Guide.Show child attributesHide child attributes
titlestringOptionalconditional-- Title or description of the product. Mandatory for international orders.packedintegerOptional- The number of products packed; used in partial orders, or otherwise when the number of products in the parcel is less than the total in the order. If not present, set to product
quantity.
If this is present, at least 1 item should have packed greater than0.
For international orders, all items should have packed greater than0. skustringOptionalconditional-- Stock Keeping Unit (SKU) code of the product, for stock keeping purposes. Mandatory for some carriers.product_line_idstringOptional- Product line associated with product. Like SKU, this is also for stock keeping purposes, and can be used when SKU would not be enough (e.g. an order containing multiple lines with the same SKU)
origin_country_codestringOptional- Two-letter country code (ISO 3166-1 Alpha-2) for the product's origin country. This is used in customs tracking for International shipments. Defaults to the home country of the Merchant.
locationstringOptional- Location of the product
dangerous_goods_codestringRequired if shipping dangerous goods- The dangerous goods code required when making dangerous goods declarations. Shipping any class of restricted or dangerous goods must be pre-approved by Shippit and the carrier. See Shipping dangerous goods.
dangerous_goods_textstringRequired if shipping dangerous goods- Additional information related to the dangerous goods being shipped
dangerous_goods_classstringRequired if shipping dangerous goods- The class of dangerous goods being shipped.
tariff_codestringOptional- Tariff or HS code for international orders declarations
mid_codestringOptional- Manufacturer identification code (MID) used for customs declarations. This code identifies the manufacturer of the product and is required for some international shipments, particularly to the United States.
quantityintegerOptional- The number of products
pricenumberOptional- Unit price or amount paid at checkout by the recipient for each product line item. Packing slip and customs declarations default to this value. Required for transit protection.
cost_pricenumberOptional- The cost of the product, typically the price before discounts, markups, or customer pricing rules are applied.
retail_pricenumberOptional- The listed product price, shown in the catalogue or storefront before checkout, and before duties or taxes are applied.
tags[string]Optional- A list of labels to attach to the product line. Tags are stored in lowercase, are limited to 255 characters each, and are capped at 250 tags per product line. Duplicate and empty values are ignored.
authority_to_leavestringOptional- whether or not the order can be left unattended at the delivery address, options are
YesorNo cash_on_delivery_amountnumberOptional- Used by some carriers, such as
NinjaVan, to indicate amount to be received on delivery for cash on delivery orders. courier_typestringOptional- The service level for the order. For a complete list of service level strings, see the Service levels section in the Developer Guide. If you want to specify the courier in the request, use
courier_allocationinstead.
You must specify eithercourier_allocationorcourier_type. If omitted or invalid, an enabled carrier that matches the default service level is allocated instead. The default service level isstandardand can be configured by Shippit on request. courier_allocationstringOptional- You must specify either
courier_allocationorcourier_type.
For a complete list of carrier reference strings, see the Carriers section in the Developer Guide.
If omitted or invalid, an enabled carrier that matches the default service level is allocated instead. The default service level isstandard, and can be configured by Shippit on request.
Iftracking_onlyis set totrue, thencourier_allocationis required. receiver_contact_numberstringOptionalconditional-- phone number of the person receiving the order, may be different than the user who purchased the order. Mandatory for international orders, even ifvalidateis set tofalse.receiver_namestringOptional- name of the person receiving the order if different than the user who purchased the order
retailer_invoicestring or numberOptional- Order reference number provided by the merchant. This is what the recipient sees on items like the shipping label, packing slip, customs declaration, or receipt. This attribute accepts numeric values, but it's recommended that you pass this in as a string where possible.
retailer_referencestringOptional- An additional order reference field
receiver_language_codestringOptional- Two-letter ISO 639-1 language code of the recipient. Used to determine the language of tracking notifications and other communications. Defaults to
EN validatebooleanOptional- when true, run validations against the submitted order and only save the order if the supplied parameters are valid.
Validations run
- destination suburb and postcode checked against a list of known postcodes / suburbs.
- If a valid combination is not found, a suggested address is returned. product_currencystringOptional- Three letter ISO 4217 currency code that applies to the order, which is sent to the carrier and presented on the customs invoice. Defaults to
AUD suppress_communicationsbooleanOptional- if true, all notifications are suppressed for this specific order
tracking_onlybooleanOptional- Whether the order being passed is a track-only order.
A track-only order** is an order where the courier was allocated outside of Shippit, but was loaded into Shippit to take advantage of tracking and notifications. If this is present and set totrue, this order is a track-only order.
If set totrue, thencourier_allocationmust be present. tracking_historiesarray of objectsOptional- An array of Tracking History statuses that are are shown to the recipient as part of the order's history on the tracking page.
Show child attributesHide child attributes
statusstringRequired- The status of the order
timestampstringRequired- The date / time when the status change occurred.
user_attributesobjectOptional- Represents the customer details attached to the order.
Show child attributesHide child attributes
emailstringRequired- The customer's email address. Must match regular expression as defined in https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address
first_namestringRequired- The customer's first name. If
last_nameis not provided, then it is used as the customer's full name. last_namestringOptional- The customer's last name
mobilestringOptional- Mobile number of the user who purchased the order. This could be different to the person receiving the order.
features[string]Optional- Some carriers provide add-on services or features that you can indicate in the order. For valid values, see Create orders in the Developer guide.
tags[string]Optional- A list of labels to attach to the order, used for filtering and organisation. Tags are stored in lowercase, are limited to 255 characters each, and are capped at 250 tags per order. Duplicate and empty values are ignored. For more information, see the order tags section of the Developer Guide.
customer_shipping_fee_paidstringOptional- Shipping fee paid by the customer.
This is displayed on the commercial invoice for international orders to support accurate duties and tax calculation by customs. This fee is not related to the Shippit quote. When not provided, no shipping fee is displayed on the commercial invoice. descriptionstringOptional- Goods description for the order. May appear in labels for international orders. If not provided, defaults to the
goods typesetting from the international shipping settings of the merchant account. Description is mandatory for international orders whenvalidateis set totrue. dutiesnumberOptional- The duty amount for an order. This is displayed on the commercial invoice for international orders to calculate the invoice total. Duties are not returned by Shippit. When not provided, no duties amount is displayed on the commercial invoice. eg: 12.90
tax_amountnumberOptional- The tax amount for an order. This is displayed on the commercial invoice for international orders to calculate the invoice total. When not provided, no tax amount is displayed separately on the commercial invoice. eg: 2.39
customs_clearance_attributesobjectOptional- Represents customs clearance parameters for international orders.
Show child attributesHide child attributes
tax_id_typestringOptional- The shipper's tax ID type which is passed to a carrier for the purpose of customs clearance. For valid values, see International orders in the Developer guide.
tax_id_country_codestringOptional- The issuing country of the tax ID number in ISO 3166 Alpha-2 format. For valid values, see the IBAN list.
tax_id_numberstringOptional- The tax ID number that is declared against this order.
incotermstringOptional- The incoterm to use for the order. For valid values, see International orders in the Developer guide.
export_reasonstringOptional- The reason for exporting these goods. For valid values, see International orders in the Developer guide.
recipient_idstringOptional- A free text field to provide a identification number for a recipient. For example, a citizen identification number or passport number which is required for customs clearance for some international destinations.
receiver_freight_charge_amountnumberOptional- The amount charged to the receiver for freight services. This represents the cost that the receiver is responsible for paying as part of the freight or shipping charges.
pickup_postcodestringOptional- Pickup postcode for the return order
* required for return orders pickup_addressstringOptional- Pickup address for the return order
* required for return orders pickup_suburbstringOptional- Pickup suburb for the return order
* required for return orders pickup_statestringOptional- Pickup state for the return order
Australian states valid options are:NSW,QLD,ACT,WA,NT,SA,VIC,TAS
* required for return orders returnbooleanOptional- Whether the order being passed is a return order or not. This method of processing returns is no longer recommended. See returns for more information.
pickup_atstringOptional- The start of the pickup window for
OnDemandorders in the formatYYYY-MM-DDTHH:mm:ss+HH:mm pickup_deadline_atstringOptional- The end of the pickup window for
OnDemandorders in the formatYYYY-MM-DDTHH:mm:ss+HH:mm dropoff_atstringOptional- The start of the drop off window for
OnDemandorders in the formatYYYY-MM-DDTHH:mm:ss+HH:mm dropoff_deadline_atstringOptional- The end of the drop off window for
OnDemandorders in the formatYYYY-MM-DDTHH:mm:ss+HH:mm delivery_companystringOptional- Company name for the delivery
delivery_addressstringRequired- Delivery address for the order
delivery_suburbstringRequired- Delivery suburb for the order
delivery_statestringRequired- Delivery state for the order. Australian States valid options are
NSW,QLD,ACT,WA,NT,SA,VIC,TAS delivery_postcodestringRequired- Delivery postcode for the order
delivery_country_codestringOptional- Two letter country code
delivery_timezonestringOptional- Time zone for the delivery
delivery_instructionsstringOptional- Special delivery instructions for the order, limited to 55 characters
group_orderobjectOptional- Represents the group order details that the order belongs to.
Show child attributesHide child attributes
idstringRequired- The group order ID. Retrieved from the response when creating the group order.
partner_platformstringOptional- The partner platform that originated the order. Used to identify orders from integrated third-party platforms. Examples:
zonos,Global‑e partner_platform_idstringOptional- The unique identifier for the order within the partner platform system. This allows tracking and referencing the order back to the originating platform. For example,
order_ab000abc-123x-456y-789z-xyz987654321(Zonos),GE98765432109(Global‑e).
Response codes
| Status | Meaning | Description |
|---|---|---|
| 200 | OK | Successful order response |
| 400 | Bad Request | Returned when Shippit has a problem with the input parameters. Not all input errors can result in this error. Depending on the request, the error may be parsed as an unknown error or as part of the response body. If returned as text/html, it is blank. |
| 403 | Forbidden | Returned when the API key doesn't match a valid merchant account, or the API secret is missing the permission this endpoint requires. |
| 415 | Unsupported Media Type | Returned when the request doesn't set a Content-Type of application/json. |
| 422 | Unprocessable Entity | Returned when validate is set to true and the order address is not valid or a mandatory order parameter was not provided. Specifies which input fields failed validation and may give a suggested_address form if one is found. |
| 500 | Internal Server Error | Returned when an unknown error occurs. May be returned if Shippit has trouble with the combination of the input or merchant account configuration. |
{
"order": {
"courier_type": "standard",
"delivery_address": "1 Union Street",
"delivery_postcode": "2009",
"delivery_state": "NSW",
"delivery_suburb": "Pyrmont",
"authority_to_leave": "Yes",
"parcel_attributes": [
{
"qty": 1,
"weight": 2.1
}
],
"user_attributes": {
"email": "test@example.com",
"first_name": "John",
"last_name": "Smith"
},
"group_order": {
"id": "GO2mDx5C10WrE"
}
}
}{
"response": {
"courier_delivery_instructions": "special instructions",
"courier_job_id": "30734876324",
"courier_name": "eParcel",
"courier_allocation": "Eparcel",
"delivery_address": "1 Union Street",
"delivery_instructions": "test special instructions",
"delivery_postcode": "2009",
"delivery_state": "NSW",
"delivery_suburb": "Pyrmont",
"id": 26599,
"parcel_attributes": [
{
"depth": 0.13,
"length": 0.1,
"qty": 1,
"weight": 16.8,
"width": 0.11
}
],
"products": [
{
"title": "Industrial Paint Stripper",
"price": 29.13,
"sku": 0.1,
"tariff_code": "000999",
"dangerous_goods_code": "ID8000",
"dangerous_goods_text": "ID8000 Consumer commodities - Dangerous Goods as per attached DGD",
"origin_country_code": "TH",
"quantity": 1
}
],
"price": "0.0",
"processing_state": "created",
"receiver_contact_number": "0400000000",
"receiver_name": "Josh",
"retailer_invoice": "#23201005",
"slug": "ppu38wz2tdonj",
"state": "processing",
"tracking_number": "PPu38Wz2TdoNj",
"user_attributes": {
"email": "test@example.com",
"first_name": "jon",
"last_name": "smith",
"mobile": "0491570006"
}
}
}{
"response": {
"id": 3020594,
"tracking_number": "PPvd8Ba8g9r3B",
"state": "processing",
"processing_state": "created",
"delivery_address": "1 Victoria St",
"delivery_suburb": "Melbourne",
"delivery_postcode": "3000",
"delivery_state": "VIC",
"receiver_name": "John Smith",
"receiver_contact_number": "(123) 456789",
"slug": "ppvd8ba8g9r3b",
"price": "0.0",
"retailer_invoice": "#ABC123456",
"user_attributes": {
"email": "customer@email.com",
"first_name": "John Smith",
"mobile": "(123) 456789"
},
"parcel_attributes": [
{
"qty": 1,
"length": 0.325,
"width": 0.205,
"depth": 0.03,
"weight": 0.5
}
],
"products": [
{
"price": 50,
"quantity": 1,
"title": "Product Title",
"sku": "9354484070976",
"origin_country_code": "AU"
}
],
"return": true,
"pickup_address": "1 Union Street",
"pickup_suburb": "Pyrmont",
"pickup_postcode": "2009",
"pickup_state": "NSW"
}
}{
"response": {
"courier_delivery_instructions": "special instructions",
"courier_job_id": "30734876324",
"courier_name": "eParcel",
"courier_allocation": "Eparcel",
"delivery_address": "1 Union Street",
"delivery_instructions": "test special instructions",
"delivery_postcode": "2009",
"delivery_state": "NSW",
"delivery_suburb": "Pyrmont",
"id": 26599,
"parcel_attributes": [
{
"depth": 0.13,
"length": 0.1,
"qty": 1,
"weight": 16.8,
"width": 0.11
}
],
"products": [
{
"title": "Industrial Paint Stripper",
"price": 29.13,
"sku": 0.1,
"tariff_code": "000999",
"dangerous_goods_code": "ID8000",
"dangerous_goods_text": "ID8000 Consumer commodities - Dangerous Goods as per attached DGD",
"origin_country_code": "TH",
"quantity": 1
}
],
"price": "0.0",
"processing_state": "created",
"receiver_contact_number": "0400000000",
"receiver_name": "Josh",
"retailer_invoice": "#23201005",
"slug": "ppu38wz2tdonj",
"state": "processing",
"tracking_number": "PPu38Wz2TdoNj",
"user_attributes": {
"email": "test@example.com",
"first_name": "jon",
"last_name": "smith",
"mobile": "0491570006"
},
"wallet_order_tracking_attributes": {
"order_type_identifier": "apple.order.type.identifier",
"order_identifier": "ppu38wz2tdonj",
"web_service_url": "https://api.shippit.com/appleserviceurl",
"authentication_token": "ABCDEFG123456789"
}
}
}{
"error": "bad_request",
"error_description": "The data given to this server does not meet our criteria."
}{
"error": "invalid_merchant_account",
"error_description": "An unknown error has occurred."
}{
"error": "invalid",
"error_description": "The details provided are invalid",
"delivery_postcode": [
"is invalid for Australia and should follow the pattern 9999"
],
"delivery_suburb": [
"Invalid suburb name for the postcode 20261"
],
"suggested_address": {
"suburb": "bondi beach",
"postcode": "2026",
"state": "NSW",
"country_code": "au"
}
}{
"error": "system",
"error_description": "An unknown error has occurred."
}Retrieve an order
GET/orders/{tracking_number}
Retrieves the details of an order from Shippit.
If the order doesn't exist, you receive a 404 error.
To perform this operation, you must be authenticated with an authentication token.
A successful request returns the full order object.
Parameters
tracking_numberstringpathRequired- The tracking number of the order.
Response codes
| Status | Meaning | Description |
|---|---|---|
| 200 | OK | Returns details of the order |
| 403 | Forbidden | Returned when the API key doesn't match a valid merchant account, or the API secret is missing the permission this endpoint requires. |
| 404 | Not Found | Returned when the given ID isn't found. |
| 500 | Internal Server Error | Returned when an unknown error occurs. May be returned if Shippit has trouble with the combination of the input or merchant account configuration. |
{
"authority_to_leave": "Yes",
"cash_on_delivery_amount": 0.0,
"courier_type": "standard",
"courier_name": "Couriers Please",
"courier_allocation": "CouriersPlease",
"receiver_contact_number": "0400000000",
"receiver_name": "Receiver Name",
"receiver_language_code": "EN",
"retailer_invoice": "Retailer Invoice",
"retailer_reference": "Retailer Reference",
"product_currency": "AUD",
"suppress_communications": false,
"tracking_only": false,
"features": [],
"description": "",
"duties": 0.0,
"tax_amount": 0.0,
"customs_clearance_attributes": {
"tax_id_type": "GBVAT",
"tax_id_country_code": "GB",
"tax_id_number": "GB 334 8373 88",
"incoterm": "DDP",
"export_reason": "Personal Belongings or Personal Use",
"receiver_freight_charge_amount": 10.0,
"recipient_id": "123"
},
"return": false,
"pickup_at": "2025-12-30T08:59:59+11:00",
"pickup_deadline_at": "2025-12-30T08:59:59+11:00",
"dropoff_at": "2025-12-31T08:59:59+11:00",
"dropoff_deadline_at": "2025-12-31T08:59:59+11:00",
"delivery_company": "Delivery Company",
"delivery_address": "1 Test Street",
"delivery_suburb": "Sydney",
"delivery_state": "NSW",
"delivery_postcode": "2000",
"delivery_country_code": "AU",
"delivery_timezone": "Australia/Sydney",
"delivery_instructions": "Leave on door",
"state": "order_placed",
"user_attributes": {
"email": "test@example.com",
"first_name": "Test",
"last_name": "Example",
"mobile": "0400000000"
},
"parcel_attributes": [
{
"qty": 1,
"length": 0.1,
"width": 0.2,
"depth": 0.3,
"weight": 20.0,
"label_number": "PARCELLABEL01"
}
],
"product_attributes": [
{
"price": 12.34,
"tariff_code": "62121000",
"quantity": 1,
"title": "Title",
"sku": "SKU12345",
"dangerous_goods_code": "1",
"dangerous_goods_text": "Explosives",
"origin_country_code": "AU",
"product_line_id": "PL1",
"location": "Loc1",
"dangerous_goods_class": "EXP",
"packed": 1
}
]
}{
"error": "invalid_merchant_account",
"error_description": "An unknown error has occurred."
}{
"error": "not_found",
"error_description": "The requested resource could not be found."
}Update an order
PUT/orders/{tracking_number}
Updates an order in Shippit.
To use this endpoint, you need to retrieve the order details GET endpoint, pass the details to this endpoint in a JSON wrapper, and edit any fields that you want to change.
There are a number of types of orders that are currently unable to be updated, including priority and on-demand orders, return orders, track-only orders, and those which are cancelled or labelled.
For more information, see the Order modification section in the Developer Guide.
If the order doesn't exist, you receive a 404 error instead.
To perform this operation, you must be authenticated with an authentication token.
Parameters
Pass the order object under the order field.
authority_to_leavestringRequired- whether or not the order can be left unattended at the delivery address, options are
YesorNo cash_on_delivery_amountnumbertrue (nullable)- Used by some carriers, such as
NinjaVan, to indicate amount to be received on delivery for cash on delivery orders. courier_typestringRequired- The service level for the order. For a complete list of service level strings, see the Service levels section in the Developer Guide. If you want to specify the courier in the request, use
courier_allocationinstead.
You must specify eithercourier_allocationorcourier_type. If omitted or invalid, an enabled carrier that matches the default service level is allocated instead. The default service level isstandardand can be configured by Shippit on request. courier_allocationstringtrue (nullable)- You must specify either
courier_allocationorcourier_type.
For a complete list of carrier reference strings, see the Carriers section in the Developer Guide.
If omitted or invalid, an enabled carrier that matches the default service level is allocated instead. The default service level isstandard, and can be configured by Shippit on request.
Iftracking_onlyis set totrue, thencourier_allocationis required. receiver_contact_numberstringtrue (nullable)- phone number of the person receiving the order, may be different than the user who purchased the order. Mandatory for international orders.
receiver_namestringRequired- name of the person receiving the order if different than the user who purchased the order
receiver_language_codestringtrue (nullable)- Two-letter ISO 639-1 language code of the recipient. Used to determine the language of tracking notifications and other communications. Defaults to
EN retailer_invoicestring or numbertrue (nullable)- Merchant invoice number - the customer-facing sales order reference of the order. This is what the recipient sees on the shipping label, packing slip, customs declaration, receipt, etc. This attribute accepts numeric values, but it's recommended that you pass this in as a string where possible.
retailer_referencestringtrue (nullable)- Merchant reference id - if the merchant uses a separate internal reference id for the order, it can be placed here.
product_currencystringtrue (nullable)- Three letter ISO 4217 currency code that applies to the order, which is sent to the carrier and presented on the customs invoice. Defaults to
AUD suppress_communicationsbooleantrue (nullable)- if true, all notifications are suppressed for this specific order
features[string]true (can be empty array)- Some carriers provide add-on services or features that you can indicate in the order. These services are identified by a unique string, and are dependent on the carrier. To request these services, add the appropriate string in this field. For example,
white_glove, oridentity_on_delivery. descriptionstringtrue (nullable)- Goods description for the order. May appear in labels for international orders. If not provided, defaults to the
goods typesetting from the international shipping settings of the merchant account. Description is mandatory for international orders whenvalidateis set totrue. dutiesnumbertrue (nullable)- The duty amount for an order. This is displayed on the commercial invoice for international orders to calculate the invoice total. Duties are not returned by Shippit. When not provided, no duties amount is displayed on the commercial invoice. eg: 12.90
tax_amountnumbertrue (nullable)- The tax amount for an order. This is displayed on the commercial invoice for international orders to calculate the invoice total. When not provided, no tax amount is displayed separately on the commercial invoice. eg: 2.39
customs_clearance_attributesobjectOptional- Represents customs clearance parameters for international orders.
Show child attributesHide child attributes
tax_id_typestringOptional- The Shippier's tax id type which is passed to a carrier for the purpose of customs clearance. Valid values include:
-EORI
-IOSS
-LVG
-OSR
-VOEC
-VAT/GST
-FTZ
-DAN
-TAN
-DTF
-EIN
-SSN
-DUN
-FED
-STA
-CNP
-GBVAT
-NZ IRD tax_id_country_codestringOptional- The issuing country of the tax id number in in ISO 3166 Alpha-2 format. eg. GB for Great Britain
tax_id_numberstringOptional- The tax id number that is declared against this order.
incotermstringOptional- A universal term of trade that defines the responsibility and obligations with the transport of goods. Most commonly used to indicate the responsible party for payment of duties and taxes. Valid values include:
-DDU
-DDP
-EXW
-FCA
-CPT
-CFR
-CIP
-CIF
-DAF
-DAT
-DAP
-DPU
-DES
-DEQ
-FAS
-FOB export_reasonstringOptional- A term used to indicate the reason for export of dutiable goods. Selected options can affect how your shipment is cleared and how much tax is imposed on your shipment during customs clearance. Example values:
-Permanent
-Temporary
-Return For Repair
-Used Exhibition Goods To Origin
-Intercompany Use
-Commercial Purpose Or Sale
-Personal Belongings or Personal Use
-Sample
-Gift
-Return To Origin
-Warranty Replacement
-Diplomatic Goods
-Defence Material recipient_idstringOptional- A free text field to provide a identification number for a recipient. For example, a citizen identification number or passport number which is required for customs clearance for some international destinations. eg: PA1992991
receiver_freight_charge_amountnumberOptional- The amount charged to the receiver for freight services. This represents the cost that the receiver is responsible for paying as part of the freight or shipping charges.
delivery_companystringtrue (nullable)- Company name for the delivery
delivery_addressstringRequired- Delivery address for the order
delivery_suburbstringRequired- Delivery suburb for the order
delivery_statestringRequired- Delivery state for the order. Australian States valid options are
NSW,QLD,ACT,WA,NT,SA,VIC,TAS delivery_postcodestringRequired- Delivery postcode for the order
delivery_country_codestringRequired- Two letter country code
delivery_timezonestringtrue (nullable)- Time zone for the delivery
delivery_instructionsstringtrue (nullable)- Special delivery instructions for the order, limited to 55 characters
user_attributesobjectRequired- Represents the customer details attached to the order.
Show child attributesHide child attributes
emailstringRequired- The customer's email address. Must match regular expression as defined in https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address
first_namestringRequired- The customer's first name. If
last_nameis not provided, then it is used as the customer's full name. last_namestringOptional- The customer's last name
mobilestringOptional- Mobile number of the user who purchased the order. This could be different to the person receiving the order.
parcel_attributesarray of objectsRequired- An array of parcel specifications to be included in the order.
There is a maximum of 1000 parcels per request.
Each item can be used to specify the qty, dimensions, and other information about the products being shipped, and the parcel used to ship it. If theAllocate each item in an order to a separate cartonsetting is enabled in the Shippit administration page, then each item is assigned a separate parcel according to the dimensions given. Otherwise, Shippit may combine multiple items into a single parcel.
If theproduct_attributesfield is present, then product information is specified in entries there, separate from the parcel information. In which case each parcel entry represents a single parcel.Show child attributesHide child attributes
lengthnumberRequired- Length of the parcel in metres
widthnumberRequired- Width of the parcel in metres
depthnumberRequired- Depth of the parcel in metres
weightnumberRequired- Weight of the parcel in kilos
label_numberstringOptional- Parcel number in the carrier system.
This is used when the order is a track-only order, to match the parcel number in a carrier against the parcel recorded in Shippit.
product_attributesarray of objectsOptional- an array of product details. If this is present, each item in
parcel_attributesrepresents a separate parcel, while each line inproduct_attributesrepresents a product line item.
There is a maximum of 1000 parcels per request.Show child attributesHide child attributes
titlestringOptionalconditional-- Title or description of the product. Mandatory for international orders with specific couriers.packedintegerOptional- The number of products packed; used in partial orders, or otherwise when the number of products in the parcel is less than the total in the order. If not present, set to product
quantity.
If this is present, at least 1 item should have packed greater than0.
For international orders, all items should have packed greater than0. skustringOptionalconditional-- Stock Keeping Unit (SKU) code of the product, for stock keeping purposes. Mandatory on international orders with specific couriers.product_line_idstringOptional- Product line associated with product. Like SKU, this is also for stock keeping purposes, and can be used when SKU would not be enough (e.g. an order containing multiple lines with the same SKU)
origin_country_codestringOptional- Two-letter country code (ISO 3166-1 Alpha-2) for the product's origin country. This is used in customs tracking for International shipments. Defaults to the home country of the Merchant.
locationstringOptional- Location of the product
dangerous_goods_codestringRequired if shipping dangerous goods- This is the DG code required when making dangerous goods declarations.
Before you can declare orders as having dangerous goods, you must first request for dangerous goods to enabled for your account. Contact Shippit Support or your account manager to have this enabled.
DG surcharges are often charged on the weight of the order, so it is recommended to split your order into multiple orders if your order contains either:
- both dangerous and non-dangerous goods, or
- more than one dangerous goods code dangerous_goods_textstringRequired if shipping dangerous goods- Additional information related to dangerous goods being shipped
dangerous_goods_classstringRequired if shipping dangerous goods- This is the DG class when making dangerous goods declarations.
tariff_codestringOptional- Tariff or HS code for international orders declarations
mid_codestringOptional- Manufacturer identification code (MID) used for customs declarations. This code identifies the manufacturer of the product and is required for some international shipments, particularly to the United States.
quantityintegerOptional- The number of products
The updated order object
authority_to_leavestringRequired- whether or not the order can be left unattended at the delivery address, options are
YesorNo cash_on_delivery_amountnumberOptional- Used by some carriers, such as
NinjaVan, to indicate amount to be received on delivery for cash on delivery orders. courier_typestringOptional- The service level for the order. For a complete list of service level strings, see the Service levels section in the Developer Guide. If you want to specify the courier in the request, use
courier_allocationinstead.
You must specify eithercourier_allocationorcourier_type. If omitted or invalid, an enabled carrier that matches the default service level is allocated instead. The default service level isstandardand can be configured by Shippit on request. courier_allocationstringOptional- You must specify either
courier_allocationorcourier_type.
For a complete list of carrier reference strings, see the Carriers section in the Developer Guide.
If omitted or invalid, an enabled carrier that matches the default service level is allocated instead. The default service level isstandard, and can be configured by Shippit on request.
Iftracking_onlyis set totrue, thencourier_allocationis required. receiver_contact_numberstringOptionalconditional-- phone number of the person receiving the order, may be different than the user who purchased the order. Mandatory for international orders.receiver_namestringOptional- name of the person receiving the order if different than the user who purchased the order
receiver_language_codestringOptional- Two-letter ISO 639-1 language code of the recipient. Used to determine the language of tracking notifications and other communications. Defaults to
EN retailer_invoicestring or numberOptional- Merchant invoice number - the customer-facing sales order reference of the order. This is what the recipient sees on the shipping label, packing slip, customs declaration, receipt, etc. This attribute accepts numeric values, but it's recommended that you pass this in as a string where possible.
retailer_referencestringOptional- Merchant reference id - if the merchant uses a separate internal reference id for the order, it can be placed here.
product_currencystringOptional- Three letter ISO 4217 currency code that applies to the order, which is sent to the carrier and presented on the customs invoice. Defaults to
AUD tracking_onlybooleanOptional- Whether the order being passed is a track-only order.
A track-only order** is an order where the courier was allocated outside of Shippit, but was loaded into Shippit to take advantage of tracking and notifications. If this is present and set totrue, this order is a track-only order.
If set totrue, thencourier_allocations must be present. suppress_communicationsbooleanOptional- if true, all notifications are suppressed for this specific order
features[string]Optional- Some carriers provide add-on services or features that you can indicate in the order. These services are identified by a unique string, and are dependent on the carrier. To request these services, add the appropriate string in this field. For example,
white_glove, oridentity_on_delivery. descriptionstringOptional- Goods description for the order. May appear in labels for international orders. If not provided, defaults to the
goods typesetting from the international shipping settings of the merchant account. Description is mandatory for international orders whenvalidateis set totrue. dutiesnumberOptional- The duty amount for an order. This is displayed on the commercial invoice for international orders to calculate the invoice total. Duties are not returned by Shippit. When not provided, no duties amount is displayed on the commercial invoice. eg: 12.90
tax_amountnumberOptional- The tax amount for an order. This is displayed on the commercial invoice for international orders to calculate the invoice total. When not provided, no tax amount is displayed separately on the commercial invoice. eg: 2.39
customs_clearance_attributesobjectOptional- Represents customs clearance parameters for international orders.
Show child attributesHide child attributes
tax_id_typestringOptional- The Shippier's tax id type which is passed to a carrier for the purpose of customs clearance. Valid values include:
-EORI
-IOSS
-LVG
-OSR
-VOEC
-VAT/GST
-FTZ
-DAN
-TAN
-DTF
-EIN
-SSN
-DUN
-FED
-STA
-CNP
-GBVAT
-NZ IRD tax_id_country_codestringOptional- The issuing country of the tax id number in in ISO 3166 Alpha-2 format. eg. GB for Great Britain
tax_id_numberstringOptional- The tax id number that is declared against this order.
incotermstringOptional- A universal term of trade that defines the responsibility and obligations with the transport of goods. Most commonly used to indicate the responsible party for payment of duties and taxes. Valid values include:
-DDU
-DDP
-EXW
-FCA
-CPT
-CFR
-CIP
-CIF
-DAF
-DAT
-DAP
-DPU
-DES
-DEQ
-FAS
-FOB export_reasonstringOptional- A term used to indicate the reason for export of dutiable goods. Selected options can affect how your shipment is cleared and how much tax is imposed on your shipment during customs clearance. Example values:
-Permanent
-Temporary
-Return For Repair
-Used Exhibition Goods To Origin
-Intercompany Use
-Commercial Purpose Or Sale
-Personal Belongings or Personal Use
-Sample
-Gift
-Return To Origin
-Warranty Replacement
-Diplomatic Goods
-Defence Material recipient_idstringOptional- A free text field to provide a identification number for a recipient. For example, a citizen identification number or passport number which is required for customs clearance for some international destinations. eg: PA1992991
receiver_freight_charge_amountnumberOptional- The amount charged to the receiver for freight services. This represents the cost that the receiver is responsible for paying as part of the freight or shipping charges.
returnbooleanOptional- Whether the order being passed is a return order or not. This method of processing returns is no longer recommended. See returns for more information.
pickup_atstringOptional- The start of the pickup window for
OnDemandorders in the formatYYYY-MM-DDTHH:mm:ss+HH:mm pickup_deadline_atstringOptional- The end of the pickup window for
OnDemandorders in the formatYYYY-MM-DDTHH:mm:ss+HH:mm dropoff_atstringOptional- The start of the drop off window for
OnDemandorders in the formatYYYY-MM-DDTHH:mm:ss+HH:mm dropoff_deadline_atstringOptional- The end of the drop off window for
OnDemandorders in the formatYYYY-MM-DDTHH:mm:ss+HH:mm delivery_companystringOptional- Company name for the delivery
delivery_addressstringRequired- Delivery address for the order
delivery_suburbstringRequired- Delivery suburb for the order
delivery_statestringRequired- Delivery state for the order. Australian States valid options are
NSW,QLD,ACT,WA,NT,SA,VIC,TAS delivery_postcodestringRequired- Delivery postcode for the order
delivery_country_codestringOptional- Two letter country code
delivery_timezonestringOptional- Time zone for the delivery
delivery_instructionsstringOptional- Special delivery instructions for the order, limited to 55 characters
statestringOptional- The state of the order
user_attributesobjectOptional- Represents the customer details attached to the order.
Show child attributesHide child attributes
emailstringRequired- The customer's email address. Must match regular expression as defined in https://html.spec.whatwg.org/multipage/input.html#valid-e-mail-address
first_namestringRequired- The customer's first name. If
last_nameis not provided, then it is used as the customer's full name. last_namestringOptional- The customer's last name
mobilestringOptional- Mobile number of the user who purchased the order. This could be different to the person receiving the order.
parcel_attributesarray of objectsRequired- An array of parcel specifications to be included in the order.
There is a maximum of 1000 parcels per request.
Each item can be used to specify the qty, dimensions, and other information about the products being shipped, and the parcel used to ship it. If theAllocate each item in an order to a separate cartonsetting is enabled in the Shippit administration page, then each item is assigned a separate parcel according to the dimensions given. Otherwise, Shippit may combine multiple items into a single parcel.
If theproduct_attributesfield is present, then product information is specified in entries there, separate from the parcel information. In which case each parcel entry represents a single parcel.Show child attributesHide child attributes
package_typestringOptional- Set to
palletif the package is a pallet, otherwise leave this field out. You can't mix pallets with other types of parcels within an order. weightnumberOptional- Weight of the parcel in kilos.
depthnumberOptional- Depth of the parcel in metres
lengthnumberOptional- Length of the parcel in metres
widthnumberOptional- Width of the parcel in metres.
label_numberstringOptional- Parcel number in the carrier system.
This is used when the order is a track-only order, to match the parcel number in a carrier against the parcel recorded in Shippit. qtynumberOptionalconditional-- The number of parcels specified by the entry.
There is a maximum of 1000 parcels per quote request.
Should not be present if aproduct_attributeskey is present in the request.
IfAllocate each item in an order to a separate cartonis enabled in Shippit, a separate parcel is generated for each product listed.
product_attributesarray of objectsOptional- an array of product details. If this is present, each item in
parcel_attributesrepresents a separate parcel, while each line inproduct_attributesrepresents a product line item.
There is a maximum of 1000 parcels per request.Show child attributesHide child attributes
titlestringOptionalconditional-- Title or description of the product. Mandatory for international orders with specific couriers.packedintegerOptional- The number of products packed; used in partial orders, or otherwise when the number of products in the parcel is less than the total in the order. If not present, set to product
quantity.
If this is present, at least 1 item should have packed greater than0.
For international orders, all items should have packed greater than0. skustringOptionalconditional-- Stock Keeping Unit (SKU) code of the product, for stock keeping purposes. Mandatory on international orders with specific couriers.product_line_idstringOptional- Product line associated with product. Like SKU, this is also for stock keeping purposes, and can be used when SKU would not be enough (e.g. an order containing multiple lines with the same SKU)
origin_country_codestringOptional- Two-letter country code (ISO 3166-1 Alpha-2) for the product's origin country. This is used in customs tracking for International shipments. Defaults to the home country of the Merchant.
locationstringOptional- Location of the product
dangerous_goods_codestringRequired if shipping dangerous goods- This is the DG code required when making dangerous goods declarations.
Before you can declare orders as having dangerous goods, you must first request for dangerous goods to enabled for your account. Contact Shippit Support or your account manager to have this enabled.
DG surcharges are often charged on the weight of the order, so it is recommended to split your order into multiple orders if your order contains either:
- both dangerous and non-dangerous goods, or
- more than one dangerous goods code dangerous_goods_textstringRequired if shipping dangerous goods- Additional information related to dangerous goods being shipped
dangerous_goods_classstringRequired if shipping dangerous goods- This is the DG class when making dangerous goods declarations.
tariff_codestringOptional- Tariff or HS code for international orders declarations
mid_codestringOptional- Manufacturer identification code (MID) used for customs declarations. This code identifies the manufacturer of the product and is required for some international shipments, particularly to the United States.
quantityintegerOptional- The number of products
pricenumberOptional- Unit price of each product line item. Used in the packing slip and customs declarations. Required for transit protection.
Response codes
| Status | Meaning | Description |
|---|---|---|
| 200 | OK | Details of the order |
| 400 | Bad Request | Returned when Shippit has a problem with the input parameters |
| 403 | Forbidden | Returned when the API key doesn't match a valid merchant account, or the API secret is missing the permission this endpoint requires. |
| 404 | Not Found | Returned when the given ID isn't found |
| 422 | Unprocessable Entity | Returned when the order is in a state that means it can't be updated |
| 500 | Internal Server Error | Returned when an unknown error occurs. May be returned if Shippit has trouble with the combination of the input or merchant account configuration. |
{
"order": {
"authority_to_leave": "Yes",
"cash_on_delivery_amount": 0.0,
"courier_type": "standard",
"courier_allocation": "CouriersPlease",
"receiver_contact_number": "0400000000",
"receiver_name": "Receiver Name",
"receiver_language_code": "EN",
"retailer_invoice": "Retailer Invoice",
"retailer_reference": "Retailer Reference",
"product_currency": "AUD",
"suppress_communications": false,
"features": [],
"description": "Description",
"duties": 0.0,
"tax_amount": 0.0,
"customs_clearance_attributes": {
"tax_id_type": "GBVAT",
"tax_id_country_code": "GB",
"tax_id_number": "GB 334 8373 88",
"incoterm": "DDP",
"export_reason": "Personal Belongings or Personal Use",
"receiver_freight_charge_amount": 10.0,
"recipient_id": "123"
},
"return": false,
"delivery_company": "Delivery Company",
"delivery_address": "1 Test Street",
"delivery_suburb": "Sydney",
"delivery_state": "NSW",
"delivery_postcode": "2000",
"delivery_country_code": "AU",
"delivery_timezone": "Australia/Sydney",
"delivery_instructions": "Leave on door",
"user_attributes": {
"email": "test@example.com",
"first_name": "Test",
"last_name": "Example",
"mobile": "0400000000"
},
"parcel_attributes": [
{
"qty": 1,
"length": 0.1,
"width": 0.2,
"depth": 0.3,
"weight": 20.0,
"label_number": "PARCELLABEL01"
}
],
"product_attributes": [
{
"price": 12.34,
"tariff_code": "62121000",
"quantity": 1,
"title": "Title",
"sku": "SKU12345",
"dangerous_goods_code": "1",
"dangerous_goods_text": "Explosives",
"origin_country_code": "AU",
"product_line_id": "PL1",
"location": "Loc1",
"dangerous_goods_class": "EXP",
"packed": 1
}
]
}
}{
"authority_to_leave": "Yes",
"cash_on_delivery_amount": 0.0,
"courier_type": "standard",
"courier_name": "Couriers Please",
"courier_allocation": "CouriersPlease",
"receiver_contact_number": "0400000000",
"receiver_name": "Receiver Name",
"receiver_language_code": "EN",
"retailer_invoice": "Retailer Invoice",
"retailer_reference": "Retailer Reference",
"product_currency": "AUD",
"suppress_communications": false,
"tracking_only": false,
"features": [],
"description": "",
"duties": 0.0,
"tax_amount": 0.0,
"customs_clearance_attributes": {
"tax_id_type": "GBVAT",
"tax_id_country_code": "GB",
"tax_id_number": "GB 334 8373 88",
"incoterm": "DDP",
"export_reason": "Personal Belongings or Personal Use",
"receiver_freight_charge_amount": 10.0,
"recipient_id": "123"
},
"return": false,
"pickup_at": "2025-12-30T08:59:59+11:00",
"pickup_deadline_at": "2025-12-30T08:59:59+11:00",
"dropoff_at": "2025-12-31T08:59:59+11:00",
"dropoff_deadline_at": "2025-12-31T08:59:59+11:00",
"delivery_company": "Delivery Company",
"delivery_address": "1 Test Street",
"delivery_suburb": "Sydney",
"delivery_state": "NSW",
"delivery_postcode": "2000",
"delivery_country_code": "AU",
"delivery_timezone": "Australia/Sydney",
"delivery_instructions": "Leave on door",
"state": "processing",
"user_attributes": {
"email": "test@example.com",
"first_name": "Test",
"last_name": "Example",
"mobile": "0400000000"
},
"parcel_attributes": [
{
"qty": 1,
"length": 0.1,
"width": 0.2,
"depth": 0.3,
"weight": 20.0,
"label_number": "PARCELLABEL01"
}
],
"product_attributes": [
{
"price": 12.34,
"tariff_code": "62121000",
"quantity": 1,
"title": "Title",
"sku": "SKU12345",
"dangerous_goods_code": "1",
"dangerous_goods_text": "Explosives",
"origin_country_code": "AU",
"product_line_id": "PL1",
"location": "Loc1",
"dangerous_goods_class": "EXP",
"packed": 1
}
]
}{
"error": "invalid_merchant_account",
"error_description": "An unknown error has occurred."
}{
"error": "not_found",
"error_description": "The requested resource could not be found."
}{
"details": {
"user_attributes": [
"is missing"
]
},
"error": "order_cannot_be_updated",
"error_description": "The order could not be updated"
}{
"error": "invalid",
"error_description": "Cannot update tracking-only orders"
}Cancel an order
DELETE/orders/{tracking_number}
Cancels an order in Shippit using the tracking number.
The API first checks if the current state of the order allows it to be cancelled, and returns an immediate response. If the order is successfully cancelled, the API answers with the order state updated to cancelled. If the order can't be cancelled, your receive a 422 error instead.
To perform this operation, you must be authenticated with an authentication token.
Parameters
tracking_numberstringpathRequired- The tracking number of the order.
Response codes
| Status | Meaning | Description |
|---|---|---|
| 200 | OK | Returns the Order with state = cancelled |
| 403 | Forbidden | Returned when the API key doesn't match a valid merchant account, or the API secret is missing the permission this endpoint requires. |
| 404 | Not Found | Returned when the given id could not be found. |
| 422 | Unprocessable Entity | Returns an error indicating that the Order could not be cancelled, and stating the reason why. |
| 500 | Internal Server Error | Returned when an unknown error occurs. May be returned if Shippit has trouble with the combination of the input or merchant account configuration. |
{
"response": {
"id": 33,
"tracking_number": "PPuqD0J0uLslM",
"state": "cancelled",
"processing_state": " processing_cancelled",
"delivery_address": "1 Union Street",
"delivery_suburb": "Pyrmont",
"delivery_postcode": "2009",
"receiver_name": "Francois",
"receiver_contact_number": "0404342342",
"courier_name": "eParcel International",
"courier_allocation": "EparcelInternational",
"slug": "ppuqd0j0ulslm",
"price": "0.0",
"retailer_invoice": "SO42637",
"courier_job_id": "ABC0100023",
"user_attributes": {
"email": "test@example.com",
"first_name": "John",
"last_name": "Smith"
},
"parcel_attributes": [
{
"qty": 1,
"length": 0.325,
"width": 0.205,
"depth": 0.03,
"weight": 0.5
}
]
}
}{
"error": "invalid_merchant_account",
"error_description": "An unknown error has occurred."
}{
"error": "not_found",
"error_description": "The requested resource could not be found."
}{
"error": "order_cannot_be_cancelled",
"error_description": "The requested order is currently in a state that cannot be cancelled",
"order_state": "in_transit"
}